JES*_*SUS -1 xml android android-appcompat android-menu
我AppCompat在教会应用程序中使用库,但我的菜单图标没有出现ActionBar.
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// toggle nav drawer on selecting action bar app icon/title
if (mDrawerToggle.onOptionsItemSelected(item)) {
return true;
}
// Handle action bar actions click
switch (item.getItemId()) {
case R.id.action_settings:
return true;
case R.id.menu_item_share:
shareApp();
return true;
case R.id.menu_item_about:
Intent intentAbout = new Intent(MainActivity.this, AboutActivity.class);
startActivity(intentAbout);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
Run Code Online (Sandbox Code Playgroud)
我写了正确的xml,因为我读它应该是:
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:yourapp="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/>
<item
android:id="@+id/menu_item_share"
android:title="@string/menu_share"
android:icon="@drawable/ic_action_share"
android:showAsAction="ifRoom" />
<item
android:id="@+id/menu_item_about"
android:title="@string/menu_about"
android:icon="@drawable/ic_action_about"
android:showAsAction="ifRoom" />
Run Code Online (Sandbox Code Playgroud)
注意:按下设备上的MENU按钮,它们会出现.
改变这个
android:showAsAction="never"
Run Code Online (Sandbox Code Playgroud)
至
yourapp:showAsAction="never"
Run Code Online (Sandbox Code Playgroud)
也用 yourapp:showAsAction="always"
您还可以使用"始终"声明项目始终显示为操作按钮.但是,您不应该强制项目以这种方式出现在操作栏中.
注意:如果操作栏中没有足够的空间用于操作项,则菜单项将显示在仅显示标题的溢出处.
其他人也一样.
引用文档
在使用支持库定义的任何XML属性时,这是必需的,因为旧设备上的Android框架中不存在这些属性.因此,您必须使用自己的命名空间作为支持库定义的所有属性的前缀.
你已经有了
xmlns:yourapp="http://schemas.android.com/apk/res-auto"
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请阅读
http://developer.android.com/guide/topics/ui/actionbar.html
| 归档时间: |
|
| 查看次数: |
2470 次 |
| 最近记录: |