Snackbar는 간단한 메시지 표현에 사용되는 View이다.
Toast와 달리, Action 구현으로 onClick() 메소드 구현이 가능하다는 특징이 있다.
implementation 'com.android.support:design:27.0.0'
Snackbar.make(it, "Basic Snackbar", Snackbar.LENGTH_SHORT).show()
Toast와 비슷한 구성이지만 Toast는 첫번째 인자로 Context
, Snackbar는 View
를 인자로 받는다.
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()
}
}
}