play/Android

안드로이드 스튜디오 연습 3 (이미지 넣기, 화면 구성하기, 토스트 메세지)

카고형 2020. 4. 16. 23:30
728x90


Android studio example


화면 만들기 연습, 기본 이미지 넣기, Toast 메세지

LinearLayout example
화면 만들기 연습


아래 그림 에 순서을 적었습니다.


진행과정은 

  • 첫번째 줄은 연습하는 중이 라 적고 gravity 로 text을 중앙에 오도록 하였고
  • 두번째 줄은 LinearLayout(영역?공간?)을 만들고 그안에  EditText, Space, button 으로 구성 하였고 
<Space
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1">
</Space>
layout_weight 을 사용하여 EditText 와 button 을 양쪽 옆으로 밀었습니다
  • 세번째 줄은 TextView을 width는 부모랑 같게 설정하고 height을 200dp 만큼 공간을 주었습니다.
  • 네번째 줄은 LinearLayout 을 만들고 그안에 button 3개와 Space 을 이용 하여 
         btn - space -btn - space - btn 순 으로 하여 구성 했습니다
  • 다섯번째 줄은 marginTop을 사용하여 위에서 100dp 만큼 뛰어지게 button 을 만들었습니다.





진행 순서는 이런식으로 진행 됩니다 코드는 아래 적어 놓았으니 보시면 됩니다

 ^____^            @
|ㅒㅅㅒ|           @
|\\\\\\\\\\\\\\\|@
|/  |/         \| \|


activity_main

<?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">


    <TextView
        android:id="@+id/tv_id"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="연습 하는중 "
        android:textColor="#DA9126"
        android:textSize="20dp" />


    <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <EditText
            android:id="@+id/et_id"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:hint="입력해주세요.." />


        <Space
        android:layout_width="0px"
        android:layout_height="wrap_content"
        android:layout_weight="1">
        </Space>


        <Button
            android:id="@+id/btn_clk"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:text="누르기" />
    </LinearLayout>
    <TextView
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:text="택스트입력 합니다요~~" />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1번"/>
        <Space
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="2번" />
        <Space
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="3번" />
    </LinearLayout>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        android:text="너무 긴 button"/>


</LinearLayout>




기본 이미지 넣기 와 토스트 메세지



기본 이미지 넣기


밑에 코드 처럼 추가 하시면 가로세로 200dp 되는 기본 이미지가 생성 되고

<ImageView
android:layout_width="200dp"
android:layout_height="200dp"
android:src="@mipmap/ic_launcher"/>

src 에다가 이미지 파일에 경로을 입력하여 불러 오는 겁니다.
코드을 추가 하셨으면 아래 사진과 같이 이미지가 나온것을 확인 할수 있습니다.



다음 으로는 이미지을 눌렀을 때 토스트 메세지가 나오는 걸 해보 겠습니다





Toast 메세지

Toast 메세지는 사용자에게 짧은 메세지 형식이고 정보 전달 하는 팝업을 의미함  

일단 ImageView 을 아래와 같이 바꾸어 줍니다
<ImageView
android:id="@+id/toast_msg"
android:layout_width="200dp"
android:layout_height="200dp"
android:src="@mipmap/ic_launcher"/>

id을 추가 했습니다 id는 toast_msg 로 하구

MainActivity 로넘어 갑니다 

toast 부분은 형광색으로 표시 하였습니다 

아래의 코드을 보시죠.


MainActivity
package com.example.edittext;


import androidx.appcompat.app.AppCompatActivity;


import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;


public class MainActivity extends AppCompatActivity {


    EditText et_id;
    Button btn_clk;
    TextView tv_id;
    ImageView toast_msg;




    @Override
    protected void onCreate(Bundle savedInstanceState) {// 메인느낌
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv_id = findViewById(R.id.tv_id);
        et_id = findViewById(R.id.et_id);
        toast_msg = (ImageView) findViewById(R.id.toast_msg);
        btn_clk = findViewById(R.id.btn_clk);


        btn_clk.setOnClickListener(//누르기 버튼 클릭시
                new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                et_id.setText("cago형"); //setText 는 글씨 넣는거
                btn_clk.setText("뷁");
                tv_id.setText("$$누르기 성공$$");


            }
        });
        toast_msg.setOnClickListener(new View.OnClickListener() { //이미지 클릭시
            @Override
            public void onClick(View v) {

                    //팝업 형식으로 이미지 클릭이라고 뜸 .show 을 해야 보여짐
                Toast.makeText(getApplicationContext(), "이미지을 클릭", Toast.LENGTH_LONG).show(); // "이미지 클릭" 이라고 뜸


            }
        });
    }
}

코드을 다 작성 하셨다면

아래의 사진과 같이 toast 메세지가 생성된 것을 확인 할수있습니다. 



 ^____^            @
|ㅒㅅㅒ|           @
|\\\\\\\\\\\\\\\|@
|/  |/         \| \| 끝



728x90