【问题标题】:How to open a separate activity on button press?如何在按钮按下时打开单独的活动?
【发布时间】:2015-03-09 06:08:28
【问题描述】:

我想要一个按钮来打开一个设置布局 xml 文件的活动类。一切都井井有条,但如果没有 @Override 方法,按钮将无法工作。使用@Override 方法我得到这个错误:

MainActivity 类型的 onCreate1(Bundle) 方法必须覆盖或 实现一个超类型方法。

    Button button;

    @Override
    public void onCreate1(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Get the view from activity_main.xml
        setContentView(R.layout.activity_main);

        // Locate the button in activity_main.xml
        button = (Button) findViewById(R.id.MyButton);

        // Capture button clicks
        button.setOnClickListener(new OnClickListener() {
            public void onClick(View arg0) {

                // Start NewActivity.class
                Intent myIntent = new Intent(MainActivity.this,
                        NewActivity.class);
                startActivity(myIntent);
            }
        });
    }

原因是我已经有另一个方法的@Override 注释。

我尝试过的:

  • 阅读有关活动、多个活动以及在活动之间传递数据的教程。

  • 通过编辑 android 清单解决问题。

  • 为活动创建单独的启动意图。

【问题讨论】:

  • 为什么你的方法命名为onCreate1
  • 按下按钮时您到底想做什么?
  • 您要么需要更多地练习面向对象语言的继承和多态性,要么需要更清楚地了解 Android 的 Activity 生命周期。你的问题很模糊,无法理解。请务必说明您想要什么,不完全理解。
  • 不能覆盖不存在的 Android 方法。从 onCreate1() 中删除 @Override,并从另一个中调用您的方法(可能在 onCreate() 方法的末尾调用它)。
  • 为什么我不能只@Override这个方法上面的main方法?

标签: java android button android-activity main-activity


【解决方案1】:

如果要使用名称为 onCreate1() 的方法,则需要从中删除 @Override

【讨论】:

  • 然后按钮什么也不做。它不会打开其他活动。该方法变得无用。
  • @officialasim 那你为什么不删除这个方法并使用 onCreate() 方法
【解决方案2】:

改变

@Override
public void onCreate1(Bundle savedInstanceState)

@Override
protected void onCreate(Bundle savedInstanceState)

【讨论】:

    【解决方案3】:

    你应该和你想覆盖的函数一样调用它。

    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        somethingSomething();
    }
    

    【讨论】:

      【解决方案4】:

      按照建议删除了@Override 注释。将 onCreate1 方法重命名为 onCreate。我也想结束这个问题,因为我需要进一步思考如何有效地解决这个问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-11-28
        • 1970-01-01
        • 2013-04-10
        • 2020-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多