Android Studio: поэтому я очень просто пытаюсь изменить фоновое изображение своей активной деятельности «Главная страница потока», которая не является моей основной деятельностью, нажав кнопку в этом действии «Главная страница потока».Это должна быть одна строка кода, однако, что бы я ни пытался, я получаю исключение Метод не найден.Даже если я попытаюсь изменить цвет фона, он не будет работать.
public class StreamPageMain extends Activity {
public void changeBackgroundOfStreamPage(){
StreamPageMain.this.findViewById(android.R.id.content).setBackgroundResource(R.drawable.streaming_background_grey);
//this.findViewById(android.R.id.content).setBackgroundColor(Color.BLACK);
//ConstraintLayout mConstraintLayout = (ConstraintLayout)findViewById(R.id.constraintLayout);
//mConstraintLayout.setBackgroundResource(R.drawable.streaming_background_grey);
}
}
На всех этих трех опциях я получаю одно и то же исключение.Идентификатор моего ограничения Layout в XML-файле - constraintLayout, и кнопка onclick настроена для запуска метода changeBackgroundOfStreamPage () - там нет опечатки, я скопировал название метода.
Нет замечаний от Androidстудия в коде.Я предполагаю, что это как-то связано с таргетингом на constraintLayout / активность, но я не понимаю, почему «это».не делает трюк ...
это исключение:
05-24 11:28:03.646 5776-5776/comn.example.ezio.streamingapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: comn.example.ezio.streamingapp, PID: 5776
java.lang.IllegalStateException: Could not find a method changeBackgroundOfStreamPage(View) in the activity class comn.example.ezio.streamingapp.StreamPageMain for onClick handler on view class android.widget.Button with id 'button4'
at android.view.View$1.onClick(View.java:4015)
at android.view.View.performClick(View.java:4788)
at android.view.View$PerformClick.run(View.java:19896)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5258)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: java.lang.NoSuchMethodException: changeBackgroundOfStreamPage [class android.view.View]
at java.lang.Class.getMethod(Class.java:661)
at java.lang.Class.getMethod(Class.java:640)
at android.view.View$1.onClick(View.java:4008)
at android.view.View.performClick(View.java:4788)
at android.view.View$PerformClick.run(View.java:19896)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5258)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)