LayoutInflater.Factory的妙用

最近看了一篇文章《[Android]自定义系统菜单的背景》,其中对LayoutInflater.Factory的使用令我耳目一新,唯一觉得有些可惜的是:作者没有对其原理进行阐述,所以就知道做了一番调查,现在把结果和大家分享一下。

LayoutInflater.Factory起作用的函数调用顺序如下:

lab.sodino.menutest.MenuAct$android.view.LayoutInflater.Factory.onCreateViewandroid.view.LayoutInflater.createViewFromTag —558 lineandroid.view.LayoutInflater.inflate —385 lineandroid.view.LayoutInflater.inflate —320 linecom.android.internal.view.menu.MenuItemImpl.createItemView —592 linecom.android.internal.view.menu.MenuItemImpl.getItemView —577 linecom.android.internal.view.menu.IconMenuView.updateChildren —351 linecom.android.internal.view.menu.IconMenuView.initialize —333 linecom.android.internal.view.menu.MenuBuilder$MenuType.getMenuView —199 linecom.android.internal.view.menu.MenuBuilder.getMenuView —323 linecom.android.internal.policy.impl.PhoneWindow.initializePanelContent —840 linecom.android.internal.policy.impl.PhoneWindow.openPanel —417 linecom.android.internal.policy.impl.PhoneWindow.onKeyUpPanel —603 linecom.android.internal.policy.impl.PhoneWindow.onKeyUp —1319 linecom.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent —1648 lineandroid.view.ViewRoot.deliverKeyEventToViewHierarchy —2471 lineandroid.view.ViewRoot.handleFinishedEvent —2441 lineandroid.view.ViewRoot.handleMessage —1735 lineandroid.os.Handler.dispatchMessage —99 lineandroid.os.Looper.loop —123 lineandroid.app.ActivityThread.main —4627 linejava.lang.reflect.Method.invokeNative —-2 linejava.lang.reflect.Method.invoke —521 linecom.android.internal.os.ZygoteInit$MethodAndArgsCaller.run —868 linecom.android.internal.os.ZygoteInit.main —626 linedalvik.system.NativeStart.main —-2 line

版权声明:本文为博主原创文章,,未经博主允许不得转载。

使你疲倦的不是前面的高山,而是你鞋里的一粒沙子。

LayoutInflater.Factory的妙用

相关文章:

你感兴趣的文章:

标签云: