【发布时间】:2020-10-31 04:51:29
【问题描述】:
我知道这是一个简单的问题,但我是初学者,我有这个家庭作业 必须在单击单选按钮时显示图像,但他们没有教我们任何相关信息 因为冠状病毒,所以如果有人能告诉我该怎么做,我将不胜感激。
【问题讨论】:
-
您正在开发什么编程语言/框架?到目前为止你尝试了什么?在此处添加一些代码。
标签: android-studio radio-button
我知道这是一个简单的问题,但我是初学者,我有这个家庭作业 必须在单击单选按钮时显示图像,但他们没有教我们任何相关信息 因为冠状病毒,所以如果有人能告诉我该怎么做,我将不胜感激。
【问题讨论】:
标签: android-studio radio-button
为了创建两个带有简单图像的单选按钮,并在选中其中一个单选按钮时控制图像的可见性,我将在java 中提供一些简单的步骤来构建它。
新建一个空活动项目后:
转到activity_main.xml这是布局文件,我将创建带有图像的线性布局,单选组包含两个单选按钮,我使用imageview android:src属性作为颜色(您可以将其更改为图像):
<ImageView
android:id="@+id/imageView"
android:layout_width="200dp"
android:layout_height="200dp"
android:src="@color/colorPrimary"
android:text="Hello World!"
android:visibility="gone" />
<RadioGroup
android:id="@+id/radioGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:orientation="horizontal">
<RadioButton
android:id="@+id/radio_button_choice1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="choice-1" />
<RadioButton
android:id="@+id/radio_button_choice2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="choice-2" />
</RadioGroup>
其次,我们需要转到名为MainActivity的java文件,这是一个java文件,我们将获取视图并在RadioGroup上创建一个监听器,我们将使用它来显示和隐藏图像(一些cmets帮助你理解java代码):
package com.your.packagename.here;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.RadioGroup;
public class MainActivity extends AppCompatActivity {
private ImageView image;
private RadioGroup radioGroup;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//intit views
image = findViewById(R.id.imageView);
radioGroup = findViewById(R.id.radioGroup);
//create the listener for radio group
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int i) {
//check if the choice-1 is selected
if (radioGroup.getCheckedRadioButtonId() == R.id.radio_button_choice1) {
//show image wen select choice-1
image.setVisibility(View.VISIBLE);
} else {
//hide image when choice-1 not selected
image.setVisibility(View.GONE);
}
}
});
}
}
最后,你会得到类似的结果。
希望对你有所帮助。
【讨论】: