我在操作栏中创建了菜单项,它在 Google Nexus4 中看起来不合适,但在 S3 中看起来不错。
S3 和 Nexus 4 都是 xhdpi 设备,分辨率为 1280x800。
我错过了什么?
这是一个屏幕截图:
图标很小的原因是 NEXUS4 是纯 Android 的。为 xdpi 设备规定的图标大小为 72x72。您的图标大小不同,因此为了适应 nexus4 显示小图标。
要使用共享操作提供程序绘制自定义图标,您可以查看以下代码:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/contest"
android:actionLayout="@layout/actionbar_view"
android:showAsAction="ifRoom"
android:title="Contest"/>
<item
android:id="@+id/menu_item_share"
android:actionProviderClass="android.widget.ShareActionProvider"
android:showAsAction="ifRoom"/>
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate menu resource file.
getMenuInflater().inflate(R.menu.menu, menu);
// Locate MenuItem with ShareActionProvider
MenuItem item = menu.findItem(R.id.menu_item_share);
MenuItem contestItem = menu.findItem(R.id.contest);
// Fetch and store ShareActionProvider
mShareActionProvider = (ShareActionProvider) item.getActionProvider();
contestItem.getActionView().setOnClickListener(new OnClickListener() {
@Override
public void onClick(final View view) {
// on click code
}
});
return true;
}