2017-01-10 20 views
-4

В моем приложении я взял два текстовых поля, как в этом picture. Одно текстовое поле для имени типа «mr.x» другое - это как день рождения.Android-программирование broadcastreceiver

Я спасаю имя данных и цели, используя широковещательный приемник с помощью следующего кода:

public void saveinfo(View view) { 
     SharedPreferences sp = getSharedPreferences("alarmatspecifictime", Context.MODE_PRIVATE); 
     SharedPreferences.Editor editor = sp.edit(); 
     editor.putString("name", nameinput.getText().toString()); 
     editor.putString("purpose",spinner.getSelectedItem().toString()); 
     editor.apply(); 
     makeText(this, "saved", LENGTH_LONG).show(); 

    } 

Теперь я хочу уведомительное сообщение, используя сохраненные данные, такие как "Today is mr.x Birthday" из класса приемника широковещательной передачи. Как мне это сделать?

+0

А что именно ваш вопрос? Это не понятно. –

+0

Я взял два текстовых поля, одно из них, и другое предназначено для цели. Я взял некоторые данные spineer. Я сохраняю имя и цель в моей sharedpreference. Теперь я хочу получить данные из класса broadcastreceiver и хочу использовать его здесь. setContentText(). в классе уведомлений. – rabiul

ответ

0

Я думаю, что вы только не хватает небольшой кусочек:

String restoredText; 
String restoredname; 

public void addNotification(Context context) { 
    getPref(context); 
    String myString = restoredText + " " + restoredname; 
    ... 
    .setContentText(myString) 
    ... 
} 

public void getPref(Context context) { 
    restoredText = sp.getString("purpose", ""); 
    restoredname = sp.getString("name", ""); 
} 
0

Что именно вы хотите здесь сделать, это очень неясно, а также код, который вы поделили, не имеет смысла напрямую.

Тем не менее, если вы используете Spinner, то, возможно, есть более одного элемента, поэтому может возникнуть проблема в том, что вы используете параметр «Поделиться», чтобы сохранить все элементы в клавишах «цель» и «имя».

Sharedpreferences переопределяет, когда данные с тем же ключом вставлены. Поэтому каждый раз, когда вы используете sp.putString («name»,); предыдущее значение будет перезаписано, и у вас будет только новое значение.

Для лучшего и правильного ответа, пожалуйста, перефразируйте свой запрос кода.

Смежные вопросы