0

我正在使用 ActionBarSherlock,一切都很好,但一位用户报告说,他的 Galaxy S3 手机上的菜单项太大。这是他所看到的,肖像:

肖像

景观:

景观

我的设备的正常视图:

正常视图

项目列表 xml 文件:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/refresh"
        android:icon="@drawable/refresh"
        android:showAsAction="always"
        android:title="@string/refresh_text"
        android:titleCondensed="@string/refresh_text">
    </item>
</menu>

菜单膨胀代码:

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    MenuInflater inflater = getSupportMenuInflater();
    inflater.inflate(R.menu.actionbar_itemlist, menu);
    return true;
}
4

2 回答 2

3

从您的评论中可以清楚地看出,您需要在所有可绘制文件中包含图像

drawable-xdpi
drawable-hdpi
drawable-mdpi
drawable-ldpi
...

由于您的图像是标准的 android 图标图像,您只需查看找到该图像的位置,您应该能够找到所需的图标。

这是必需的,因为不同的手机具有不同尺寸的屏幕,并且通过为每种尺寸的屏幕提供图像,使用正确尺寸的正确屏幕。所以不会出现图像太大或太小的问题。一般来说,这也是一个很好的 android 实践,所以我建议你使用这些文件夹。(他们在那里是有原因的!)

您可以从这里下载 android 股票图标(以及所有版本的 xdpi、mdpi 等...)

于 2013-10-05T21:05:15.400 回答
2

在准备启动我的应用程序时,我也遇到了这个问题,对我来说,这是因为我误解了图标指南的大小并且我所有的 xhdpi 图标都是 98px 或其他东西,只要确保你所有的 xhdpi图标为 64x64。如果您没有用于 xhdpi 屏幕的单独可绘制文件夹,那么这将是您的问题,因为三星 s3 是 xhdpi(屏幕尺寸。只需创建一个 drawable-xhdpi 文件夹并将 64x64 图像放在那里。

于 2013-10-05T20:55:33.100 回答