通常,空指针异常似乎与视图相关 - 其中错误的布局是针对性的。
我认为这是不同的。我在布局中有四个textview,一个返回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");
}
}
如果我将评论切换到其他文本视图,它可以正常工作。如果我以iptest
为目标,则返回null并引发异常。
任何想法为什么?所有四个都显示在gen
中,如果我删除gen
并重新编译,它们都会重新出现。
答案 0 :(得分:5)
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="ip"
android.id="@+id/iptest"
/>
你选择了。(点)而不是 :(冒号)
android.id="@+id/iptest"
承担这样的责任
android:id="@+id/iptest"
此外,请定期清理您的项目。
答案 1 :(得分:1)
你的R类没有持有iptest参考。 android.id =“@ + id / iptest”是错误的。它应该是android:id