我一直在四处搜寻,似乎无法找到有效的答案。
我正在使用<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".HomeScreen" />
来应用父屏幕。
我正在使用slide_in_left,slide_out_right等xmls,并且在我的styles.xml中有这个:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowAnimationStyle">@style/CustomActivityAnimation</item>
</style>
<style name="CustomActivityAnimation" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/slide_in_right</item>
<item name="android:activityOpenExitAnimation">@anim/slide_out_left</item>
<item name="android:activityCloseEnterAnimation">@anim/slide_in_left</item>
<item name="android:activityCloseExitAnimation">@anim/slide_out_right</item>
</style>
除了操作栏中的向上按钮之外,这种方式非常有效,其行为就好像我在层次结构中向前移动,而不是向后移动(滑向左侧)。有没有办法改变这个?
谢谢!
答案 0 :(得分:0)
我能找到的最好方法是覆盖向上按钮所调用的操作,使其作为后退按钮来操作。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
此代码位于子活动中,该活动带有向上按钮。