我的ActionBar
目前包含徽标和一些文字。我通过夸大以下menu
:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
tools:context="com.example.sv_laptop.myapp.Register">
<item android:id="@+id/action_settings"
android:title="@string/signup"
android:orderInCategory="1"
app:showAsAction="always" />
<item android:id="@+id/icon"
android:title="Icon"
android:icon="@drawable/icon"
android:orderInCategory="0"
app:showAsAction="always" />
</menu>
但是,它会同时显示ActionBar
最右侧的两个项目。我想要实现的是标识位于最左侧,文本/标题位于中间位置。
有谁知道我怎么做到这一点?另一个问题是它显示的图像太小 - 如果有人可以给我一个关于如何扩展它的演练,我会非常欣赏它。
这就是我如何夸大菜单
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater mi = getMenuInflater();
mi.inflate(R.menu.menu_register_name, menu);
return true;
}
非常感谢任何帮助!
编辑:
action_bar_layout
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sign Up"/>
问题是现在徽标显示在中间,文本显示在最右边。当我将paddingRight提供给徽标(ImageView)时,文本会消失,但它会向右移动。如果我在文本中添加paddingRight,它会再次消失。我也尝试在LinearLayout中设置paddingRight并发生同样的事情。
答案 0 :(得分:0)
您获得的行为是android的默认行为,但您所看到的是iOS的默认行为。
如果要实现这一点,则必须实现自定义xml。
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getSupportActionBar().setCustomView(R.layout.actionbar);
在这里,您需要在布局中创建actionbar.xml并对其进行充气。