예전에 자바로 구현해보았던 부분이지만 다시 만들어보니 생각보다 시간이 좀 걸렸다..

 

1. build.gradle의 dependencies에 코드를 추가한다.

 

dependencies {

    implementation 'com.google.android.material:material:1.2.1'

}

 

2. Floating Action Button을 추가하고자 하는 xml의 버튼 디자인 중 해당 버튼을 찾아 추가해준다.

 

<com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="60dp"
        android:layout_height="60dp"
        app:fabCustomSize="60dp"
        android:clickable="true"
        android:focusable="true"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.919"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.937"
        app:srcCompat="@drawable/add" />

여기서 보통은 백그라운드 이미지가 제대로 중앙에 오지 않을 것이다. 이때!

app:fabCustomSize="60dp"

width와 height 크기에 맞추어 위의 dp를 조절해 코드를 추가해주면 해결이 된다ㅎㅎ

 

 

3. 버튼을 추가한 xml을 사용하는 액티비티로 가서 새로운 액티비티를 열어주는 버튼 클릭 리스너 코드를 추가한다.

 

package com.example.desktop.mymo

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import com.google.android.material.snackbar.Snackbar

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val fab: View = findViewById(R.id.fab)		// 버튼 객체 생성
        fab.setOnClickListener {					// 클릭 리스너 생성
            val intent = Intent(this, EditActivity::class.java)	//인텐트 생성
            startActivity(intent)				//새로운 액티비티 시작
        }
    }
}

위의 과정을 거치면

 

<화면 캡처>

위와 같은 FAB를 만들 수 있다.

 

다음 번엔 버튼 색깔 및 버튼 눌렀을 때 여러개의 버튼이 나오는 방법에 대해 공부를 해봐야겠다..

+ Recent posts