2012-05-02 49 views
0

正常情況下,空指針異常看起來與視圖相關 - 錯誤佈局的目標位置。特定文本視圖上的Android應用空指針

這是不同的我估計。我在一個佈局中有四個文本視圖,其中一個返回null,剩下的工作正常。這裏是佈局:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/text" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="hello" /> 

    <TextView 
     android:id="@+id/text2" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="stringello2" /> 

    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="ip" 
     android.id="@+id/iptest" 
    /> 

    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="hostname" 
     android:id="@+id/hostname" 
    /> 

</LinearLayout> 

這裏是測試代碼:

public class MainActivity extends Activity 
{ 
    /** Called when the activity is first created. */ 

    protected TextView text; 
    protected TextView ip; 

    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     text = (TextView) findViewById(R.id.text); 
     text.setText("goodbye"); 
     text = (TextView) findViewById(R.id.hostname); 
     text.setText("hostname flibble"); 
    // text = (TextView) findViewById(R.id.text2); 
     text = (TextView) findViewById(R.id.iptest); 
     text.setText("ip flibble"); 
    } 
} 

如果我切換註釋其他TextView的,它工作正常。如果我的目標是iptest,它將返回null並引發異常。

任何想法爲什麼?所有四個出現在gen,如果我刪除gen並重新編譯,它們都會重新出現。

回答

5

在你的TextView標籤

<TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="ip" 
     android.id="@+id/iptest" 
    /> 

你已經採取了(點)的代替:(冒號)

android.id="@+id/iptest" 

shoulb德這樣

android:id="@+id/iptest" 

此外請清理您的項目regu larly。

+0

你是什麼意思的「乾淨」,不是通過刪除「gen」? – Paul

+0

我不敢相信我錯過了冒號:) – Paul

+0

+1完美銳利的眼睛 – vnshetty

1

你的R類沒有拿着iptest參考。 android.id =「@ + id/iptest」是錯誤的。它應該是android:id