Я использую следующие settings.xml
для раздувания моего SettingsFragment
расширения android.support.v7.preference.PreferenceFragmentCompat
:
<android.support.v7.preference.PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
<android.support.v7.preference.PreferenceCategory
android:title="@string/settings_category_title_general">
<android.support.v7.preference.CheckBoxPreference
android:defaultValue="@string/settings_default_value_lorem"
android:key="@string/settings_key_lorem"
android:summary="@string/settings_summary_lorem"
android:title="@string/settings_title_lorem" />
</android.support.v7.preference.PreferenceCategory>
</android.support.v7.preference.PreferenceScreen>
Текст summary
обрезается после четырех строк , которые определены в com.android.support:preference-v7:24.2.1
в res/layout/preferences.xml
:
<TextView android:id="@android:id/summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@android:id/title"
android:layout_alignStart="@android:id/title"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="?android:attr/textColorSecondary"
android:maxLines="4" />
Инспектор макетов также показывает идентификатор summary
:
Чтобы перезаписать настройку, я определил следующие стили:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="preferenceTheme">@style/AppPreferenceTheme</item>
</style>
<style name="AppPreferenceTheme" parent="@style/PreferenceThemeOverlay">
<item name="preferenceStyle">@style/AppPreference</item>
</style>
<style name="AppPreference" parent="@style/Preference">
<item name="android:layout">@layout/settings_item</item>
</style>
и создал копию исходного файла макета preferences.xml
с именем settings_item.xml
, который перезаписывает android:maxLines="4"
.
Однако стиль не применяется . Я добавил background
цвет в summary
, чтобы проверить это.
Относящиеся