如何更改list.HeaderView(layout.textView) - 动态?

时间:2014-05-13 03:40:42

标签: android android-layout

我在布局中有一个textView,专门用作列表的标题行。

布局 - list_header.xml

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:gravity="center_vertical"
    android:text="@string/list_header"
    android:textSize="22sp"
    android:textStyle="bold" >
</TextView>

我从main.java(显示一个列表)中调用它:

View header = (View)getLayoutInflater().inflate(R.layout.list_header, null);
mList.addHeaderView(header);

我想在显示之前通过代码更改布局的文本属性。 我该怎么做?

1 个答案:

答案 0 :(得分:0)

您需要在XML代码中添加ID,如下所示:

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/textToChange
    android:gravity="center_vertical"

    <!-- Remove this line because you won't need it -->
    android:text="@string/list_header"

    android:textSize="22sp"
    android:textStyle="bold" >
</TextView>

现在在main.java文件中,找到文本视图并设置它的文本如下:

//Declare this as a private variable:
private TextView textView1;

//Then, wherever your header declared, do this:
textView1 = (TextView) findViewById(R.id.textToChange);
textView1.setText("Your desired text");

希望这有帮助!