Do it! 안드로이드앱 프로그래밍 도전과제 05
두 개의 버튼을 화면에 추가하고
버튼 모양을 각각 다르게 보이도록 만들기
① 화면에 두 개의 버튼을 추가합니다.
② 첫 번째 버튼의 모양은 가장자리에 경계선만 보이도록하고 경계선과 글자색이 동일하도록 만듭니다.
③ 두 번째 버튼의 모양은 배경색이 있고 모서리는 약간 둥글며 글자가 하얀색이 되도록 만듭니다.
※ 참고할 점
드로어블 객체를 만들어 버튼의 배경으로 설정하면 버튼의 모양을 만들 수 있습니다.
드로어블을 XML로 정의할 때 버튼의 모양이 결정됩니다.
[ CODE ]
<activity_main.xml>
<?xml version="1.0" encoding="UTF-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
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_height="match_parent"
android:layout_width="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:textStyle="bold"
android:textSize="24sp"
android:textColor="#F26722"
android:text="버튼 1"
android:paddingBottom="10dp"
android:paddingRight="30dp"
android:paddingTop="10dp"
android:paddingLeft="30dp"
android:background="@drawable/linear_border"
android:layout_marginTop="148dp" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintEnd_toEndOf="parent"
android:textStyle="bold"
android:textSize="24sp"
android:textColor="#FFFFFF"
android:text="버튼 2"
android:paddingBottom="10dp"
android:paddingRight="30dp"
android:paddingTop="10dp"
android:paddingLeft="30dp"
android:background="@drawable/filled_border"
android:layout_marginTop="76dp"
app:layout_constraintTop_toBottomOf="@+id/button"/>
</androidx.constraintlayout.widget.ConstraintLayout>
[drawable]
<filled_border.xml>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#ff0000"/>
<corners
android:radius="15dp"/>
</shape>
<linear_border.xml>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:color="#ff0000" android:width="3dp"/>
<solid android:color="#00000000"/>
</shape>
<MainActivity.java>
package com.example.mission05;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
<실행화면>
'STUDY > 안드로이드' 카테고리의 다른 글
[Android] Do it! 안드로이드 도전08세 개 이상의 화면 만들어 전환하기 (0) | 2023.09.16 |
---|---|
[안드로이드앱] 로그인 화면과 메뉴 화면 전환하기 (46) | 2023.09.13 |
[안드로이드앱] 시크바와 프로그레스바 보여주기 (67) | 2023.09.10 |
[안드로이드앱] SMS 입력화면 만들고 글자의 수 표시하기 (66) | 2023.09.02 |
[Do it!안드로이드앱 프로그래밍] 도전미션_03 (29) | 2023.09.01 |