我有一个ListView
,我有一个自定义的View
,PostView
。
我将如何创建new PostView()
,并通过ListView
将其添加到.addFooterView()
,但仍然能够访问PostView
的对象表示。
现在我正在尝试:
// the footer
p = new PostView( this );
p.setTargetUri( C.API_CONTENT );
p.setRenderMode( PostView.MODE_TEXT | PostView.MODE_IMAGE );
commentListView.addFooterView( p );
但这是失败的,当我尝试访问应该已经膨胀的XML组件时。
主要是:
public void setRenderMode( int renderMode )
{
this.renderMode = renderMode;
// fails
this.postImagePreview = (ImageView)findViewById( R.id.new_post_image_preview );
}
我要解决这个错误吗?我定义了
onFinishInflate()
,但是也许我正在过早访问视图? 最佳答案
为什么不挂在成员变量中的实例上,而不是稍后再调用findViewById?