1

我的 xml 布局(用于 Andoid)中有多个按钮,具有相当的重复性:

        <ImageButton
            android:src="@drawable/tr" //duplicity everywhere but here
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:id="@+id/button1" //and here
            android:clickable="true"
            android:scaleType="fitXY"
            android:layout_margin="10dp"
            android:background="@color/button" />

        <ImageButton
            android:src="@drawable/rb"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:id="@+id/button2"
            android:clickable="true"
            android:scaleType="fitXY"
            android:layout_margin="10dp"
            android:background="@color/button" />

        ...

有没有像 CSS 或一些类/模板之类的东西让我不把整个晚上都改成50dp10055dp次?

如果这很重要,我正在使用 android studio 2.6。

4

2 回答 2

5

是的。您可以使用主题和样式。Android 在这里找到了一个很好的教程:样式和主题。要控制所有ImageButtons外观和功能,您可以使用android:imageButtonStyle. 例如:

主题.xml

<style name="MyTheme" parent="@android:style/Theme.DeviceDefault">
    <item name="android:imageButtonStyle">@style/ImageButtonStyle</item>
</style>

样式.xml

<style name="ImageButtonStyle" parent="@android:style/Widget.ImageButton">
    <item name="android:layout_width">50dp</item>
    <item name="android:layout_height">50dp</item>
</style>

这将允许您一次调整所有尺寸。当然,如果您希望只ImageButtons使用一些给定样式,则删除该android:imageButtonStyle行,而是对每个ImageButton.

<ImageButton
        android:src="@drawable/tr" //duplicity everywhere but here
        android:id="@+id/button1" //and here
        style="@style/ImageButtonStyle"
        android:clickable="true"
        android:scaleType="fitXY"
        android:layout_margin="10dp"
        android:background="@color/button" />
于 2013-09-01T16:09:20.353 回答
0

好吧,您可以(拥有)使用(d)自定义样式(或)引用的属性值。

如果您这样做了,您可以轻松地更改一个文件中的属性/样式,并查看它反映使用该文件的所有小部件。

你可以参考这里

于 2013-09-01T16:03:02.763 回答