我正在构建和完成Android应用程序,这是我需要修复它的主要内容之一。
所以,我有一个像这样的动作栏:
<resources>
<style name="MyCustomTheme" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyActionBarTheme</item>
</style>
<style name="MyActionBarTheme" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">#F6E6E7</item>
<item name="android:textSize">10sp</item>
</style>
<style name="CustomTabWidget">
<item name="android:textSize">15sp</item>
</style>
</resources>
这就是我按下按钮的布局
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- Search, should appear as action button -->
<item android:id="@+id/voltar"
android:title="Voltar"
android:icon="@drawable/abc_ic_ab_back_holo_light"
android:showAsAction="ifRoom" />
<!-- Settings, should always be in the overflow -->
</menu>
这个按钮标题Voltar位于动作栏的右侧..我该怎么做才能把它放在左侧?
感谢您阅读本文
答案 0 :(得分:6)
你需要做两件事。首先在您活动的onCreate
getActionBar().setDisplayHomeAsUpEnabled(true);
然后实现onOptionsItemSelected
,以便它将主页作为向上按钮点击事件处理
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == android.R.id.home ) {
finish();
return true;
}
// other menu select events may be present here
return super.onOptionsItemSelected(item);
}
答案 1 :(得分:5)
在您的活动的onCreate中声明getActionBar().setDisplayHomeAsUpEnabled(true);
是正确的。
但是,Nayan在上面的帖子中建议的onOptionsItemSelected实现可以改进,应该按照下面的代码处理:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == android.R.id.home) {
NavUtils.navigateUpFromSameTask(this);
// finish();
return true;
}
return super.onOptionsItemSelected(item);
}
id android.R.id.home代表Home或Up按钮。声明getActionBar().setDisplayHomeAsUpEnabled(true);
将导致显示向上(向后/向左箭头)按钮。使用NavUtils允许用户在应用程序结构中向上导航一个级别。
有关详细信息,请参阅Android设计上的导航模式: http://developer.android.com/design/patterns/navigation.html#up-vs-back
答案 2 :(得分:1)
默认情况下,Android支持后退按钮。
您不需要手动创建按钮。
只需使用活动onCreate()
方法
getActionBar().setDisplayHomeAsUpEnabled(true);