我使用ActionBarSherlock(尽管我认为这并不重要)。
我有一个主活动和一个关于活动。 我想让“关于”活动通过其徽标显示返回箭头,并执行适当的动画等。 我不知道如何正确地做到这一点。
目前,我在onOptionsMenuItemSelected下启动主活动,当按下Up / Home按钮时,但这是一个hacky的方法,而且效果不好。 它播放错误的动画,并且处理多任务处理能力差。
我应该如何正确设置此功能?
这是我的主活动中启动“关于”部分的代码:
Intent aboutIntent = new Intent(MainActivity.this, About.class);
MainActivity.this.startActivity(aboutIntent);
这是我的“关于”页面:
package com.stevenschoen.test;
import android.content.Intent;
import android.os.Bundle;
import com.actionbarsherlock.app.SherlockActivity;
import com.actionbarsherlock.view.MenuItem;
public class About extends SherlockActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.about);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowTitleEnabled(false);
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
// app icon in action bar clicked; go home
Intent intentHome = new Intent(this, MainActivity.class);
intentHome.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intentHome);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}