0

我用谷歌搜索并没有找到关于如何操作设置按钮的功能的代码,或者当按下手机上的设置触摸按钮时会出现什么。

这是我的意思的屏幕截图:

在此处输入图像描述

在底部,您可以看到它说设置,但是当我单击它时,什么也没有发生。我想改变点击它时发生的事情。

另外,我希望能够在按下实际手机上的设置按钮时更改显示的内容(屏幕截图中的设置选项就是显示的内容)。例如。在 S3 上,它是设备左下方的触摸按钮。

任何人都可以将我链接到资源,或者编写一些示例代码来说明如何同时做这两个,甚至是我想做的事情之一?

4

1 回答 1

3

您需要覆盖 Activity 的onOptionsItemSelected(...)方法。

像这样做:

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    if (item.getItemId() == R.id.action_settings) { // or whatever your id is, see the .xml file
        // do something

        return true;

    } else {
        return super.onOptionsItemSelected(item);
    }
}

检查选项项的 id(例如设置)并在 if 中执行特定的操作。

要添加更多项目或操作 Id,请查看您的项目“菜单”文件夹和其中的 .xml 文件。

这是我的主菜单的 .xml 文件:

在此处输入图像描述

以及它的内部外观:

您可以操作此文件并向其添加将显示在菜单中的更多操作)

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item android:id="@+id/action_one" android:title="Action 1"></item>
    <item android:id="@+id/action_two" android:title="Action 2"></item>
    <item android:id="@+id/action_three" android:title="Action 3"></item>

</menu>

在这种情况下,我的菜单将有 3 个操作,您应该在onOptionsItemSelected(...)方法中检查它们,如下所示:

 if (item.getItemId() == R.id.action_one) //...

...或使用开关盒。 有关更详细的说明,您还可以查看本教程:

http://mobile.tutsplus.com/tutorials/android/android-sdk-implement-an-options-menu/

于 2013-08-29T21:35:44.377 回答