1.在res上面右键->New->Android resource directory
2.点击之后,出现下图Resource type选择menu,名字随便起,点击ok
3.可以看到菜单栏已经出现了men
4.menu上面右击,如下图选择:
5.file name自己随便起,点击ok
6.可以看到menu文件夹下,有一个main.XML文件,main是我起的文件名
7.打开main.XML文件,在里面写入代码:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/add_item"
android:title="Add" />
<item
android:id="@+id/remove_item"
android:title="Remove"/>
</menu>
8.
再打开Activity.java文件,在里面重载onCreate()函数
@Override
public boolean onCreateOptionsMenu(Menu menu){
getMenuInflater().inflate(R.menu.main,menu);
return true;
}
//定义菜单响应事件
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()){
case R.id.add_item:
Toast.makeText(this,"你点击了add",Toast.LENGTH_SHORT).show();
break;
case R.id.remove_item:
Toast.makeText(this,"你点击了remove",Toast.LENGTH_SHORT).show();
break;
default:
}
return true;
}
9.
可以在预览处看到界面右上角出现了三个点,点击三个点,会弹出你添加的menu
10.
遇到的问题:
但是你有可能遇到在预览出可以看到三个点,但是当你在真机测试的时候却没有,如下,这就非常尴尬了。
11.
所以这时候该怎么办了,我也是费了九牛二虎之力,才发现。在预览栏里,menu(就是那三个点)是显示在标题栏右侧的,所以这时候需要解决的是显示标题栏。因为安卓现在基本都是默认的隐藏标题栏,太占屏幕空间。
在onCreate()函数添加如下代码:
//显示标题栏
setContentView(R.layout.first_layout);
12.完了之后,你还是发现可能显示不出来,你就很懵逼了,我当时也很懵逼啊,但是老子不服。最后才发现是继承的问题。如下,你看到你的活动继承的是Activity
这是不行的,解决方法就是把你的活动改成继承AppCompatActivity
public class FirstActivity extends AppCompatActivity{
@override
.....
}
这样就可以实现了: