我目前只能返回一个父活动,这是我的启动页。我使用的标题栏(左上角)上的后退按钮。我想使后退按钮返回到上一个页面,而不是去直接回到启动页(有才回到反正白屏)。
我曾尝试下面的代码,我的启动页是Aucon,我想回,对于一些活动的页面,是登录页面,但我不能。这有什么错我的代码或它自然不允许?请指教。
<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=".AucOn">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category
android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Register"
android:label="Register"
android:parentActivityName=".AucOn" />
<activity
android:name=".SignIn"
android:label="Home"
android:parentActivityName=".AucOn" />
<activity
android:name=".BuyerHome"
android:label="Buyer Home"
android:parentActivityName=".SignIn" />
<activity
android:name=".Instructions"
android:label="Instructions"
android:parentActivityName=".AucOn" />
<activity
android:name=".CustomerSupport"
android:label="Customer Support"
android:parentActivityName=".AucOn" />
<activity android:name=".ForgotPassword"
android:label="Forgot Password"
android:parentActivityName=".AucOn" />
<meta-data
android:name="preloaded_fonts"
android:resource="@array/preloaded_fonts" />
</application>
尝试使用OnBackPressed()
重写方法。它会带你到上一画面。
YourBackButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
我希望这可能会奏效。
随着我所看到的,我想你想实现一些活动Android设备上的后退按钮不是去AucOn
活动。如果我是正确的,那么我们可以覆盖在你想要的活动onBackPressed()
方法,打开这样的SignIn
活动:
@Override
public void onBackPressed() {
startActivity(new Intent(CurrentActivity.this, SignIn.class);
}
这将指示活动寻找Android上的真正的后退按钮按下并打开所需的活动。 现在的工具栏后退按钮,你必须设置一个导航点击监听器是这样的:
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(CurrentActivity.this, SignIn.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
}
});
这将增加点击侦听器工具栏上的后退按钮点击。