【发布时间】:2017-11-23 01:00:24
【问题描述】:
我不明白为什么当我单击以下代码上的“toactility”按钮时,overridePendingTransition 根本没有响应,而是收到了默认的淡入淡出样式动画。这是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_information_navi);
Button ToMainActivity = (Button)findViewById(R.id.toactivity);
ToMainActivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent startIntent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(startIntent);
overridePendingTransition(0, R.anim.navigation_slide_left);
finish();
}
});
}
我尝试将finish(); 放置在startActivity(startIntent); 上方和下方的各个位置。 overridePendingTransition 被忽略。
但是,在 Android 硬后按按钮上,overridePendingTransition 可以正常工作。代码如下:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
finish();
return true;
}
return super.onOptionsItemSelected(item);
}
@Override
public void finish() {
super.finish();
overridePendingTransition(0, R.anim.navigation_slide_left);
}
无法弄清楚为什么overridePendingTransition 代码在低于或高于startActivity(startIntent); 时不起作用
如何让它工作?
【问题讨论】:
标签: android overriding navigation-drawer transition