- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我从 xml 加载了这个 PreferenceScreen。问题是当我切换复选框时我正在启动服务需要 5-10 秒才能连接到服务器。我怎样才能在这段时间内禁用复选框。由于布局膨胀,我看不到如何获取 checkbox.setEnable = false?
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
<CheckBoxPreference
android:key="checkBoxenableincomingcall"
android:title="Enable incoming call"
android:defaultValue="true"
android:summary="hasse running as background service" />
<CheckBoxPreference
android:key="checkBoxmakephoneringonincoming"
android:title="Dont ring on message"
android:defaultValue="true"
android:summary="dont disturb me" />
<EditTextPreference
android:key="edittexvalue"
android:title="EditText"
android:summary="EditTextPreference" />
public class EditPreferences extends PreferenceActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
最佳答案
让您的 PreferenceActivity
实现 OnPreferenceChangeListener
,然后用它注册您的复选框。当您检测到它已被按下时,禁用首选项
//in onCreate
findPreference("checkboxpreferencekey").setOnPreferenceChangeListener(this);
public boolean onPreferenceChange(Preference preference, Object newValue){
if(preference.getKey().equals("checkboxpreferencekey")){
preference.setEnabled(false);
return true;
}
else return true;
}
这就是您可以禁用它的方法,您仍然需要从您的服务中进行某种回调或广播,以了解何时再次启用它。但到了时候,您会以同样的方式进行操作。
findPreference("checkboxpreferencekey").setEnabled(true);
关于Android 如何在 PreferenceScreen 长时间操作期间禁用复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4774916/
我的应用程序中有一个标准的首选项页面。但是,当用户按下“管理收藏夹”时,我希望用户能够从这个首选项页面导航到另一个具有自定义布局的 PreferenceScreen。 这是我想到的自定义布局: 是否可
我正在以编程方式创建一组嵌套的 PreferenceScreen。当用户进入其中一个屏幕并点击其中的某个内容时,我想返回到之前的 PreferenceScreen(即“父级”)。 我找不到这方面的任何
我的应用以 API 28 为目标,并且至少有 API 15。作为支持库,我使用的是 AndroidX。 我有一个由 Activity 托管的偏好 fragment ,如下所示: SettingsFra
我遇到了以下(小但烦人!)问题:我有一个 PreferenceActivity,其 XML 偏好层次结构定义带有“sub PreferenceScreens”,即。 e.顶级 PreferenceSc
迁移到 AndroidX 并将目标 SDK 升级到 28 后,我的 SettingsPage 丢失了 PreferenceScreen 组件之间的分隔线,并且文本未左对齐。谁能帮忙? `
我是 Android 开发新手。我在我的 Android 应用程序中开发了一个首选项 Activity 。我想要一个 Preference 来打开一个常规的 Activity。我在我的 XML 文件中
PreferenceScreen 对我来说不够好,因为我必须向 Spinner 添加项目。这些项目需要来自数据列表。 我有一个自定义的 ArrayAdapter,它会在我单击它时返回项目的名称。它返回
我正在尝试构建一个测试,以使用 Espresso 验证我的 PreferenceScreen View 。我要单击的文本位于底部。那么如何使用 Espresso 在 PreferenceScreen
我从 the android documentation 得到以下代码 Android Studio 给我一个错误,说我在 PreferenceScreen 标签上缺少高度和
我创建了以下自定义首选项屏幕。 我想在 Button1 和 Button2 上添加监听器。我应该怎么做? 我正在使用以下代码创建上述首选项屏幕。 演示首选项: import android.app.A
我想去掉首选项 Activity 和所有子屏幕中的顶部标题栏。我现在面临的问题不是发生在果冻 bean 上,而是发生在旧版本上。如果我无法删除它,我想更改它的行为,以便子屏幕中的标题不会从列表项中转移
我有一个 xml 文件,它定义了一些偏好屏幕,如下例所示 .... 我希望能够增加首选项屏幕文本的字体大小,但是因为在首选项屏幕中没有 android:textsiz
我不知道如何在 PreferenceScreen 中实现向上按钮。向上按钮在您的应用程序图标旁边的操作栏中显示一个插入符号,允许您导航应用程序的层次结构,更多信息 here . 我有一个首选项 fra
我正在尝试创建一个 PreferenceScreen,但我希望 Activity 设计与整个项目一样。 如何创建自定义 PreferenceScreen 设计? 最佳答案 是的,这是可行的。为布局道歉
我的 PreferenceScreen 标题很长,尤其是在某些语言中。我可以为 CheckBoxPreference 或 ListPreference 设置多行标题: Android preferen
我在我的首选项屏幕上添加了一个小部件布局,显示一个箭头图标,以向用户表明在给定的 PreferenceScreen 后面还有更多首选项。 但是,我注意到当未启用 PreferenceScreen 时它
我有一个preferencescreen 页面只用于显示数据而不保存它用于设置 代码如下 现在我想知道如何
我正在运行时创建一个 PreferenceScreen。但是在尝试滚动时屏幕停电。 ListView有一个状态可以避免这种情况, android:cacheColorHint="@android:co
下面是首选项屏幕的截图: 我还包括布局和 java 代码: layout/toolbar.xml layout/activity_settings.xml xml/fragment
我找到了一种解决方法来实际启用嵌套 PreferenceScreen 上的 ActionBar 主页按钮...但是它不会在我的 PreferenceActivity 中调用 OnOptionsItem
我是一名优秀的程序员,十分优秀!