상세 컨텐츠

본문 제목

[안드로이드] 버튼 숨김(INVISIBLE), 보여짐(VISIBLE), 사라짐(GONE) 만들어 보기

안드로이드

by aries574 2021. 1. 2. 16:02

본문


2021/01/01 - [안드로이드] - [안드로이드] 텍스트(EditText) 입력 체크 및 버튼(Button) 활성화


이번 시간에는 버튼의 상태를 보여지거나, 숨기거나, 사라지게 하는 VISIBLE 속성을 알아보는 

예제를 만들어 보겠습니다.

3개의 버튼을 생성하고, 중간에 있는 버튼2를 숨기거나, 사라지거나, 다시 보여지게 하는 간단한 예제입니다. 

처음에는 버튼 기본이 보여지기 때문에 보여짐 버튼은 비활성화 시켰고, 숨김이나, 사라짐 버튼을 누르면 

보여짐 버튼은 활성화 됩니다.


1. 메인화면 구현(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">


<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@color/colorPrimary">

<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="버튼1" />

<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="버튼2" />

<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="버튼3" />
</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:orientation="horizontal"
android:background="@color/colorPrimary">

<Button
android:id="@+id/btn_visible"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="보여짐"/>

<Button
android:id="@+id/btn_inVisible"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="숨김"/>

<Button
android:id="@+id/btn_gone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="사라짐"/>
</LinearLayout>

</LinearLayout>


2. 메인코드 구현(MainActivity.java)


import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

Button button2;
Button btn_visible; //숨김
Button btn_invisible; //보여짐
Button btn_gone; //사라짐

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

button2 = findViewById(R.id.button2);
btn_visible = findViewById(R.id.btn_visible);
btn_invisible = findViewById(R.id.btn_inVisible);
btn_gone = findViewById(R.id.btn_gone);

//비활성화
btn_visible.setEnabled(false);

//숨김
btn_invisible.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

button2.setVisibility(button2.INVISIBLE);
btn_visible.setEnabled(true);
}
});

//사라짐
btn_gone.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

button2.setVisibility(button2.GONE);
btn_visible.setEnabled(true);
}
});

//보여짐
btn_visible.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

button2.setVisibility(button2.VISIBLE);
btn_visible.setEnabled(false);
}
});

}
}


3. 실행화면


보여짐



숨김





사라짐



반응형

관련글 더보기

댓글 영역