操作栏在徽标左侧显示一个空格。我认为这个空间是为upindicator保留的。
例如,我想给这个空间指定 20dp 的距离。
我怎样才能做到这一点?
我可以将图标的内边距设置为 0,但这不会消除徽标和屏幕左侧之间的空间。
我尝试通过使用自定义布局来解决它。但有一个小问题。每次启动活动时,首先会出现正常的操作栏,然后显示自定义布局。
这就是我显示自定义视图的方式:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_custom);
// Set up the action bar.
final ActionBar actionBar = getActionBar();
//set custom actionbar
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setCustomView(R.layout.actionbar);
//Displays the custom design in the actionbar
actionBar.setDisplayUseLogoEnabled(false);
actionBar.setDisplayHomeAsUpEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
}
这是在我的 styles.xml 中:
<!--Customize the actionbar-->
<item name="android:windowActionBarOverlay">false</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
<item name="android:actionButtonStyle">@style/MyActionButton</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">@color/green2</item>
<item name="android:icon">@drawable/app_icon_small</item>
<!-- Support library compatibility -->
</style>
<style name="MyActionButton" parent="@android:style/Widget.Holo.Light.ActionButton">
<item name="android:paddingRight">@dimen/padding_border</item>
<item name="android:paddingLeft">@dimen/padding_border</item>
<item name="android:src">@drawable/icon_plus</item>
<!--<item name="android:minWidth">0dp</item>-->
<!--<item name="android:paddingLeft">0dp</item>-->
<!--<item name="android:paddingRight">15dp</item>-->
<!-- Support library compatibility -->
</style>
这是自定义视图的布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:background="@color/green2">
<ImageView
android:id="@+id/header"
android:contentDescription="@string/app_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="@dimen/padding_border"
android:paddingRight="@dimen/padding_border"
android:src="@drawable/app_icon_small"/>
<EditText
android:id="@+id/et_actionbar_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="YOLO"
android:gravity ="center"
android:textColor="@android:color/black"
android:textStyle="bold"
android:background="@android:color/transparent"
/>
</LinearLayout>
您可以在文件夹 /res/drawable 中创建 xml 文件(your_xml_file),如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<layer-list
xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:drawable="@drawable/menu_button"
android:right="20dp"/>
</layer-list>
并将其添加到代码中:
<activity android:name=...
android:logo="@drawable/your_xml_file" >
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)