Sea*_*ean 5 android listpreference
我有一个ListPreference,它有一个默认值,它很好用.我也有一个偏好,重置所有共享的偏好,这是非常有效的.问题是如果你回到ListPreference它仍然显示旧的值.如果您完全退出首选项并返回,则会正确显示.
所以问题是如何强制ListPreference使用正确的值?其他所有偏好似乎都很好.
我确实找到了一个解决方法,但我对它不满意,因为它对我来说似乎很脏.当用户点击重置时,在重置值后,我自己将值设置为已经设置的值.
( (ListPreference) findPreference( myListKey ) ).setValue( String.valueOf( DEFAULT_VALUE ) );
Run Code Online (Sandbox Code Playgroud)
提前致谢.
我认为你应该重写 ListPreference 中的 onSetInitialValue 方法。像这样。
公共类 CustomListPreference 扩展 ListPreference{
protected void onSetInitialValue(布尔恢复值,对象默认值){
//当它已经初始化或者不是你的选项值时 if(restoreValue){
}else{ //将其设置为defaultValue
}
}
}
| 归档时间: |
|
| 查看次数: |
2085 次 |
| 最近记录: |