본문 바로가기
Adroid Studio

Android Studio_안드로이드 스튜디오 앱 만들기2_기본 사용예제(라디오버튼,이미지삽입)

by 디디찐 2022. 8. 19.
반응형

 

첫 페이지

EditText ,Button2ro, RadioGroup, RadioButton 2개, Image View로 위젯 구성하였다.

 

◼안드로이드 스튜디오  activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity"
    android:gravity="center_horizontal">

    <EditText
        android:id="@+id/editText1"
        android:layout_width="match_parent"
        android:layout_height = "wrap_content"
        ></EditText>

    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="글자 나타내기"></Button>

    <Button
        android:id="@+id/button2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="홈페이지 열기"></Button>

    <RadioGroup
        android:id="@+id/radio_group"
        android:layout_width="wrap_content"
        android:layout_height="117dp"
        android:orientation="vertical">

        <RadioButton
            android:id="@+id/radio_Btn1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginEnd="10dp"
            android:text="11.0(R)"></RadioButton>

        <RadioButton
            android:id="@+id/radio_Btn2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginEnd="10dp"
            android:checked = "true"
            android:text="12.0(S)"></RadioButton>
    </RadioGroup>

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="397dp"
        android:layout_height="393dp"
        tools:srcCompat="@drawable/sss" />


</LinearLayout>

✅ RadioButton은 반드시 RadioGroup안에 작성하기!!

✅위젯 정렬 하는 방법

android:orientation = "vartical / horizontal"    

vartical / horizontal

✅위젯에 텍스트 넣는 2가지 방법

✔  activity_mail.xml 에서 android:text="텍스트를 넣으십시오 "를 넣어준다.

 

✔ [activity_mail.xml] 에서 android:text="@string/stringId"으로 하여 

    [strings.xml] 에서 <string name="stringId">텍스트를 넣으십시오</string> 를 넣어준다.

 

✅이미지 넣는 방법

1. 이미지 파일을 [res]-[drawable] 에 복붙해준 후

2. <Imageview></ImageView>에 아래와 같이 경로를 넣어준다.

tools:srcCompat="@drawable/이미지파일명"

 

◼안드로이드 스튜디오  MainActivity.java


package com.androidpark.baseapp;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    EditText editText1;
    Button button1, button2;
    RadioGroup radio_group;
    RadioButton radio_Btn1,radio_Btn2;
    ImageView imageView1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        editText1 = (EditText)findViewById(R.id.editText1);
        button1 = (Button) findViewById(R.id.button1);
        button2 = (Button) findViewById(R.id.button2);
        radio_group = (RadioGroup)findViewById(R.id.radio_group);
        radio_Btn1 = (RadioButton)findViewById((R.id.radio_Btn1));
        radio_Btn2 = (RadioButton)findViewById((R.id.radio_Btn2));
        imageView1 = (ImageView)findViewById(R.id.imageView1);

//      button1 클릭시 EditText에 입력한 글자가 토스트메세지로 출력된다.
//      getText().toString() => String객체로 Text를 리턴
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(getApplicationContext(),editText1.getText().toString(),Toast.LENGTH_SHORT).show();
            }
        });
//      button2 클릭시 google 홈페이지로 이동되도록 한다.
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://google.com"));
                startActivity(mIntent);
            }
        });
//      라디오 버튼에 따라 체크 시 이미지가 변경되도록 조건문 적용
        radio_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int i) {
                if(i == R.id.radio_Btn1){
                    imageView1.setImageResource(R.drawable.img);
                }else{
                    imageView1.setImageResource(R.drawable.sss);
                }
            }
        });

    }
}

✅실행 결과

반응형