访问包含布局的组件

时间:2014-03-22 13:26:08

标签: android android-layout android-linearlayout

我有一个activity,在这个acitivity layout文件中我添加了另一个布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <include
        android:id="@+id/activity_rating_header_layout"
        layout="@layout/activity_ratings_header" />

</LinearLayout>

我的问题是如何访问包含layout的组件?包含的布局包含一些textviews,例如线性布局。 我一直试图以这种方式访问​​它们:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setupActionBar();
    getEventID();

    View header = findViewById(R.id.activity_rating_header_linear_layout);

    mAverageView = (TextView)header.findViewById(R.id.activity_rating_header_average_number);


    setContentView(R.layout.activity_ratings);
    mAverageView.setText("Neviem");
}

但在onCreate我仍然在setText()方法中获得空指针。我怎么解决这个问题?

1 个答案:

答案 0 :(得分:1)

在尝试获取观看之前,您必须setContentView()。将setContentView放在超级电话下方的正上方。