我现在正在为我的应用创建首选项页面
在API-14之后,可以使用switchpreference.我想用它来取代API14 +设备上的checkboxpreference
它易于使用res/xml并res/xml-14获得正确的xml资源
但是,在编码部分,根据API切换偏好并不方便.
public class SettingActivity extends PreferenceActivity {
private CheckBoxPreference enable;
private SwitchPreference enablev14;
@Override
protected void onCreate(Bundle savedInstanceState) {
addPreferencesFromResource(R.xml.setting);
if (Build.VERSION.SDK_INT < 14)
enable = (CheckBoxPreference) findPreference(key_enable);
else
enablev14 = (SwitchPreference) findPreference(key_enable);
}
...
}
Run Code Online (Sandbox Code Playgroud)
现在我的方法是使用if子句检查Build.VERSION并获取相应的对象来处理它.但是管理代码非常不方便.有人有更聪明的方法吗?
我正在编写一个应用程序,以在手机锁定且屏幕关闭时在锁定屏幕上显示活动。当用户离开活动时,应显示键盘保护。检测手机是否锁定的常用方法是通过接收器和ACTION.SCREEN_OFF。 如果用户按锁定按钮将锁定和屏幕关闭,则效果非常好。然而,ICS之后,手机可能不会在屏幕关闭时立即锁定。
那么,如何获取锁定事件或者如何获取如下图所示的自动锁定的值呢?
我知道inKeyguardRestrictedInputMode()有一种方法可以检查手机是否已锁定。但它不能像接收器一样在手机锁定时自动报告。