Как сделать «стиль» со значением»? attr/actionButtonStyle

#java #android #xml #mobile

Вопрос:

[/хранилище/эмулировано/0/.sketchware/данные/743/файлы/ресурс/макет/custom_action_item_layout.xml:2: ошибка: Ошибка: Не найден ресурс, соответствующий заданному имени (в «стиле» со значением»? attr/actionButtonStyle»).,, /хранилище/эмулировано/0/.sketchware/данные/743/файлы/ресурс/меню/меню.xml:6: ошибка: Не найден идентификатор ресурса для атрибута «actionLayout» в пакете ‘com.my.newproject9’,, /хранилище/эмулировано/0/.sketchware/данные/743/файлы/ресурс/меню/меню.xml:6: ошибка: Не найден идентификатор ресурса для атрибута ‘showAsAction’ в пакете ‘com.my.newproject9’,]

Ответ №1:

Возможно, вы где-то ссылались на attr actionButtonStyle , и этот атрибут не задан в теме вашего приложения.

Предполагая, что вы используете темы материалов для своего приложения, сначала создайте тему для своих кнопок. Ниже приведен пример, и вы можете настроить его по своему усмотрению:

 <style name="Widget.App.Button" parent="Widget.MaterialComponents.Button">
    <item name="materialThemeOverlay">@style/ThemeOverlay.App.Button</item>
    <item name="android:textAppearance">@style/TextAppearance.App.Button</item>
    <item name="shapeAppearance">@style/ShapeAppearance.App.SmallComponent</item>
</style>
 

Теперь в теме вашего приложения установите значение этого атрибута для новой темы:

 <!--Your app theme might be different than the following, just put that attribute inside-->
<style name="Theme.App" parent="Theme.MaterialComponents.*">
    ...
    <item name="actionButtonStyle">@style/Widget.App.Button</item>
</style>
 

Надеюсь, это поможет.