Archives
Recent Posts
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Today
Total
관리 메뉴

안드로이드 개발자의 창고

[31일차 Android] FloatingActionButton 본문

Computer/Android

[31일차 Android] FloatingActionButton

Wise-99 2023. 6. 14. 18:02

 

 

 

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT

 

 

 

📖 FloatingActionButton

  • 공중에 띄워져 있는 버튼 용도로 사용한다.

주요 속성

속성 설명
scrCompat FloatingActionButton에 표시할 이미지를 설정

주요 이벤트

속성 설명
click FloatingActionButton을 클릭했을 때 발생

 

 

 

예제 코드

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_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/floatingActionButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginEnd="40dp"
        android:layout_marginBottom="40dp"
        android:clickable="true"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:srcCompat="@android:drawable/ic_input_add" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textAppearance="@style/TextAppearance.AppCompat.Large"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

 

 

 

MainActivity.kt

package com.test.android27_floatingactionbutton

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import com.test.android27_floatingactionbutton.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {

    lateinit var activityMainBinding: ActivityMainBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        activityMainBinding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(activityMainBinding.root)

        activityMainBinding.run {
            floatingActionButton.run {
                setOnClickListener {
                    textView.text = "버튼을 눌렀습니다"
                }
            }
        }
    }
}

코드 리뷰

  • FloatingActionButton을 누르면 textView의 문자열이 "버튼을 눌렀습니다"로 변경된다.

 

 

 

결과