美文网首页
kotlin代码实现Activity中的Menu

kotlin代码实现Activity中的Menu

作者: 别看后面有人 | 来源:发表于2021-06-16 21:41 被阅读0次

1.创建menu文件夹:在res目录右击——new——Directory,然后输入“menu” ,点击ok
2.创建menu资源文件:menu右击——new——menu resource file——main
main文件如下:

<item android:id="@+id/add_item" android:title="@string/add_item"/>
    <item android:id="@+id/remove_item" android:title="@string/remove_item"/>
</menu>

3.menu的使用:重写onCreatOptionsMenu()方法

  override fun onCreateOptionsMenu(menu: Menu?): Boolean {
        menuInflater.inflate(R.menu.main,menu)
        return true
    }

这段代码比较难理解menuInflater,先看kotlin中的数据类,不需要通过set和get,而是直接对字段进行赋值,如:

   val book=Book()
   val  page=book.page

menuInflater是使用了父类的getMenuInflater()方法能够获取一个menuInflater对象,在调用inflate()方法

4.定义菜单响应事件重写onOptinsItemSelected(item:MenuItem)

  override fun onOptionsItemSelected(item: MenuItem): Boolean {
        when (item.itemId){
            R.id.add_item -> Toast.makeText(this,"add",Toast.LENGTH_LONG).show()
            R.id.remove_item -> Toast.makeText(this,"remove",Toast.LENGTH_LONG).show()
        }
        return true
    }
image.png

相关文章

网友评论

      本文标题:kotlin代码实现Activity中的Menu

      本文链接:https://www.haomeiwen.com/subject/mwhfyltx.html