java - 所有 Activity 中都可用的选项菜单

标签 java android menu kotlin settings

我正在制作一个 Android 应用程序,目前在我的 MainActivity 中我有一个 onCreate 和一个选项菜单的监听器。我希望在我的所有 Activity 中都可以使用此菜单,同时我想知道是否有比将 onCreate 复制到每个 Activity 中更好的方法。我的菜单代码如下。

// onCreateOptionsMenu()
// Create options menu
override fun onCreateOptionsMenu(menu: Menu): Boolean {
    menuInflater.inflate(R.menu.options_menu, menu)
    return true
}

// onOptionsItemSelected()
// "On click listener" for options menu
override fun onOptionsItemSelected(item: MenuItem): Boolean {
    val id = item.itemId

    when(id) {
        R.id.action_settings -> { // Selected settings
            val intent = Intent(this@MainActivity, SettingsActivity::class.java)
            startActivity(intent)
        }
        R.id.action_about_us -> { // About us selected
            // Go to About activity
        }
        R.id.action_rate_us -> { // Rate us selected
            // Go to Google Play store
        }
    }
    return super.onOptionsItemSelected(item)
}

最佳答案

使用您上面的相同代码创建一个抽象类父 Activity ,然后扩展您想要继承父 Activity 的属性/方法的 Activity 。

关于java - 所有 Activity 中都可用的选项菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51215434/

相关文章:

android - 如何在代码中获取 EditText maxLength 设置

java - 如何解决出现此 makeHttpRequest 错误的错误?

android - 我如何隐藏一项 Activity 的菜单按钮

html - 将导航菜单居中

html - 如何用管道分离链接项

java - 无法从 log4j2 客户端 GUI 连接到我的应用程序

java - 如何(完全)将 json 反序列化为通用列表?

java - 从 Android 设备卸载应用程序时,从 SUP 服务器删除应用程序连接

java - getBytes 然后 toString 每次都不会给出相同的结果

java - 在 Java 中通过 HttpURLConnection 发送 HTTP POST 请求不起作用