마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 스튜디오 질문입니다!

0 추천

프로그램을 이미 한번 실행하고, 다시 시작함 버튼을 누르면 라디오 버튼까지는 재실행이 = (처음화면 -아무것도 미선택)으로 완성 했는데, 이와 같이 이미지 뷰도 다시 시작했을 때, 처음 실행 화면처럼(사진 없음)을 하고 싶은데, 도저히 모르겠어서 질문을 남깁니다!

 

Androidmanifasts는 밑의 문장 외에는 프로그램 기본 제공으로 사용했습니다!

 

android:theme="@style/Theme.AppCompat.Light.DarkActionBar"

 

 

xml 코드 :

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:padding="20dp" >

<TextView
android:id="@+id/Text1"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="선택을 시작하겠습니까?"
android:textSize="20dp" />

<CheckBox android:id="@+id/ChkAgree"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="시작함"
/>

<TextView android:id="@+id/Text2"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="좋아하는 애완동물은?"
android:textSize="20dp"
android:visibility="invisible" />

<RadioGroup android:id="@+id/Rgroup1"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible" >

<RadioButton android:id="@+id/RdoDog"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="강아지" />

<RadioButton android:id="@+id/RdoCat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="고양이" />

<RadioButton android:id="@+id/RdoRabbit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="토끼" />
</RadioGroup>

<Button
android:id="@+id/BtnOK"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="선택 완료"
android:visibility="invisible" />
<ImageView android:id="@+id/ImgPet"
android:layout_weight="1"
android:layout_width="256dp"
android:layout_height="256dp"
android:visibility="invisible" />

</LinearLayout>

 

 

 

자바 코드 : 

import androidx.appcompat.app.AppCompatActivity;


import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
TextView text1, text2;
CheckBox chkAgree;
RadioGroup rGroup1;
RadioButton rdoDog, rdoCat, rdoRabbit;
Button btnOK;
ImageView imgPet;


@Override

protected void onCreate(Bundle savedInstanceState) {

//rGroup1.clearCheck();
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

setTitle("애완동물 사진 보기");
text1 = (TextView) findViewById(R.id.Text1);
chkAgree = (CheckBox) findViewById(R.id.ChkAgree);

text2 = (TextView) findViewById(R.id.Text2);
rGroup1 = (RadioGroup) findViewById(R.id.Rgroup1);
rdoDog = (RadioButton) findViewById(R.id.RdoDog);
rdoCat = (RadioButton) findViewById(R.id.RdoCat);
rdoRabbit = (RadioButton) findViewById(R.id.RdoRabbit);

btnOK = (Button) findViewById(R.id.BtnOK);
imgPet = (ImageView) findViewById(R.id.ImgPet);

chkAgree.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {


public void onCheckedChanged(CompoundButton arg0, boolean arg1) {






if (chkAgree.isChecked() == true){


text2.setVisibility(android.view.View.VISIBLE);
rGroup1.setVisibility(android.view.View.VISIBLE);
btnOK.setVisibility(android.view.View.VISIBLE);
imgPet.setVisibility(android.view.View.VISIBLE);


}



else {


text2.setVisibility(android.view.View.INVISIBLE);
rGroup1.setVisibility(android.view.View.INVISIBLE);
btnOK.setVisibility(android.view.View.INVISIBLE);
imgPet.setVisibility(android.view.View.INVISIBLE);


}


}





});

btnOK.setOnClickListener(new View.OnClickListener()

{
public void onClick(View arg0) {


int checkRadio = rGroup1.getCheckedRadioButtonId();
if ( checkRadio == R.id.RdoDog )
imgPet.setImageResource(R.drawable.dog);
else if ( checkRadio == R.id.RdoCat)
imgPet.setImageResource(R.drawable.cat);
else if ( checkRadio == R.id.RdoRabbit)
imgPet.setImageResource(R.drawable.rabbit);


else
Toast.makeText(getApplicationContext(), "동물 먼저 선택하세요",
Toast.LENGTH_SHORT).show();




rGroup1.clearCheck(); 
}


});



}

}

살려주세요... 코딩이 어려워요.. (120 포인트) 님이 4월 3일 질문
살려주세요... 코딩이 어려워요..님이 4월 3일 수정

1개의 답변

0 추천
ImageView API를 참조하시면 됩니다.

https://developer.android.com/reference/android/widget/ImageView

Image를 설정하는
setImageDrawable(android.graphics.drawable.Drawable)

와 같은 메소드에 null을 설정해 보세요.
spark (227,830 포인트) 님이 4월 4일 답변
...