Как добавить строку в string.xml, используя код Java, в Android? - PullRequest
0 голосов
/ 13 марта 2012

Я создал два объекта EditText в коде Java приложения My android, как

final EditText et1=(EditText)findViewById(R.id.editText1);
final EditText et2=(EditText)findViewById(R.id.editText2);

затем для события onClick () кнопки, называемой методом с параметрами as-

addStringToXmlFile(et1.getText(),et2.getText());

Теперь в определении этого метода ниже, я написал-

private void addStringToXmlFile(Editable editable1,Editable editable2){
        String s1=new String();
        s1=editable1.toString();

        String s2=new String();
        s2=editable2.toString();
}

Проблема в том, что теперь я хочу использовать эти два объекта String s1, s2, чтобы сделать две записи в файле res/values/Strings.xml базы данных, и я не знаю, как это сделать.

Пожалуйста, ведите меня дальше.

Ответы [ 2 ]

1 голос
/ 13 марта 2012

Это невозможно - apk приложения (включая его ресурсы) нельзя изменить во время выполнения.Я не совсем уверен во всех причинах, почему, но одна очевидная вещь, о которой я могу подумать, заключается в том, что R.java должен содержать ссылку на вашу строку, чтобы вы могли получить к ней доступ, и этот файл генерируется компиляторомпри создании APK.

Если вам необходимо сохранить строку в сеансах, вам следует использовать один из нескольких механизмов хранения данных , которые предоставляет Android, например SharedPreferences .

0 голосов
/ 13 марта 2012

Взгляните на использование SharedPreferences для хранения ваших строковых значений.

//Saving your strings
SharedPreferences prefs = this.getSharedPreferences("myPrefsKey", Context.MODE_PRIVATE);
Editor editor = prefs.edit();
editor.putString("s1", s1);
editor.putString("s2", s2);
editor.commit();

//retrieving your strings from preferences
SharedPreferences prefs = this.getSharedPreferences("myPrefsKey", Context.MODE_PRIVATE);
String s1 = prefs.getString("s1", ""); //empty string is the default value
String s2 = prefs.getString("s2", ""); //empty string is the default value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...