반응형
<dimen.xml>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="activity_horizontal_margin">16dp</dimen> //16dp의 여백을 부여할 수 있는
<dimen name="activity_vertical_margin"을 만듦>16dp</dimen> //"activity_horizontal_margin","activity_vertical_margin"을 만듦
<dimen name="wide_size">40px</dimen>
</resources>
<mainactivity.xml>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin" //위,아래,좌,우의 패딩을 16dp씩 부여
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity"> //메인 Activity 설정
<TextView /
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true" 부모컨테이너의 좌측이며 위쪽으로 맞춤
android:layout_alignParentTop="true"
android:text="현재 사용중인 안드로이드 버전은"
android:textAppearance="?android:attr/textAppearanceLarge" //텍스트의 모양을 대형크기의 텍스트로 표시
/>
<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true" //부모컨테이너의 좌측에 맞춤
android:layout_below="@+id/textView1"> //textView1아래에 배치
<RadioButton
android:id="@+id/radio0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="2.3.3"/>
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="4.1"/>
<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="4.4"/>
</RadioGroup>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/radioGroup1" //라디오그룹 밑이며 좌측에 맞춤
android:layout_below="@+id/radioGroup1"
android:text="display image"/>
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_below="@+id/button1"
android:layout_marginTop="48dp"//내부여백의 윗부분을 48dp로 여백설정
android:src="@drawable/image2"/>
</RelativeLayout>
<MainActivity.java>
package com.example.a5_homework3;
import androidx.appcompat.app.AppCompatActivity;
import android.media.Image;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
public class MainActivity extends AppCompatActivity {
RadioGroup radioGroup;
RadioButton button1,button2,button3;
Button button;
ImageView image;
//무명클래스
View.OnClickListener radio_listener = new View.OnClickListener() {
@Override
public void onClick(View view) {
switch (radioGroup.getCheckedRadioButtonId())//라디오그룹의 체크되어있는 부분에 따라
{
//각 라디오버튼의 그림이 나오게함
case R.id.radio0:
image.setImageResource(R.drawable.image0);
break;
case R.id.radio1:
image.setImageResource(R.drawable.image1);
break;
case R.id.radio2:
image.setImageResource(R.drawable.image2);
break;
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setTitle("Servey"); //어플이름 설정
//mainactivity.xml에 설정된 뷰 가져옴
radioGroup = (RadioGroup) findViewById(R.id.radioGroup1);
button1 = (RadioButton) findViewById(R.id.radio0);
button2 = (RadioButton) findViewById(R.id.radio1);
button3 =(RadioButton) findViewById(R.id.radio2);
//버튼에 클릭리스너 세팅
button1.setOnClickListener(radio_listener);
button2.setOnClickListener(radio_listener);
button3.setOnClickListener(radio_listener);
button =(Button) findViewById(R.id.button1);
image =(ImageView) findViewById(R.id.imageView1);
}
}
<출력화면>
반응형
'안드로이드' 카테고리의 다른 글
[안드로이드] 온도변환기 앱 (1) | 2019.10.12 |
---|---|
[안드로이드]이벤트 처리 방법 (0) | 2019.10.07 |
[안드로이드] 사용자 인터페이스 기초 (0) | 2019.10.07 |
[안드로이드] 안드로이드 기초사항 (0) | 2019.10.07 |
[Android] 멀티 터치 (Multi Touch) (0) | 2019.10.07 |
댓글