setOnClickListener(this)崩溃我的应用程序?

时间:2014-07-09 05:08:59

标签: android onclicklistener android-button

我正在学习Android,这是我第一次遇到无法解决的错误(对我来说),所以我决定问你们。对不起凌乱的帖子感到抱歉。

我一直在尝试指定按钮来接收点击次数,但每次我在MainActivity.java中输入 setOnClickListener(this) 时,它都会崩溃。

public class MainActivity extends ActionBarActivity implements View.OnClickListener{

Button add_fragment_button;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);



    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.container, new Overview())
                .commit();
    }

    add_fragment_button = (Button) findViewById(R.id.add_wallet_button); 
    //this line still work perfectly
    add_fragment_button.setOnClickListener(this); 
    //crash here
}

我认为这次崩溃是由setOnClickListener()造成的,因为我确保了R.id是正确的。

请帮忙。而且,对不起我的英语。

编辑:好的,感谢我发现有用的评论,按钮位于'Overview.xml'上。我已经解决了这个问题,但后来遇到了另一个问题。片段管理器将Overview片段替换为另一片段,但它们都出现在屏幕上,彼此重叠。

1 个答案:

答案 0 :(得分:0)

我认为您的add_fragment_button将为null,因为您的按钮应位于OverView类内。 请在overview类覆盖方法oncreateview中执行一项操作,并在oncreateview方法中对新布局进行充气,然后在此布局中添加按钮add_fragment_button,然后在其中写入add_fragment_button.setOnClickListener(this);概述片段。我认为这将是work.thanks; - )