setText()方法不适用于TextView

时间:2015-08-11 06:49:55

标签: android android-layout

我想设置具有特定名称的文字。我的代码如下。我正在设置文本进行测试,但不反映。

public Object instantiateItem(ViewGroup container, int position) {
LayoutInflater inflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View view = inflater.inflate(R.layout.page4, null);
         score = (TextView) view.findViewById(R.id.galcount);
         score.setText("TEST");
}

我的xml文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:background="@color/darkblack">


    <TextView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/galcount"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:textSize="15sp"
        android:textColor="#ffffffff"
        android:textStyle="bold"
        android:text="gallery">
    </TextView>



</RelativeLayout>

1 个答案:

答案 0 :(得分:1)

您的代码中有很多错误:

public Object instantiateItem(ViewGroup container, int position) {
    LayoutInflater inflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View view = inflater.inflate(R.layout.page4, container, false);
    score = (TextView) view.findViewById(R.id.galcount);
    score.setText("TEXT");
    return view;
}

您可能不会在根位置使用null对视图进行充气,特别是如果您提供了容器ViewGroup

你必须返回视图,如果不这样做,程序将无法编译,并且函数的调用者也不会收到视图,我确定你不想要它。

请确保使用正确的inflater声明您的context,因为如果它不正确,视图将不会显示,甚至更糟,您的程序在某些情况下会崩溃。