Не могу понять, как исправить ошибку s == null
я передаю данные между Активити через
mar = Integer.toString(mark);
Intent intent = new Intent(Test1_4.this, Test1_5.class);
intent.putExtra("mark", mar);
startActivity(intent);
на следующем экране получаю через
mar = getIntent().getStringExtra("mark");
и преобразую в int, тк этого требует задание
int mark = Integer.parseInt(mar);
именно на этом месте случается ошибка s == null. Я пробовал передавать не строки, а сразу int, но тогда будет ошибка Attempt to invoke virtual method 'int android.os.Bundle.getInt(java.lang.String)' on a null object reference
Ответы (1 шт):
Автор решения: Arty Morris
→ Ссылка
Перепишите свой код. Совсем не обязательно использовать строку при передаче
// посылка интента
Intent in2 = new Intent("_show_fragment");
in2.putExtra("_name_frag_2", 15.4f);
sendBroadcast(in2);
// принимающая сторона
IntentFilter _frag_intent = new IntentFilter();
_frag_intent.addAction("_show_fragment");
_change_frag = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("_show_fragment")) {
try {
float _name_frag2 = intent.getFloatExtra("_name_frag_2", 0);
} catch (NullPointerException e) {
}
}
}
};
registerReceiver(_change_frag, _frag_intent);
В вашем случае можно использовать
int _name_frag2 = intent.getIntExtra("_name_frag_2", 0);