2014-11-06 93 views
1

我正在使用appcompat v7与汉堡包进行箭头切换。 但是,我想添加一些填充左侧的切换。导航抽屉切换填充

这是我目前的状况: http://nl.tinypic.com/r/2a0f712/8

这是我想拥有的一切: http://nl.tinypic.com/r/v3q176/8

我已经试过这样:

findViewById(android.R.id.home).setPadding(25, 0, 15, 0); 

但没有奏效。但是,这确实在切换右侧添加了填充。 我也尝试添加样式中的填充,但那也不起作用。

回答

1

AFAIK,该操作在布局资源中被硬编码。你不能改变填充。谷歌这样做是为了保持应用猜测的一致性。

然而u能以可抽拉与UR自身的属性(填充和全部)限定乌尔自己的图标,并用它作为一个指标通过加入这一行styles.xml

<item name="android:homeAsUpIndicator">@drawable/xyz</item> 

而且图像u必须显示关于你想要的实际上是一个工具栏而不是一个操作栏。在工具栏中,图标默认放置在那里。

要了解更多关于工具栏和如何实现它们,这里是一个链接:http://android-developers.blogspot.in/2014/10/appcompat-v21-material-design-for-pre.html

1

我会假设你熟悉的造型在一定程度上推荐你走这条路。仅供参考我还没有确认下面的代码正在工作,但我认为它会接近你想要的。

对于RES /值-14/style.xml,这样的事情:

<!-- style for Action Bar --> 
<style name="MyPaddedActionBar" parent="android:style/Widget.Holo.Light.ActionBarView"> 
    <item name="android:paddingLeft">32dp</item> 
    <item name="android:paddingRight">32dp</item> 
</style> 

然后一切14岁及以下,你会使用程序兼容性(RES /值-14/style.xml):

<style name="MyPaddedActionBar" parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
    <item name="android:paddingLeft">32dp</item> 
    <item name="android:paddingRight">32dp</item> 
</style> 
+0

您可能还会问自己,为什么您要这样做,因为它违背了Android正试图完成的目标。从用户体验来看,通过修改首页指示符的位置,您将失去一致的外观和感觉。 – Cookster 2014-11-06 19:39:28