我如何从菜单中捕捉回来的事件?

时间:2017-10-26 07:18:38

标签: android android-menu

我不知道如何从菜单中捕获后退事件:

enter image description here

我的意思是我想按下屏幕左上方的后面button来捕捉事件。

这里是菜单的xml文件:

        <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:theme="@style/ActionModeMenu">

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <CheckBox
            android:id="@+id/context_menu_select_tweet_checkbox"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="2dp"
            android:onClick="onSelectAllTweet" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:theme="@style/ActionModeMenuSubtitle"
            android:text="@string/menu_tweet_select_all_text"/>

    </LinearLayout>

    <TextView
        android:id="@+id/context_menu_select_tweet_textview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:paddingLeft="10dp"
        android:theme="@style/ActionModeMenuTitle"/>

   </LinearLayout>

谢谢!

2 个答案:

答案 0 :(得分:5)

使用android.R.id.home

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                onBackPressed();
                break;
        }
        return super.onOptionsItemSelected(item);
    }

如果您想更改后退箭头的图像,可以在OnCreate方法

中写下
final ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setHomeAsUpIndicator(R.mipmap.back_to); // change the image

答案 1 :(得分:1)

使用android.R.id.home导航后退按钮

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    if (item.getItemId() == android.R.id.home) {
        //Navigation Back Pressed
    }
    return super.onOptionsItemSelected(item);
}