gpt4 book ai didi

Android 工具栏菜单项从不显示,但会溢出

转载 作者:行者123 更新时间:2023-11-29 16:51:25 29 4
gpt4 key购买 nike

我正在尝试使用一个菜单实现 Android 在 v21 中提供的工具栏,其中菜单项设置为显示“ifroom”,但菜单项总是折叠成溢出。如果菜单项设置为“始终”显示,它们也会折叠到溢出中。

我希望有人能指出需要更改的地方才能使其正常运行。我想找到一个不使用 appcompat 来实现它的解决方案,正如我看到的大多数其他解决方案那样。

下面我附上了我的工具栏布局、菜单布局和它在模拟器中的外观截图,以及创建工具栏的主要 kotlin 文件。

模拟器截图

enter image description here

toolbar_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">

<android.widget.Toolbar
android:id="@+id/my_toolbar"
android:layout_width="match_parent"
android:layout_height="?android:attr/actionBarSize"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
android:elevation="4dp"
android:theme="@style/ToolbarTheme"
android:popupTheme="@android:style/ThemeOverlay.Material.Light"
tools:layout_editor_absoluteY="0dp"
tools:layout_editor_absoluteX="0dp" />

</android.support.constraint.ConstraintLayout>

menu_main.xml

<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/miCompose"
android:icon="@drawable/ic_mail_outline_black_24dp"
android:title="@string/menu_compose"
android:orderInCategory="2"
app:showAsAction="ifRoom" />
<item
android:id="@+id/miProfile"
android:icon="@drawable/ic_perm_identity_black_24dp"
android:title="@string/menu_profile"
android:orderInCategory="1"
app:showAsAction="ifRoom"/>

</menu>

mainActivity.kt

import android.app.Activity
import android.os.Bundle
import android.util.Log
import android.view.Menu
import android.widget.Toolbar
import android.view.View
import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.android.synthetic.main.activity_main.view.*

class MainActivity : Activity() {
val TAG: String = "MainActivity"

override fun onCreate(savedInstanceState: Bundle?) {
Log.d(TAG, "onCreate ")
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

val myToolbar = findViewById<View>(R.id.my_toolbar) as Toolbar
myToolbar.setTitle(R.string.title_activity_main)
myToolbar.inflateMenu(R.menu.menu_main)
}
}

最佳答案

您正在使用所有 Android API,不支持库。
所以尝试使用 android 而不是 app:

android:showAsAction="ifRoom"

关于Android 工具栏菜单项从不显示,但会溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46326974/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com