刚接触android的一些陌生操作
最近重温了一下android基础,打算自己开发一个android的会议软件,以此篇博客来记录这一开始,一起和我重温一下android吧。
这是一篇非零基础android学习的博客,而是一篇android小白的查缺补漏的一篇android的细节补充
此篇文章主要对于一些常规或复杂操作(不常用容易忘记)的记录
就如将大象放进冰箱里一样(将冰箱打开、大象放进冰箱,关上冰箱),下面介绍的一些个人认为有必要记录一下的操作也会像将大象放进冰箱里一样简单
🎉 工具:android studio
🎲 主要基于android7.0或有其他补充
一、在活动中创建菜单
这是本篇文章的第一个操作,原生的菜单可能在开发中不常用,但也可谓是一个知识点呢,看看是如何在一个活动中创建一个菜单的吧。
我尽力将所有步骤简化为放进三步,像冷藏大象一样:
1、在res/menu下创建main.xml文件(打开冰箱)
首先在res目录下新建一个名为menu的目录,再在menu目录下新建一个名为main的Menu resource file。
2、编写菜单布局文件(放入大象)
在我们新建的main.xml中添加如下代码
<menu xmln: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>
这里在布局中创建了一个菜单,菜单里有Add和Remove两个item
3、在activity中重写onCreateOptionsMenu()和onOptionsItemSelected(MenuItem item)方法(关上冰箱)
首先回到我们的主activity中,在activity中重写onCreateOptionsMenu()方法,将menu注册到acitivity上。
public boolean onCreateOptionsMenu(Menu menu){
getMenuInflater().inflate(R.menu.main,menu);
return true;
}
getMenuInflater().inflate(R.menu.main,menu); 传入了两个参数
第一个参数当然是我们事先编辑好的菜单布局xml文件,第二个参数是用于指定我们的菜单项将添加到那个Menu对象中去,这里我们就直接使用重写方法中的menu参数
返回true表示允许菜单显示,false则表示无法显示
这是我们将我们自定义的menu布局注册到了activity中的menu对象里,如果我们想要监听每一个菜单项被选择时发生的动作,我们还需要重写onOptionsItemSelected(MenuItem item)方法。
public boolean onOptionsItemSelected(MenuItem item){
switch(item.getItemId()){
case R.id.add_item:
Toast.makeTest(this,"you clicked add",Toast.LENGTH_SHORT).show();
break;
case R.id.remove_item:
Toast.makeTest(this,"you clicked remove",Toast.LENGTH_SHORT).show();
break;
}
return true;
}
可以看到下面的运行内容:
看,我们很容易通过三步在活动中创建了一个菜单。
? 持续更新。。。
📘 参考书籍:《第一行代码 android》第二版
|