java 设置默认list_java-如何设置ListPreferen的默认值
java-如何设置ListPreferen的默认值
我需要在活动开始时为ListPreference设置默认值。我尝试使用ListPreference.setDefaultvalue("value");,但是它使列表的firts条目成为默认条目。 我需要它,因为我必须检查一个条件并将满足该条件的值设置为默认值,因此我认为无法从xml文件(使用android:defaultValue)中完成
例如,假设我在arrays.xml中具有以下值数组:
red
green
blue
1
2
3
在PreferenceScreen xml中:
android:title="Colour select"
android:summary="Select your favourite"
android:key="colour"
android:entries="@array/opts"
android:entryValues="@array/opts_values" />
在活动中,我想做这样的事情:
String mycolour;
if (something) {
mycolour="1";
} else {
mycolour="2";
}
ListPreference colour = (ListPreference) findPreference ("colour");
colour.setDefaultValue(mycolour);
但这是行不通的,因为它将默认设置为第一选择。 您能解释一下如何将另一个设为默认值吗? 谢谢。
10个解决方案
97 votes
您不需要以编程方式处理2726803835835279901696的默认值。您可以在xml设置文件中执行此操作。 下面是一个例子
red
green
blue
1
2
3
android:title="Colour select"
android:summary="Select your favourite"
android:key="colour"
android:entries="@array/opts"
android:entryValues="@array/opts_values"
android:defaultValue="2" />
在这里我选择2作为默认值。 记住defaultvalue将是opts_values元素。
Md. Naushad Alam answered 2020-01-31T10:51:23Z
27 votes
你有没有尝试过:
setValueIndex(int index);
biddulph.r answered 2020-01-31T10:50:59Z
8 votes
对不起,我的英语不好。
项目清单
检索列表检查值是否为null。 如果为null,则设置为默认值。
码:
ListPreference dataPref = (ListPreference) findPreference("keyList");
if(dataPref.getValue() == null){
dataPref.setValueIndex(0); //set to index of your deafult value
}
Leandro P. answered 2020-01-31T10:51:57Z
3 votes
或者您也可以尝试colour.setValue(mycolour);
ungalcrys answered 2020-01-31T10:52:18Z
3 votes
仅供记录,如果其他人有此问题:
setValueIndex(int X)会将@ index X的值设置为默认值-可能正是您要寻找的。
添加值后设置此值! (愚蠢的错误,但花了我半个小时)
Langusten Gustel answered 2020-01-31T10:52:48Z
3 votes
((ListPreference) findPreference("pref_language")).setValue(Locale
.getDefault().getLanguage());
setValue()是ListPreference的方法,而setDefaultvalue是Preference的方法
laomo answered 2020-01-31T10:53:08Z
1 votes
实际上,这是因为在重新构建应用程序后,SharedPreferences将保留。卸载它,然后重试。
Yijun Li answered 2020-01-31T10:53:28Z
1 votes
这是旧文章,但这是使用以下代码行设置ListPreference默认值的另一种方法:
PreferenceManager.setDefaultValues(getActivity(), R.xml.preferences, false);
wooldridgetm answered 2020-01-31T10:53:50Z
1 votes
您可以使用如下键设置默认值
Block All Calls
Block Black List
Block Unknown Calls
Allow White List
Receive All Calls
Block_All_Calls
Block_Black_List
Block_Unknown_Calls
Allow_White_List
Receive_All_Calls
android:key="prefSyncFrequency"
android:entries="@array/syncFrequency"
android:summary="%s"
android:defaultValue="Block_Black_List"
android:entryValues="@array/syncFrequencyValues"
android:title="@string/call_block_options" />
pavel answered 2020-01-31T10:54:09Z
0 votes
在列表标记中使用xml属性设置默认值。
注意:是实际值,而不是字符串的索引 数组。
如果仍然无法正常工作,请尝试以下步骤。
清除应用程序数据。
卸载并重新安装该应用程序
检查列表首选项,您将看到选择的默认值
奇怪,我知道,但是对我来说有效。
Vivek answered 2020-01-31T10:54:56Z
java 设置默认list_java-如何设置ListPreferen的默认值相关推荐
- eclipse 默认jdk 的设置 eclipse.ini -vm 参数
2019独角兽企业重金招聘Python工程师标准>>> eclipse 的配置文件 eclipse.ini 不仅仅可以设置eclipse的堆栈内存大小,也可设置默认使用的jdk版本. ...
- springboot默认数据源如何设置连接数_Spring Boot系列之配置数据库连接池
在实际的应用开发中,与数据库交互通常使用数据库连接池来重用Connection对象,减少资源消耗. Spring Boot 的数据源是自动配置的.在 Spring Boot 2.2.1 版本中,有几种 ...
- java 设置系统参数_Java如何设置系统参数和运行参数
系统参数 系统级全局变量,该参数在程序中任何位置都可以访问到.优先级最高,覆盖程序中同名配置. 系统参数的标准格式为:-Dargname=argvalue,多个参数之间用空格隔开,如果参数值中间有空格 ...
- java堆内存设置_java堆内存设置原理
堆内存设置 原理 JVM堆内存分为2块:Permanent Space 和 Heap Space. Permanent 即 持久代(Permanent Generation),主要存放的是Java类定 ...
- Android 7.1.2 默认输入法的设置流程分析与修改
一.默认输入法的设置流程分析 设置流程分析 1. Android系统开机后,当ActivityManagerService及PackageManagerService都ready后,systemse ...
- java线程池的参数设置
java线程池的参数设置 在说如何对线程池优化之前重复一下线程的7大参数 corePoolSize: 核心线程数,也是线程池中常驻的线程数,线程池初始化时默认是没有线程的,当任务来临时才开始创建线程去 ...
- java preferences设置_Java利用Preferences设置个人偏好
Preferences的中文意思即偏好或喜好的意思,也就是说同一个程序在每次运行完后,可以通过Preferences来记录用户的偏好,下次启动时,程序会利用这些信息来了解用户的喜好.而这些信息个人理解 ...
- mysql默认字符编码设置教程:my.ini设置字符编码
转载2016-06-07 21:49:26 标签:mysql 本文介绍了MySQL数据库中默认字符编码的设置方法,如何设置与修改mysql默认编码,my.ini设置字符编码的教程,需要的朋友参考下. ...
- java获取session失效时间_Java设置session超时(失效)的时间
在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动退出登录,销毁session 具体设置的方法有三种: 1.在web容器中设置(以tomcat为例) 在 ...
最新文章
- Taro+react开发(38)注意请求接口的/
- 研发工程师如何转型项目经理
- springboot整合mysql5.7_详解SpringBoot整合MyBatis详细教程
- 计算机系统设计 片上系统 pdf,一种基于过程级编程模型的可重构片上系统设计方法.pdf...
- java读取word文档内容_合并多个Word文档内容,还在复制粘贴就out了,同事五秒轻松搞定...
- 如何将 Mac Dock 恢复到原始设置?
- PHP获取照片exif信息
- 在惠普BL460C G1上安装System Management Homepage(CentO...
- access数据库应用系统客观题_Access数据库程序设计模拟题
- ZigBee-CC2530单片机 - 按键控制LED
- linux挂载光盘镜像到mnt目录,CentOS系统中挂载光盘镜像ISO文件的教程
- 数字信号处理--语音信号变声报告
- 源哥每日一题第一弹 codeforces 913 C. Party Lemonade
- 根据IP地址获取地理位置
- 2021-10-09烧录固件芯片操作流程
- 在c语言中pwm的作用,详细注解的PWM c程序初学者适用
- 人工智能开源社区论坛----开源助力多领域AI生态发展| ChinaOSC
- Apache基于域名、端口、IP的虚拟主机配置(Centos 6.5)
- 【读书笔记】赞成功利主义的学习
- CF终于上紫了。。。