android 未找到菜单资源

ffx8fchx  于 2023-04-28  发布在  Android
关注(0)|答案(1)|浏览(176)

我开始了一个新项目,这是一个我还没有遇到的问题。
这是一个简单的工作,其他时间工作,为工具栏创建一个菜单Android资源目录-〉资源类型'menu'.它似乎不承认从资源菜单.

使用import android.R不起作用,因为它无法识别res菜单

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
>

<item
    android:id="@+id/logout"
    android:title="Logout"
    app:showAsAction="never"
    />

 </menu>

默认情况下创建了一个新项目,看起来它工作了。有什么想法吗?

class MainActivity : AppCompatActivity() {

private lateinit var binding: ActivityMainBinding

// Firebase
lateinit var firebaseUser: FirebaseUser
lateinit var myRef: DatabaseReference

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    binding = ActivityMainBinding.inflate(layoutInflater)
    setContentView(binding.root)

    firebaseUser = FirebaseAuth.getInstance().currentUser!!
    myRef = FirebaseDatabase.getInstance().getReference("Users").child(firebaseUser.uid)

    myRef.addValueEventListener(object : ValueEventListener {
        override fun onDataChange(snapshot: DataSnapshot) {
            val users: Users? = snapshot.getValue(Users::class.java)
            Toast.makeText(this@MainActivity, "User Login : "+ users?.username, Toast.LENGTH_SHORT).show()
        }

        override fun onCancelled(error: DatabaseError) {

        }

    })
}

//Adding logout functionality
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
    menuInflater.inflate(R.menu.menu, menu)
    return true
}

}

项目资源结构

6rvt4ljy

6rvt4ljy1#

使用import android.R不起作用,因为它无法识别res菜单
不会的,因为android.R不包含menu子文件夹,但是<insert_your_package_name_here>.R包含。你需要导入R和你的包名,项目清理和重建后,菜单将在你的项目中解析。

相关问题