android工具栏:如果按下后退箭头,如何返回上一个活动

San*_*idi 4 android toolbar back

我有一个叫做的活动 Place

我来自Place之前的活动叫做活动City.

Place使用以下代码在活动工具栏中添加了后退按钮:

    Toolbar mToolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(mToolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true)
Run Code Online (Sandbox Code Playgroud)

我想设置后退按钮返回City活动状态

但是City活动需要传递一些参数.

那么如何告诉后退按钮转到City活动,而不需要将参数传递给它.

Int*_*iya 20

根据你的问题.你应该使用 finish ()

在您的活动完成后调用此应该关闭.要完成活动,应调用finish()方法.这适用于当前活动的活动.

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    if (item.getItemId() == android.R.id.home) // Press Back Icon
    {
        finish();
    }

    return super.onOptionsItemSelected(item);
}
Run Code Online (Sandbox Code Playgroud)


小智 7

在AndroidManifest.xml文件中,添加标记android:parentActivityName并将其指向要返回按钮的位置.在java中你需要调用

 getActionBar().setDisplayHomeAsUpEnabled(true);
Run Code Online (Sandbox Code Playgroud)

方法,你已经完成了.会有所帮助.

<application ... >
...
<!-- The main/home activity (it has no parent activity) -->
<activity
    android:name="com.example.myfirstapp.MainActivity" ...>
    ...
</activity>
<!-- A child of the main activity -->
<activity
    android:name="com.example.myfirstapp.DisplayMessageActivity"
    android:label="@string/title_activity_display_message"
    android:parentActivityName="com.example.myfirstapp.MainActivity" >
    <!-- Parent activity meta-data to support 4.0 and lower -->
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value="com.example.myfirstapp.MainActivity" />
</activity>
</application>
Run Code Online (Sandbox Code Playgroud)


Kri*_*nov 5

在您backButton只需调用finish();并关闭 Activity 而无需将参数传递给其他 Activity。