我遇到findViewById()
返回NULL问题,他们很多人似乎遇到。我知道findViewById()只能在onFinishInflate()
的膨胀视图后调用。我的问题是 - 什么是观点通货膨胀?LayoutInflater和onFinishInflate()
在Activity中,我调用setContentView(R.layout.testview)
,它应该调用View构造函数并调用onDraw()。所以这膨胀的观点是不是?如果是这样,为什么有一个LayoutInflater
和一个函数实际上夸大视图?事实上,我的代码onInflateView()
从未被调用,即使整个视图被渲染,我也能够与程序交互。这告诉我查看通胀与调用View的构造函数和函数不同。有人可以解释吗?
编辑:另外,我有我使用onDraw()函数绘制的自定义视图。不知何故,onFinishInflate()函数永远不会被我调用。这可能是什么原因?
-P
谢谢! Google ApiDemos中是否有这样的例子?另外当onFinishInflate()与setContentView()调用?在我的情况下,它根本不叫。 – user220201 2011-06-10 14:19:12
@ user220201:“Google ApiDemos中是否有这样的例子?” - 什么样的例子? “另外,当onFinishInflate()与setContentView()调用?在我的情况下,它根本不叫。” - 我之前使用过'onFinishInflate()',它工作正常,尽管我没有任何当前的样本。确保你有'@ Override'注释,以防万一你在方法签名中犯了错误。 – CommonsWare 2011-06-10 14:39:45
我在问一个需要调用LayoutInflater的例子。 – user220201 2011-06-10 14:42:05