13

I`m developing an App using ActionBarSherlock

One of the items in the menu is a rectangular image. See it`s xml:

<item
    android:id="@+id/kapturar_action"
    android:showAsAction="always"
    android:icon="@drawable/camera_action_icon"
    android:title="@string/kapturar" />
<item

So far so good. The problem is that the SDK 4.3 appears to accept only square images (This is my supposition, i`m not sure of that) and the icon shows in a strange fashion preserving what appears to be a "max width" property.

See the printscreens

Android 2.2 - Simulator:

Android 2.2

Android 4.1.2 - Samsung Galaxy S3 Mini:

Android 4.1.2

Android 4.3 - Nexus 4:

Android 4.3

I double checked the drawables and I think that everything is right. I have defined the MDPI, HDPI and XHDPI images.

Can anybody affirm that is impossible to use rectangular drawables in the menu`s item? Is there a way to fix the problem in the Android 4.3 preserving the backward-compatible?

4

3 回答 3

4

由于 Google 发布了自己的Action Bar 兼容性库, Action Bar Sherlock 现在已被弃用

我强烈建议切换到该官方库,我猜/希望您的问题不会出现在那里。

于 2014-02-15T08:32:50.263 回答
0

您可以简单地使用 ActionBar 的兼容版本。这不是很好的答案,但它会帮助你。

让它只是评论行

registerImplementation(ActionBarSherlockNative.class);

在 ActionBarSherlock 类中。

此外,在此之后,您可以在 ActionBarSherlock 中编辑源、资源,它们在 Android 2.3 和 Android 4.0+ 设备上看起来相同。

于 2014-02-14T10:56:08.733 回答
0

尝试将您的可绘制对象放入另一个文件夹。我的意思是,如果它在 drawable-xhdpi 文件夹中,请将其放入 drawable-hdpi (或其他)。有时它解决了从资源中调整图像大小的问题

于 2014-02-14T11:28:34.580 回答