Java Android操作栏图标不显示
我非常沮丧,每件事都设置正确,甚至在渲染(使用Android Studio)时,也会显示动作栏图标,但当我在物理智能手机(pocket neo 4.1.2)上运行它时,它只会显示ic启动器和标题。解决方案是什么 活动\u main\u actions.xml ` `好的,我检查一下,您的手机分辨率非常小(240 x 320)Java Android操作栏图标不显示,java,android,android-actionbar,Java,Android,Android Actionbar,我非常沮丧,每件事都设置正确,甚至在渲染(使用Android Studio)时,也会显示动作栏图标,但当我在物理智能手机(pocket neo 4.1.2)上运行它时,它只会显示ic启动器和标题。解决方案是什么 活动\u main\u actions.xml ` `好的,我检查一下,您的手机分辨率非常小(240 x 320) 因此,由于您使用的是app:showAsAction=“ifRoom”,因此只有在actionbar中有空间时才会显示。 如果您希望它始终显示,则需要将其更改为app:sh
因此,由于您使用的是
app:showAsAction=“ifRoom”
,因此只有在actionbar中有空间时才会显示。如果您希望它始终显示,则需要将其更改为
app:showAsAction=“always”
希望这能帮助您,如果您有任何其他与我的答案相关的问题,请随时在评论中提问。根据我的经验,如果目标设备不是v21(棒棒糖),在定义
showAsAction
时,您应该使用android
命名空间,而不是应用程序
命名空间
如果您希望两者兼容,并且您的IDE抱怨android
命名空间,请使用app
命名空间创建一个新布局,并将其放在v21布局文件夹中 解决了
我的错误是添加了支持:appcompact-v7,minsdk=14,
无论如何,感谢您的回答。您正在通过编程将其设置为ic_启动器,您希望得到什么?actionBar.setIcon(R.mipmap.ic_启动器);我是说其他图标是指找到的ic_action_b和ic_action_location_?是的,这两个图标不显示这就是问题所在将活动从一个活动更改为另一个活动。
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!-- Search Widget -->
<item android:id="@+id/action_search"
android:icon="@drawable/ic_action_b"
android:title="@string/action_search"
app:showAsAction="ifRoom"
/>
<!-- Location Found -->
<item android:id="@+id/action_location_found"
android:icon="@drawable/ic_action_location_found"
android:title="@string/action_new"
app:showAsAction="ifRoom" />
</menu>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_height="match_parent"
tools:context=".MainActivity">
</RelativeLayout>
public class MainActivity extends Activity {
private ActionBar actionBar;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
actionBar = getActionBar();
// Hide the action bar title
actionBar.setIcon(R.mipmap.ic_launcher);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main_actions, menu);
return super.onCreateOptionsMenu(menu);
}
}