我在一个类中(这个类没有继承Activity)使用SharedPreferences,
public class UserModel implements IUserModel{
@Override
public void setName(String name) {
}
@Override
public void setPassword(String password) {
}
@Override
public UserBean getUserBean(String name) {
return null;
}
private void build() {
//_1_建立相应的对象
SharedPreferences p ;
SharedPreferences.Editor e ;
//_2_绑定到具体的文件
p = getSharedPreferences("example", MODE_PRIVATE) ;
e = p.edit() ;
// 未完成。。。。。
}
}
发现build方法里面的getSharedPreferences是红色的,就是不能调用。。。郁闷了
然后我把这个类继承了Activity,然后就可以了。。。
这个是为什么。。。求大神解答。。。
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
因为每个 app 的 SharedPreferences 是独立的,所以自然需要指定
Context才可以getSharedPreferences。你可以把
Context传进来,然后用context.getSharedPreferences。