我有一個活動需要修改SharedPreferences。IllegalArgumentException,路徑分隔符。該應用程序需要.xml.xml
public class AddingEmail extends ListActivity implements OnClickListener{
private String newMail;
private SharedPreferences prefs;
private PreferenceManager prefMan;
private EditText emailAdd;
private EditText emailDel;
private ArrayList<String> prefList;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.addingemail);
Log.d("On Addig EMAIL ACTIVITY","on Create");
String name = "com.example.daemon3_preferences";
prefs = this.getSharedPreferences(name, MODE_PRIVATE);
這是PreferenceScreen ..
public class PreferencesScreen extends PreferenceFragment{
private final String TAG = "PreferencesScreen";
private Set<String> emails;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG, "OnCreate");
addPreferencesFromResource(R.xml.prefs);
而且我有這樣的錯誤:
java.lang.IllegalArgumentException: File /data/data/com.example.daemon3/shared_prefs/com.example.daemon3_preferences.xml.xml contains a path separator
爲什麼它需要的.xml.xml代替.XML?
您是否在其他地方打開共享首選項,如果可以,您是否可以發佈代碼段?如果沒有,清除你的應用數據,看看你是否仍然得到相同的異常。 – MCeley
你的意思是我編的這個編輯? PreferenceFragment是從資源添加首選項的位置? 我清理了幾次,刪除了應用程序並再次停止。 我在模擬器和實際設備中出現相同的錯誤。 – Alberto
我的意思是,你是否明確地在其他地方調用'getSharedPreferences'? – MCeley