Пожалуйста, дайте мне знать, как я могу установить фон по умолчанию для пользовательской кнопки равным нулю.
Я имею в виду... Я знаю, что могу определить «стиль», который устанавливает для android: background значение «@null», и попросите пользователей явно применить стиль в своем макете. Например:
<style name="MyButton" parent="@android:style/Widget.Button">
<item name="android:background">@null</item>
</style>
и
<com.xxx.widget.MyButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/MyButton"
android:text="MyButton" />
Приведенный выше код работает хорошо. Но как я могу применить этот стиль в моем классе «MyButton» внутри и позволить пользователям не задавать стиль явно?
Например, как заставить следующий макет работать как раньше:
<com.xxx.widget.MyButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="MyButton" />
Я попытался сделать это в конструкторе, как показано ниже, но это не работает.
public MyButton(Context context, AttributeSet attrs) {
this(context, attrs, com.xxx.R.style.MyButton);
}
ПС. Я хочу применить этот «нулевой» фон, когда пользователь не устанавливает фон явно.