假设我创建了一个共享偏好。
sp = this.getSharedPreferences("name",MODE_PRIVATE);
如果我在另一个活动中,有没有办法可以找到 sp 的名称并将其设置为字符串?
假设我创建了一个共享偏好。
sp = this.getSharedPreferences("name",MODE_PRIVATE);
如果我在另一个活动中,有没有办法可以找到 sp 的名称并将其设置为字符串?
您可以使用您使用的相同方法访问共享首选项。使用公共静态变量来保存类中的名称。
使用常数。一个public final static String NAME = "the_name";
。然后你总是可以将它引用为NameOfTheClassWhereYouPutIt.NAME
如果您希望在另一个活动中引用给定的共享首选项,您可以在创建新活动时通过其 Intent 将该首选项的字符串键传递给新活动。
如果您只是需要在任何活动中找到某个偏好,您可以遍历所有偏好,并以这种方式访问所有键(和值)。
假设您的共享首选项位于变量mySharedPreferences中,获取所有键和值的示例如下:
Map<String,?> preferenceMap = mySharedPreferences.getAll();
for ( Map.Entry<String, ?> keyValPair : preferenceMap.entrySet() )
{
String key = keyValPair.getKey(); // this is your preference name
String val = keyValPair.getValue(); // this is your preference value
}