【发布时间】:2021-04-05 03:06:43
【问题描述】:
我想在 onCreate 方法中设置我的按钮的文本,但它不起作用。
MainActivity-Class 中的代码:
Button button;
onCreate 中的代码:
button = findViewById(R.id.button);
button.setText("test");
xml 中的按钮:
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:alpha="0.5"
android:background="@color/design_default_color_secondary_variant"
android:onClick="checkPermissions"
android:textSize="30sp" />
这是一个例外:
引起:java.lang.NullPointerException:尝试调用虚拟 方法 'void android.widget.Button.setText(java.lang.CharSequence)' on 空对象引用
我知道我可以在 XML 中设置按钮的文本,但我想通过 sharedpreferences 在应用程序启动时设置文本,但如果我什至不能通过调用它来设置一个简单的字符串,它就行不通简单的方法。
【问题讨论】:
-
你先打电话给
setContentView(your_layout.xml)了吗?否则,您的活动不会有任何视图,findViewById找不到任何东西。 -
是的,但该按钮不在 activity_main.xml 中。它在 fragment_recording.xml 中。
标签: java android button oncreate