Android:应用程序正在崩溃

时间:2011-10-06 11:26:02

标签: android

这是我的代码:

public void onCreate(Bundle savedInstanceState)
{
   super.onCreate(savedInstanceState);
   TextView editTextDay = (TextView)findViewById(R.id.editTextDay);
   editTextDay.setVisibility(8);    //GONE
   setContentView(R.layout.main);
}

没有“editTextDay.setVisibility(8);”应用程序不会崩溃。

关于什么是错的任何想法?

3 个答案:

答案 0 :(得分:5)

您应该在调用方法之前设置内容布局findViewById();这就是它返回null的原因。所以你的代码会像这样工作:

public void onCreate(Bundle savedInstanceState)
{
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);
   TextView editTextDay = (TextView)findViewById(R.id.editTextDay);
   editTextDay.setVisibility(8);    //GONE

}

答案 1 :(得分:4)

setContentView(R.layout.main);之后移动此行super.onCreate(savedInstanceState); .目前,您的textview为null,因此它会抛出异常。首先必须设置视图,然后使用findViewById方法。

答案 2 :(得分:4)

将setContentView放在超级调用下面。 在设置内容视图之前,您无法访问视图:

public void onCreate(Bundle savedInstanceState)
{
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);
   TextView editTextDay = (TextView)findViewById(R.id.editTextDay);
   editTextDay.setVisibility(View.GONE);    //GONE
}