gpt4 book ai didi

java - 尝试在空对象引用上调用虚拟方法,Radio Group

转载 作者:行者123 更新时间:2023-12-02 10:10:28 24 4
gpt4 key购买 nike

我添加了这个 radio 组及其单选按钮,尽管现在我发现我的整个 radio 组为空?一个非常有趣的事情是,当我在 API 为 22 的设备上运行我的应用程序时,它没有检测到此错误,但是当我在 28API 模拟器上重新运行它时,确实出现了此错误。 这是代码:

radioGroup = findViewById(R.id.radioGroup2);
Rd1= findViewById(R.id.radioButton5);
Rd2= findViewById(R.id.radioButton6);
radioGroup.setOnCheckedChangeListener( new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
if (Rd1.isChecked()) {
attemptLogin();
Intent intent = new Intent(LoginActivity.this, BottomActivity.class);
startActivity(intent);
}else {
if(Rd2.isChecked()) {
attemptLogin();
Intent intent = new Intent(LoginActivity.this, LoginActivity2.class);
startActivity(intent);
}
}

}
} );

这是 XML 代码,我尝试将 RadioGroup View 添加到我的登录 Activity 中,以便将两个按钮放在彼此之上,尽管一旦我这样做了,我立即收到此错误。

<RadioGroup
android:id="@+id/radioGroup2"
android:layout_width="361dp"
android:layout_height="125dp"
android:layout_gravity="bottom"
android:background="@color/licolor"
android:gravity="center"
android:layout_marginTop="20dp"
android:orientation="vertical"
tools:ignore="UselessParent">

<RadioButton
android:id="@+id/radioButton5"
android:layout_width="match_parent"
android:layout_height="45dp"
android:layout_marginTop="16dp"
android:background="@drawable/mybutton"
android:gravity="center"
android:text="@string/register"
android:textColor="#fafafa"
android:textStyle="bold"
android:textSize="19sp"
android:button="@null"/>

<RadioButton
android:id="@+id/radioButton6"
android:layout_width="match_parent"
android:layout_height="45dp"
android:layout_marginTop="16dp"
android:background="@drawable/mybutton"
android:gravity="center"
android:text="@string/login"
android:textColor="#fafafa"
android:textStyle="bold"
android:textSize="19sp"
android:button="@null"/>

</RadioGroup>

出现以下错误:

Attempt to invoke virtual method 'void android.widget.RadioGroup.setOnCheckedChangeListener(android.widget.RadioGroup$OnCheckedChangeListener)' on a null object reference

最佳答案

您的 RadioGroup 有一个 id =“radioGroup2”

android:id="@+id/radioGroup2"

在代码中,您试图找到“radioGroup”

radioGroup = findViewById( R.id.radioGroup );

只需将其更改为:

radioGroup = findViewById( R.id.radioGroup2 );

关于java - 尝试在空对象引用上调用虚拟方法,Radio Group,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55032364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com