आप किसी कार्रवाई को
Snackbar
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
ताकि लोग आपके मैसेज का जवाब दे सकें. ऐसा करने पर,
Snackbar
मैसेज टेक्स्ट के बगल में एक बटन लगाता है और उपयोगकर्ता यह काम कर सकता है
कार्रवाई को ट्रिगर करने के लिए, इस बटन पर टैप करें. उदाहरण के लिए, कोई ईमेल ऐप्लिकेशन
"ईमेल संग्रहित किया गया" पर पहले जैसा करें बटन दिखाई देगा. अगर उपयोगकर्ता
पहले जैसा करें बटन पर क्लिक करता है, तो ऐप्लिकेशन ईमेल को वापस संग्रह से बाहर ले जाता है.
Snackbar
मैसेज में कोई कार्रवाई जोड़ने के लिए, लिसनर ऑब्जेक्ट तय करें
जो लागू करता है
View.OnClickListener
इंटरफ़ेस पर कॉपी करने की सुविधा मिलती है. सिस्टम, आपके लिसनर को
onClick()
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
मैसेज की कार्रवाई पर टैप करता है. उदाहरण के लिए, यह स्निपेट
पहले जैसा करने की कार्रवाई के लिए लिसनर:
Kotlin
class MyUndoListener : View.OnClickListener { fun onClick(v: View) { // Code to undo the user's last action. } }
Java
public class MyUndoListener implements View.OnClickListener { @Override public void onClick(View v) { // Code to undo the user's last action. } }
इनमें से किसी एक का इस्तेमाल करें
setAction()
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
लिसनर को Snackbar
में जोड़ने के तरीके. अपनी फ़ाइल को अटैच करें
आपके कॉल करने से पहले लिसनर
show()
,
जैसा कि इस कोड सैंपल में दिखाया गया है:
Kotlin
val mySnackbar = Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.email_archived, Snackbar.LENGTH_SHORT) mySnackbar.setAction(R.string.undo_string, MyUndoListener()) mySnackbar.show()
Java
Snackbar mySnackbar = Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.email_archived, Snackbar.LENGTH_SHORT); mySnackbar.setAction(R.string.undo_string, new MyUndoListener()); mySnackbar.show();
SnackbarHost
,
जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:
Kotlin
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { DACPlaygroundTheme { val snackbarHostState = remember { SnackbarHostState() } val scope = rememberCoroutineScope() Scaffold( snackbarHost = { SnackbarHost(snackbarHostState) }, content = { padding -> Button( modifier = Modifier.padding(padding), onClick = { scope.launch { snackbarHostState.showSnackbar( message = "1 item removed", actionLabel = "UNDO", duration = SnackbarDuration.Short ).run { when (this) { Dismissed -> Log.d("SNACKBAR", "Dismissed") ActionPerformed -> Log.d("SNACKBAR", "UNDO CLICKED") } } } } ) { Text("Show snackbar") } } ) } } }