Я пытаюсь сделать приложение, где оно контролирует аспекты сада. Изменение температуры, влажности, ветра и т. Д. Прямо сейчас я начинаю с температуры, и я не понимаю, что я делаю не так, здесь - мой код. Это фрагмент термометра, и он должен отправлять данные в домашний фрагмент и определить число, которое было введено пользователем, должен включить тепло или охладить сад < /p>
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_thermometer, container, false);
Button enter = view.findViewById(R.id.btTemp);
enter.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
EditText degrees = view.findViewById(R.id.nmDegrees);
Bundle onOrOff = new Bundle();
onOrOff.putInt("df1", Integer.parseInt(degrees.getText().toString()));
getParentFragmentManager().setFragmentResult("dataFromThermometer", onOrOff);
degrees.setText("");
}
});
return view;
}
}
//this is the home fragment
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_home, container, false);
// Inflate the layout for this fragment
getParentFragmentManager().setFragmentResultListener("dataFromThermometer", this, new FragmentResultListener() {
@Override
public void onFragmentResult(@NonNull String requestKey, @NonNull Bundle onOrOff) {
int temP = onOrOff.getInt("df1");
TextView temp = view.findViewById(R.id.tvTemp);
if(temP < 72){
temp.setText("Heat On!");
}
if(temP > 72) {
temp.setText("Cool Off");
}
}
});
return view;
}
}
< /code>
Я пробовал восстановить файлы Gradle, но мое приложение продолжает закрываться, когда я нажимаю кнопку.2025-03-10 22:44:21.775 27891-27891/com.example.weathergarden E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.weathergarden, PID: 27891
java.lang.NullPointerException: Attempt to invoke virtual method 'android.text.Editable android.widget.EditText.getText()' on a null object reference
at com.example.weathergarden.ThermometerFragment$1.onClick(ThermometerFragment.java:82)
at android.view.View.performClick(View.java:8033)
at com.google.android.material.button.MaterialButton.performClick(MaterialButton.java:1131)
at android.view.View.performClickInternal(View.java:8010)
at android.view.View.-$$Nest$mperformClickInternal(Unknown Source:0)
at android.view.View$PerformClick.run(View.java:31336)
at android.os.Handler.handleCallback(Handler.java:991)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8787)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:591)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:871)
2025-03-10 22:44:21.793 27891-27891/com.example.weathergarden I/Process: Sending signal. PID: 27891 SIG: 9
Подробнее здесь: https://stackoverflow.com/questions/794 ... -closes-th
Попытка отправить данные в другой фрагмент, но когда я нажимаю кнопку, она закрывает приложение ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение