[Android] Snackbar

강승구·2023년 3월 4일
0


Snackbar는 간단한 메시지 표현에 사용되는 View이다.
Toast와 달리, Action 구현으로 onClick() 메소드 구현이 가능하다는 특징이 있다.


사용법

dependency 추가

implementation 'com.android.support:design:27.0.0'

기본 snackbar

Snackbar.make(it, "Basic Snackbar", Snackbar.LENGTH_SHORT).show()

Toast와 비슷한 구성이지만 Toast는 첫번째 인자로 Context, Snackbar는 View를 인자로 받는다.

snackbar 버튼 추가

binding.customButton.setOnClickListener {
            Snackbar.make(it, "Custom Snackbar", Snackbar.LENGTH_SHORT).
                    setAction("OK"){
                        //"OK"버튼을 눌렀을 때 구현할 동작 정의
                        Toast.makeText(applicationContext, "Custom Snackbar Action", Toast.LENGTH_SHORT).show()
                    }.
            show()
        }

전체 코드

package com.example.android_snackbar

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.Toast
import com.example.android_snackbar.databinding.ActivityMainBinding
import com.google.android.material.snackbar.Snackbar

class MainActivity : AppCompatActivity() {
    lateinit var binding: ActivityMainBinding
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        binding.basicButton.setOnClickListener {
            Snackbar.make(it, "Basic Snackbar", Snackbar.LENGTH_SHORT).show()
        }

        binding.customButton.setOnClickListener {
            Snackbar.make(it, "Custom Snackbar", Snackbar.LENGTH_SHORT).
                    setAction("OK"){
                        //"OK"버튼을 눌렀을 때 구현할 동작 정의
                        Toast.makeText(applicationContext, "Custom Snackbar Action", Toast.LENGTH_SHORT).show()
                    }.
            show()
        }
    }
}
profile
강승구

0개의 댓글