0

textviewのテキストを設定しようとすると、nullpointerexceptionが発生します。どういうわけかfindviewbyidメソッドはnullを返しますが、理由はわかりません。

これは私のxmlファイルです:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content" >

<RelativeLayout
    android:id="@+id/rl_ros_layout1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="@+id/tv_ros_view1"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <ProgressBar
        android:id="@+id/pb_ros_bar1"
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:visibility="invisible" />
</RelativeLayout>

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/rl_ros_layout1" >

    <TableLayout
        android:id="@+id/tl_rostertable"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:stretchColumns="2" >

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="3dp"
                android:text="@string/team" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="3dp"
                android:text="@string/pos" />

            <TextView
                android:layout_height="wrap_content"
                android:padding="3dp"
                android:text="@string/name" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="right"
                android:padding="3dp"
                android:text="@string/score" />
        </TableRow>
    </TableLayout>
</ScrollView>
</RelativeLayout>

と私のoncreateメソッド

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.roster);
    final Bundle extra = getIntent().getExtras();
    position = extra.getInt("pos");
    int id = de.damps.fantasy.HomeActivity.ID[position];
    url = de.damps.fantasy.HomeActivity.URL + "/roster/2011/" + id;
    tbl = (TableLayout) findViewById(R.id.tl_rostertable);
    team = (TextView) findViewById(R.id.tv_ros_view1);
    String  s= de.damps.fantasy.HomeActivity.TEAMS[position];
    team.setText(s);

    new GetRoster().execute(url);
}

テーブルレイアウトは問題なく検出されます。しかし、textviewはnullです。私はすでにプロジェクトを掃除しましたが、それは問題を解決しませんでした

誰かが私を助けることができればいいでしょう

4

5 に答える 5

2

タイプミスがあります:

   <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:id="@+id/tv_ros_view1"
    android:textAppearance="?android:attr/textAppearanceMedium" />

(android:idの代わりにandroid:text)

于 2012-08-27T14:25:01.807 に答える
0

あなたが書いた

 android:text="@+id/tv_ros_view1"

それ以外の

android:id
于 2012-08-27T14:25:29.823 に答える
0

これの代わりにこのIDようなテキストビューを作成すると、完全に使用されます。android:id="@+id/tv_ros_view1"android:text="@+id/tv_ros_view1"

于 2012-08-27T14:26:20.767 に答える
0

障害のある/最初のテキストビューでは、次のように記述しています。

         android:text="@+id/tv_ros_view1"

これをこれに置き換えるだけです:

         android:id="@+id/tv_ros_view1"

これは、ビュー(TextView)にIDを割り当てる方法です。

于 2012-08-27T14:26:36.423 に答える
0

あなたのxmlレイアウトでは:

android:text="@+id/tv_ros_view1"

する必要があります:

android:id="@+id/tv_ros_view1"

text属性は、表示するテキストをtextviewに指示するために使用されます。

于 2012-08-27T14:26:59.560 に答える