Android SwitchPreferenceCompat 自定义布局的 ID
Android id for the custom layout for SwitchPreferenceCompat
我一直在尝试为 PreferenceFragment
中的 Preference
(s) 创建 样式字体 的自定义布局。对于只有标题和摘要的简单首选项,我已经能够通过提及具有 android id(s) 的布局资源来做到这一点,例如:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="70dp">
<TextView
android:id="@android:id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="@color/primaryTextColour"/>
<TextView
android:id="@android:id/summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textColor="@color/secondaryTextColour"/>
</LinearLayout>
这对于 EditTextPreference
或 ListPreference
这样的偏好完全有效。现在,我想对 SwitchPreferenceCompat
做同样的事情。我无法找到 SwitchPreferenceCompat
中 switch/toggle 的 android:id
。如果我使用上面提到的布局,它可以工作,但我再也看不到开关了。我为此编写的布局是:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="100"
android:minHeight="70dp">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:weightSum="80"
android:orientation="vertical">
<TextView
android:id="@android:id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="@color/primaryTextColour"/>
<TextView
android:id="@android:id/summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textColor="@color/secondaryTextColour"/>
</LinearLayout>
<android.support.v7.widget.SwitchCompat
android:id="@android:id/??"
android:layout_width="wrap_content"
android:weightSum="20"
android:layout_height="wrap_content" />
</LinearLayout>
我应该在此处切换为 SwitchCompat
的 android:id
是什么?
试试这个 id
android:id="@+id/switchWidget"
我一直在尝试为 PreferenceFragment
中的 Preference
(s) 创建 样式字体 的自定义布局。对于只有标题和摘要的简单首选项,我已经能够通过提及具有 android id(s) 的布局资源来做到这一点,例如:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="70dp">
<TextView
android:id="@android:id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="@color/primaryTextColour"/>
<TextView
android:id="@android:id/summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textColor="@color/secondaryTextColour"/>
</LinearLayout>
这对于 EditTextPreference
或 ListPreference
这样的偏好完全有效。现在,我想对 SwitchPreferenceCompat
做同样的事情。我无法找到 SwitchPreferenceCompat
中 switch/toggle 的 android:id
。如果我使用上面提到的布局,它可以工作,但我再也看不到开关了。我为此编写的布局是:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="100"
android:minHeight="70dp">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:weightSum="80"
android:orientation="vertical">
<TextView
android:id="@android:id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="@color/primaryTextColour"/>
<TextView
android:id="@android:id/summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textColor="@color/secondaryTextColour"/>
</LinearLayout>
<android.support.v7.widget.SwitchCompat
android:id="@android:id/??"
android:layout_width="wrap_content"
android:weightSum="20"
android:layout_height="wrap_content" />
</LinearLayout>
我应该在此处切换为 SwitchCompat
的 android:id
是什么?
试试这个 id
android:id="@+id/switchWidget"