问题标签 [preference-v7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
13 回答
57000 浏览

android - PreferenceFragmentCompat 需要设置 preferenceTheme

使用 v7 首选项支持库中的新 PreferenceFragmentCompat:http: //developer.android.com/tools/support-library/features.html#v7-preference,我收到此错误

应该设置什么主题?

更新:我尝试过使用

<item name="preferenceTheme">@style/PreferenceThemeOverlay</item>

正如@Bogato 所建议的那样,但它看起来不正确,即使在棒棒糖上也看起来很全息。

支持库:

在此处输入图像描述

原生偏好:

在此处输入图像描述

0 投票
2 回答
26333 浏览

android - Installing a support library for PreferenceFragmentCompat

I'm new to Android Studio and a total beginner at Android programming in general. I looked and looked and I couldn't find the right thing to do.

All I want is to install a library to use PreferenceFragmentCompat or any class that replaces android.app.PreferenceFragment so my app can work in API 11 and lower.

Can anyone please give me some details such as which library should I use and how to install it in my AS project.

Edit: So I started developing this app using android.support.v4 and android.support.v7 libraries to handle the Fragments so I can run it on API 11 and lower.

this is my MainActivity.java.

Now this is my SettingsFragment.java:

The real problem I encounter here is with this line: mainFragment = new SettingsFragment(); in the onNavigationDrawerItemSelected(int position) method in MainActivity.java.

It returns an error saying:

Error:(70, 32) error: incompatible types: SettingsFragment cannot be converted to Fragment

How can I fix this and still be able to use my app on API 11 and lower?

0 投票
8 回答
12142 浏览

android - 内部 PreferenceScreen 不使用 PreferenceFragmentCompat 打开

我的 PreferenceFragmentCompat 内部 PreferenceScreen 没有显示,或者似乎忽略了点击事件。

我创造了MyPreferenceFragment那个extends PreferenceFragmentCompat

然后我改变了我的styles.xml主题

最后创建我的preferences.xml文件

build.gradle我添加了两个:

活动代码

activity_main.xml

测试上面的代码我无法打开/进入首选项屏幕。我错过了什么吗?为什么这不起作用?

0 投票
2 回答
7020 浏览

android - 如何从 Preferences 子屏幕移回 PreferenceFragmentCompat 中的主屏幕?

我正在尝试使用 PreferenceFragmentCompat 实现设置屏幕。我的偏好 xml 有一个偏好子屏幕,如下所示:

首选项.xml

首选项主屏幕

现在,在应用程序中,子屏幕不会打开,直到我在父活动中实现 PreferenceFragmentCompat.OnPreferenceStartScreenCallback 接口,如 PreferenceFragmentCompat 文档中所指定。

MainActivity.java

这就是问题出现的地方。在实现界面时,子屏幕打开,但是我找不到回到第一个屏幕的方法。

偏好子屏幕

按返回键关闭应用程序。

有什么办法可以在应用栏上放一个后退箭头,以便按下它会返回主屏幕?

0 投票
0 回答
46 浏览

android - 在 Eclipse 上找不到 PreferenceFragmentCompat

Android 已经有一个库来支持旧版本中的 PreferenceFragment。我没有使用 Android Studio,所以我无法添加到 gradle:

我已经有了最新版本的支持库23.0.1,但由于某种原因,该项目没有出现在sdk/extras/android/support/v7文件夹中,所以我无法导入它。是否可以通过某种方式获取库,或者我需要将项目迁移到 AndroidStudio?

0 投票
1 回答
2146 浏览

android - @style/PreferenceThemeOverlay 的 PreferenceFragmentCompat 填充问题

在使用preference-v7支持库(版本23.1.0)中的默认PreferenceThemeOverlay时,我遇到了以下问题。从 API 22 开始,我的 PreferenceFragmentCompat 在我的偏好列表的左侧和右侧添加了一个丑陋的附加填充。

构建.gradle:

样式.xml:

在此处输入图像描述

在我没有在 stackoverflow 上找到任何有用的解决方案后,我自己编写了一个解决方法。我只是想和你们分享。

0 投票
1 回答
548 浏览

android - PreferenceFragmentCompat 问题

使用似乎有很多问题PreferenceFragmentCompat。我已经设置了PreferenceThemeOverlay. 但是,标题似乎太大了。EditTextPreference标签无法理解 inputType 。

一般来说。Android支持版本23.1似乎没有解决。

也许有人有办法解决这个问题?谢谢

0 投票
4 回答
3309 浏览

android - PreferenceFragmentCompat 在初始化时崩溃

我用 ViewPager 做了一个应用程序。当我进行调试构建并在手机上进行测试时,一切正常。(不是模拟器)但是当我构建一个版本 .apk 并安装它时,PreferenceFragmentCompat 的addPreferencesFromResource(R.xml.preferences); 使应用程序崩溃。 PreferenceFragmentCompat - Android 开发者

ApplicationSettingsFragment.java:

res/xml/preferences.xml

和崩溃报告:

我正在使用最新的库:

有人可以告诉我我做错了什么吗?谢谢

0 投票
1 回答
1310 浏览

android - Android - 我的 ListPreference 中的自定义行布局

在我的 Android 应用程序中,我实现SubtitleColorListPreference了从ListPreference. 我需要这个,因为我需要为列表中的每个项目设置自己的布局。一切正常,看起来像这样:

ListPreference 中的自定义布局

重要的代码在onPrepareDialogBuilder(AlertDialog.Builder builder)我自己设置的方法中ListAdapter

现在,我需要使用PreferenceFragmentCompat而不是PreferenceFragment,所以我SubtitleColorListPreference必须扩展android.support.v7.preference.ListPreference. 这就是问题所在——这里面没有任何onPrepareDialogBuilder方法ListPreference。另外,我没有找到任何类似的方法。我试图找到一些如何创建 custom的示例android.support.v7.preference.ListPreference,但没有成功。有谁知道我该如何解决这个问题?

0 投票
2 回答
13468 浏览

android - 如何将 support.v7.preference 与 AppCompat 和潜在缺点一起使用

我试图使用 support.v7.preference 为 AppCompat 应用程序实现首选项。我花了几天的时间来处理它,因为 support.v7.preference 与本机偏好有一些显着差异......一旦你知道这并不算太糟糕,但不幸的是那里几乎没有文档。我想我会分享我的发现,这样其他人就不必经历同样的痛苦。


所以......问题:

您如何最好地实现 AppCompat 应用程序的首选项(PreferenceFragment 和 AppCompatAcitivity 不兼容)?

这里有几个相关的问题:

官方文档在这里: