1

嗨,我的 Android 应用程序有问题。我使用布尔方法来更改后退按钮的功能以进行布局更改。如代码所示,如​​果我使用 if- 语句并且这些情况为真,则布局会更改。问题是我有不止一点不同的情况我想修改按钮的功能。但是如果我复制函数并更改名称 eclipse 想要删除 @ 覆盖,然后该方法不再有效。

所以现在的问题是:如何创建多个 KeyEvent?

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK && lengthisopen == true){

        lengthisopen = false;
        setContentView(R.layout.length);
        return true;
    } 
    return super.onKeyDown(keyCode, event);

}


public boolean onKeyDown2(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK && lengthisopen == true){

        lengthisopen = false;
        setContentView(R.layout.length);
        return true;
    } 
    return super.onKeyDown(keyCode, event);

}
4

1 回答 1

0

onKeyDown(int keyCode, KeyEvent event)is 一个可用的方法 is Activity,所以你可以覆盖它。但onKeyDown2()不是超类的方法。所以你不能从任何超类中覆盖它。这就是为什么它说你删除@override.

如果你想创建多个关键事件,那么你应该只去

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK && lengthisopen == true){

        lengthisopen = false;
        setContentView(R.layout.length);
        return true;
    } 
    else if(condition){
         // next code
    }
    return super.onKeyDown(keyCode, event);

}
于 2013-03-02T12:15:38.663 回答