之前,我要求刪除PreferenceActivity/PreferenceFragment的填充:Android:如何調整偏好/填充偏好?
Android: How to maximize PreferenceFragment width (or get rid of margin)?
這有麻煩標題文本之前調整量/填充我的時間。 (見下圖)。
沒有任何人有任何想法?
之前,我要求刪除PreferenceActivity/PreferenceFragment的填充:Android:如何調整偏好/填充偏好?
Android: How to maximize PreferenceFragment width (or get rid of margin)?
這有麻煩標題文本之前調整量/填充我的時間。 (見下圖)。
沒有任何人有任何想法?
你可以定製你複選框這樣的: MyPreference.xml
<CheckBoxPreference android:key="testcheckbox"
android:title="Checkbox Title"
android:summary="Checkbox Summary..."
android:layout="@layout/custom_checkbox_preference_layout">
</CheckBoxPreference>
和custom_checkbox_preference_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?android:attr/listPreferredItemHeight"
android:gravity="center_vertical"
android:paddingLeft="16dip"
android:paddingRight="?android:attr/scrollbarSize">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:minWidth="0dp"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:id="@+android:id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
/>
</LinearLayout>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="6dip"
android:layout_marginTop="6dip"
android:layout_marginBottom="6dip"
android:layout_weight="1">
<TextView android:id="@+android:id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:textAppearance="?android:attr/textAppearanceMedium"
android:ellipsize="marquee"
android:fadingEdge="horizontal" />
<TextView android:id="@+android:id/summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@android:id/title"
android:layout_alignLeft="@android:id/title"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="?android:attr/textColorSecondary"
android:maxLines="4" />
</RelativeLayout>
<!-- Preference should place its actual preference widget here. -->
<LinearLayout android:id="@+android:id/widget_frame"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical" />
</LinearLayout>
一點就是Android:minWidth = 「0dp」。
您好先生,我爲CheckBoxPreference使用自定義佈局。但我的問題是ID爲「@ + android:id/widget_frame」的線性佈局在其左側和右側有一些填充。如何刪除它。感謝提前。 – 2014-04-09 12:53:13
對於任何面臨此問題並且不想通過自定義佈局的人。我想指出的是,加入:
android:icon="@null"
解決了我的問題與左側的空白空間。
<PreferenceScreen android:icon="@null" android:title="Your title" android:summary="Your summary" />
通過user1482130工作也適用於其他類型的偏好,如listpreferences描述沒有修改的custom_checkbox_preference_layout.xml!非常有用的
android:layout="@layout/custom_checkbox_preference_layout">
如果要創建喜好動態傳遞ContextThemeWrapper作爲參數傳遞給新的偏好
TypedValue themeTypedValue = new TypedValue();
getActivity().getTheme().resolveAttribute(R.attr.preferenceTheme, themeTypedValue, true);
ContextThemeWrapper contextThemeWrapper = new ContextThemeWrapper(getActivity(), themeTypedValue.resourceId);
Preference preference = new Preference(contextThemeWrapper);
我發現它在這篇文章中:Dynamically creating Preference Screens on Android
喜@jclova,我面對同樣的問題,我不想通過自定義佈局複選框。你是如何擺脫這個問題的。 – Dory 2013-08-29 11:01:52
我懷疑,你看到左側填充是一個「空的」'android:icon'。你應該儘可能提供你自己的drawable,並且看看它是否有幫助。 – Stan 2013-11-02 20:38:34