Android UI开发详解之ActionBar(2)

2、通过Menu.xml文件布局

menu/menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:Android="http://schemas.android.com/apk/res/android" >

<item
        android:id="@+id/item1"
        android:orderInCategory="1"
        android:showAsAction="ifRoom|withText"
        android:title="@string/save"/>

<item
        android:id="@+id/item1"
        android:orderInCategory="2"
        android:showAsAction="ifRoom|withText"
        android:title="@string/edit"/>
</menu>

程序:

public class ActionBarXMLActivity extends Activity {
 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
 }

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

效果和上面一样

四、关于菜单项过多

当菜单项过多时,Android会分两种情况进行处理:

1、手机有MENU实体键:则按下Menu键后会显示剩余菜单项

2、手机没有MENU实体键:则会在最左边显示一个Action OverFlow按钮,按下后会显示剩余项菜单,如图:

Android UI开发详解之ActionBar



五、使用带字的Action Item

1、Action item 默认格式是如果菜单项含字和图标的话,只显示图标
2、如果想要显示字的效果,在xml里如下设置:android:showAsAction="ifRoom|withText" 或者在代码里调用setShowAsAction():setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/1c11da2f967898e41b2f0f48714bbf70.html