每当我从当前的活动中按下向上按钮时,父级片段从右边缘向左滑动,这似乎是默认的转换行为。但是我希望父活动从左边向右滑动。按下向上按钮时的自定义活动转换
我已经使用onBackPressed
与overridePendingTransition
和自定义过渡xml文件,但我的onBackPressed
永远不会被调用。
这是我的java代码。
public class TakeOrderItems extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_take_order_items);
//Get the actionbar to set the back button
ActionBar ab = getSupportActionBar();
ab.setDisplayHomeAsUpEnabled(true);
/*
CODE TO CREATE AND DISPLAY EXPANDABLELISTVIEW
*/
@Override
public void onBackPressed() {
super.onBackPressed();
Log.i("Good","back pressed");
overridePendingTransition(R.transition.slide_in,R.transition.slide_out);
}
XML文件转换
slide_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="-100%"
android:toXDelta="0"
android:duration="200" />
</set>
slide_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0"
android:toXDelta="100%"
android:duration="200" />
</set>
我检查了很多答案,但他们似乎是混乱和contradictory.I思考必须有一个优雅和有效的方法来实现这一点,因为许多应用程序使用this.Please请帮助我。谢谢。
你可以试试这个, @覆盖 公共布尔的onkeydown(INT的keyCode,KeyEvent的事件){ 如果(event.getKeyCode()== KeyEvent.ACTION_DOWN){ } 回报super.onKeyDown(的keyCode,事件); } – Vadivel
@Vadivel我不明白这段代码应该做什么,请你解释一下。 –