Android GUI - 如何将通用样式应用于多个元素
Android GUI - How to apply a Common Style to Several Elements
作为 Android 开发的初学者,我目前正在创建一个计算器应用程序。
目的
我想创建一个适用于多个元素的特定样式,我们可以在 Web 开发中使用 CSS class 来完成。
样式将必须适用于计算器的九个数字按钮(1 到 9)。
为了避免重复相同的属性 9 次(每个“按钮”元素一次),我创建了一个“样式”块,其中放置了每个按钮的所有公共属性。
我已经在名为“styles.xml”的 XML 资源文件中添加了这个 <style>
,这个文件的内容很好地被应用程序加载了,因为没有任何此文件中声明的属性“dimen”和“colors”存在问题。
代码如下:
<!-- Style of the calculator numerics buttons -->
<dimen name="calculatorNumberWidth">60dp</dimen>
<dimen name="calculatorNumberHeight">60dp</dimen>
<style name="calculatorNumberStyle" parent="TextAppearance.AppCompat">
<item name="android:layout_width">90dp</item>
<item name="android:layout_height">90dp</item>
<item name="android:gravity">center</item>
<item name="backgroundTint">#F1FAEE</item>
<item name="android:textColor">#000000</item>
<item name="android:textSize">36dp</item>
<item name="layout_constraintBottom_toBottomOf">parent</item>
<item name="layout_constraintRight_toRightOf">parent</item>
<item name="layout_constraintTop_toTopOf">parent</item>
</style>
我的问题:
我无法应用此样式。我尝试了两种不起作用的方法:
通过在每个按钮的“Button”标签中添加属性android:style="@style/calculatorNumberStyle"
。
在这种情况下,编译器会停止构建并引发此错误:AAPT: error: attribute android:style not found
通过在每个按钮的“Button”标签中添加属性android:theme="@style/calculatorNumberStyle"
。
在这种情况下,应用程序编译良好但未应用样式。
我试图找到我的方法来抛出这个文档:https://developer.android.com/guide/topics/ui/look-and-feel/themes,但没有成功。
有人知道哪种方法好吗?
SDK平台版本:11.0,AndroidStudio版本:4.1
提前致谢,祝大家愉快,
米凯尔
尝试在没有 android
指令的情况下使用 style
style="@style/calculatorNumberStyle"
作为 Android 开发的初学者,我目前正在创建一个计算器应用程序。
目的 我想创建一个适用于多个元素的特定样式,我们可以在 Web 开发中使用 CSS class 来完成。 样式将必须适用于计算器的九个数字按钮(1 到 9)。
为了避免重复相同的属性 9 次(每个“按钮”元素一次),我创建了一个“样式”块,其中放置了每个按钮的所有公共属性。
我已经在名为“styles.xml”的 XML 资源文件中添加了这个 <style>
,这个文件的内容很好地被应用程序加载了,因为没有任何此文件中声明的属性“dimen”和“colors”存在问题。
代码如下:
<!-- Style of the calculator numerics buttons -->
<dimen name="calculatorNumberWidth">60dp</dimen>
<dimen name="calculatorNumberHeight">60dp</dimen>
<style name="calculatorNumberStyle" parent="TextAppearance.AppCompat">
<item name="android:layout_width">90dp</item>
<item name="android:layout_height">90dp</item>
<item name="android:gravity">center</item>
<item name="backgroundTint">#F1FAEE</item>
<item name="android:textColor">#000000</item>
<item name="android:textSize">36dp</item>
<item name="layout_constraintBottom_toBottomOf">parent</item>
<item name="layout_constraintRight_toRightOf">parent</item>
<item name="layout_constraintTop_toTopOf">parent</item>
</style>
我的问题:
我无法应用此样式。我尝试了两种不起作用的方法:
通过在每个按钮的“Button”标签中添加属性
android:style="@style/calculatorNumberStyle"
。 在这种情况下,编译器会停止构建并引发此错误:AAPT: error: attribute android:style not found
通过在每个按钮的“Button”标签中添加属性
android:theme="@style/calculatorNumberStyle"
。 在这种情况下,应用程序编译良好但未应用样式。
我试图找到我的方法来抛出这个文档:https://developer.android.com/guide/topics/ui/look-and-feel/themes,但没有成功。
有人知道哪种方法好吗?
SDK平台版本:11.0,AndroidStudio版本:4.1
提前致谢,祝大家愉快,
米凯尔
尝试在没有 android
指令的情况下使用 style
style="@style/calculatorNumberStyle"