android设置继承ActionButtonsPreference三个按钮的preference控件不可见完整代码
时间: 2024-01-26 17:04:59 浏览: 76
Android代码-MaterialDesign风格的Preference页面
首先,你需要创建一个自定义的Preference类,并让它继承自ActionButtonsPreference。然后,在你的布局文件中,将它的三个按钮的Visibility属性设置为GONE。
下面是一个简单的示例代码:
```java
public class CustomPreference extends ActionButtonsPreference {
public CustomPreference(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onAttachedToHierarchy(PreferenceManager preferenceManager) {
super.onAttachedToHierarchy(preferenceManager);
setPositiveButtonText(null);
setNegativeButtonText(null);
setNeutralButtonText(null);
}
}
```
在onAttachedToHierarchy方法中,我们将三个按钮的文本设置为null。
接下来,我们需要在布局文件中使用这个自定义Preference类:
```xml
<com.example.CustomPreference
android:key="custom_preference"
android:title="Custom Preference"
android:layout="@layout/custom_preference_layout"
android:widgetLayout="@layout/custom_preference_widget_layout" />
```
注意这里的android:layout和android:widgetLayout属性,分别指定了Preference的布局和widget的布局。
最后,我们需要在custom_preference_widget_layout布局文件中将三个按钮的Visibility属性设置为GONE:
```xml
<Button
android:id="@+id/button_positive"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Positive Button"
android:visibility="gone" />
<Button
android:id="@+id/button_negative"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Negative Button"
android:visibility="gone" />
<Button
android:id="@+id/button_neutral"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Neutral Button"
android:visibility="gone" />
```
这样,就可以让三个按钮在自定义Preference中不可见了。
阅读全文