【问题标题】:Button won't load another screen?按钮不会加载另一个屏幕?
【发布时间】:2013-07-15 21:30:14
【问题描述】:

我刚刚开始使用 XML 代码,我试图制作一个按钮,将我带到另一个屏幕,但由于某种原因,当我单击该按钮时第二个屏幕不会打开。如果有人可以帮助我,我将不胜感激。

这是我正在使用的代码:

public class MyHomeScreen extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //setContentView(R.Layout.main);
    setContentView(R.layout.homescreenlayout);


    Button myButton = (Button) findViewById(R.id.button2);
    myButton.setOnClickListener(new OnClickListener(){
        public void onClick(View v){

        Intent nextIntent = new Intent(MyHomeScreen.this, MainActivity.class);
        MyHomeScreen.this.startActivity(nextIntent);

        }

        @Override
        public void onClick(View arg0) {

        }
    }); 

}

我还收到一条警告说“新 View.OnClickListener(){} 类型的方法 OnClick(View) 从未在本地使用”

【问题讨论】:

    标签: android eclipse button load screen


    【解决方案1】:

    public void OnClick(View v) 应该是public void onClick(View v)

    别忘了添加@Override 注解。

    【讨论】:

    • 然后我收到一条错误消息,指出“在类型 new View.OnClickListener(){} 中重复方法 onClick(View)”
    • @MiquelVilà 删除第二个onClick函数并将@Override注解移到第一个。
    • 谢谢。我应该将@Override 移到哪里?
    • 就在onClick方法声明的上方。
    【解决方案2】:

    这应该可以解决您的问题:

                Button myButton = (Button) findViewById(R.id.button1);
                myButton.setOnClickListener(new View.OnClickListener() {
    
                    @Override
                    public void onClick(View v) {
                        Intent in = new Intent(getApplicationContext(),YourClass.this);
                        startActivity(in);
    
                    }
                });
    

    希望有帮助

    【讨论】:

    • 你不需要两次 onClick 方法。
    猜你喜欢
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    • 2020-06-22
    • 1970-01-01
    • 1970-01-01
    • 2021-03-31
    • 1970-01-01
    相关资源
    最近更新 更多