我有一个ListView,我有一个自定义的ViewPostView

我将如何创建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?

10-04 17:39