Android微信朋友圈向微信主界面返回在ActionBar中箭頭按鈕的實現

你的應用程序應當使得用戶能夠很容易的返回到主界面中。實現這個功能是一個簡單的辦法在菜單欄中提供一個向上的按鈕,每當用戶點擊這個按鈕就能回到上一級的交互界面中。


想要實現這一功能。你需要在主清單文件中通過設置android:parentActivityName 屬性,去聲明你當前交互界面的上一級交互界面。

這個屬性android:parentActivityName,是在Android 4.1(API16) 引進的,舊的版本想要實現這一功能需要定義一個<meta-data> 的name-value的鍵值對。name爲"android.support.PARENT_ACTIVITY",value就是上一級交互界面的名字。

舉個例子,假如你的主交互界面爲MainActivity,另外一個其他界面,現在演示通過其他界面返回到主界面的代碼。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.nie.aboutofactionbar">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:label="@string/main_name"
            android:theme="@style/Theme.AppCompat.Light.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".Main2Activity"
            android:parentActivityName=".MainActivity">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".MainActivity">
            </meta-data>
        </activity>
    </application>

</manifest>
  除了在主清單文件中設置,你還需要在代碼中設置允許這個向上的按鈕生效,需要在當前界面OnCreate()方法中調用ActionBar中的setDisplayHomeAsUpEnabled()方法。
public class Main2Activity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        ActionBar actionBar = getSupportActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
    }
}
OK!功能實現成功!

希望對你有所幫助



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章