我当前的应用程序中有几个按钮.除了文本和标签外,它们都是相同的.如果我不必为每个按钮重复所有按钮配置信息,那么main.xml会更好.
有没有办法将按钮定义为模板,然后使用它作为模板?
在这个例子中,我有大约10个以下内容:
<Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="10dp" android:text="Y" android:typeface="monospace" android:textSize="12pt" android:tag="Y" android:textColor="@color/button_text" android:background="@drawable/grey_blank_48x48" android:onClick="onButtonClicked"/>
如果我有一个,然后其中9个会很好:
<Button2 android:text="N" android:tag="N"/>
解析度
就像@Luksprog说的那样:
<style name="ASR33_button" > <item name="android:id">@+id/button</item> <item name="android:layout_width">wrap_content</item> <item name="android:layout_height">wrap_content</item> <item name="android:padding">10dp</item> <item name="android:textColor">@color/button_text</item> <item name="android:background">@drawable/grey_blank_48x48</item> <item name="android:onClick">onButtonClicked</item> <item name="android:typeface">monospace</item> <item name="android:textSize">12pt</item> </style>
与main.xml有这样的事情:
<Button style="@style/ASR33_button" android:tag="Y" android:text="Y" /> <Button style="@style/ASR33_button" android:tag="N" android:text="N" />
这有一天.
解决方法
我们
style
:
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="btnlook" > <item name="android:id">@+id/button</item> <item name="android:layout_width">wrap_content</item> <item name="android:layout_height">wrap_content</item> <item name="android:padding">10dp</item> <item name="android:textColor">@color/button_text</item> <item name="android:background">@drawable/grey_blank_48x48</item> <item name="android:onClick">onButtonClicked</item> <item name="android:typeface">monospace</item> <item name="android:textSize">12pt</item> </style> </resources>
然后在你的xml布局中:
<Button style="@style/btnlook" android:text="N" android:tag="N"/>