본문 바로가기

자린고비 독학하기/자린고비 코딩하기

Android Studio - FrameLayout

반응형



<?xml version="1.0" encoding="utf-8"?>
<FrameLayout 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:paddingLeft="16dp"
    android:paddingTop="16dp"
    android:paddingRight="16dp"
    android:paddingBottom="16dp"

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Push Button"
        android:id="@+id/btnPush"
        android:layout_gravity="left|top"

        />

        <ImageView
            android:layout_width="300dp"
            android:layout_height="wrap_content"
            android:id="@+id/ivImage"
            android:layout_gravity="left|top"
            android:src="@drawable/img08"
            <-- drawable 폴더 안에 있는 img08 -->
            
            />


</FrameLayout>

 

 

 



package com.tistory.jaringobi.layout08;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

import androidx.appcompat.app.AppCompatActivity;

import static android.view.View.*;

public class MainActivity extends AppCompatActivity {

    Button btn;
    ImageView ivImage;

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

         btn =  (Button)findViewById(R.id.btnPush);
         ivImage =(ImageView)findViewById(R.id.ivImage);
                // 객체화되어진 ivImage의 참조값, 문제가 생길 수도 있어서 타입 캐스팅해 줌

        ivImage.setVisibility(View.INVISIBLE);
        // 첫 화면에서 ivImage가 안 보여지게 만든다

        btn.setOnClickListener(new OnClickListener(){
			// btn에 클릭이 일어나게 되면
            @Override
            public void onClick(View view) {
			// 오버라이드
                if(ivImage.getVisibility()==View.VISIBLE){
                // 이미지가 현재 보여지는 상태라면
                    ivImage.setVisibility(View.INVISIBLE);
                    // 눌렸을 대 안 보여지게
                }else{
                    ivImage.setVisibility(View.VISIBLE);
                    // 보여지게
                }

            }
        });

    }
}
반응형