|
Muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti urganch filiali mobil ilova yaratish
|
bet | 6/7 | Sana | 19.05.2024 | Hajmi | 239,8 Kb. | | #243587 |
Bog'liq ANDROID NOTIFICATIONSAction bilan moslashtirish.
PendingIntent-dan foydalanib notification-dan action-larni qanday boshlashni bilganingizdan so’ng, siz boshqa ko’p narsalarni qilishingiz mumkin.
Buning uchun sizga ikkita asosiy narsa kerak bo’ladi : jarayonni ishga tushiradigan PendingIntent (service yoki broadcast), so’ngra bu intent-ni notification builder-ga icon-ni oladigan addAction() metodlari orqali uzatiladi.
Namuna :
val deleteIntent = Intent(this, DeleteBroadcastReceiver::class.java).apply {
action = ACTION_DELETE
putExtra(EXTRA_EMAIL_ID, EMAIL_ID)}
val deletePendingIntent: PendingIntent = PendingIntent.getBroadcast(this, 0, deleteIntent, 0)
val builder = NotificationCompat.Builder(this, PRIMARY_CHANNEL_ID).apply {
setSmallIcon(R.drawable.ic_android)
setContentTitle("Notification Article")
setContentText("Learn How To Manage And Display Notifications in Android")
setPriority(NotificationCompat.PRIORITY_DEFAULT)
setContentIntent(pendingIntent)
addAction(R.drawable.ic_delete, "Delete", deletePendingIntent)}
Kengaytiriladigan notification-lar.
Agar siz oddiy oʻlchamdagi notification-ga (masalan, elektron pochta xabarlari) juda katta matnni koʻrsatishga yoki ilovaga kirishdan oldin foydalanuvchi koʻrmoqchi boʻlgan katta rasmni koʻrsatishga harakat qilmoqchi boʻlsangiz, notification-ni kengaytirish imkoniyatini yaratishingiz mumkin.
Bunga erishish usuli notification-ga style qo’shish, asosan BigPictureStyle'>BigTextStyle yoki BigPictureStyle qo’shish orqali amalga oshiriladi. Bu ko’rsatmoqchi bo’lgan narsangizga qarab notification-lar kengaytirilishini boshqarish uchun oldindan belgilangan xatti-harakatlarga ega oldindan belgilangan uslublardir.
Ushbu style-larni qo’shish setStyle metod orqali amalga oshiriladi, bu sizga ma’lum bir style-ni xohlayotgan builder obyektiga ko’rsatish imkonini beradi.
BigTextStyle yordamida siz ko’rsatmoqchi bo’lgan matnni quyidagi qismdagi kabi qo’shishingiz mumkin :
var notification = NotificationCompat.Builder(context, CHANNEL_ID)
.setSmallIcon(R.drawable.new_mail)
.setContentTitle(emailObject.getSenderName())
.setContentText(emailObject.getSubject())
.setLargeIcon(emailObject.getSenderAvatar())
.setStyle(NotificationCompat.BigTextStyle()
.bigText(emailObject.getSubjectAndSnippet()))
.build()
BigPictureStyle uchun quyidagi kodlar qatorida ko’rsatilganidek, yana styleni va kengaytirmoqchi bo’lgan image-ni ko’rsatishingiz kerak :
var notification = NotificationCompat.Builder(context, CHANNEL_ID)
.setSmallIcon(R.drawable.new_post)
.setContentTitle(imageTitle)
.setContentText(imageDescription)
.setLargeIcon(myBitmap)
.setStyle(NotificationCompat.BigPictureStyle()
.bigPicture(myBitmap)
.bigLargeIcon(null))
.build()
Yuqorida aytib o’tilgan style-lardan tashqari, UX-ni yaxshilash uchun notification-lardan foydalanishingiz mumkin bo’lgan boshqa style-lar ham mavjud. Mana ulardan bir nechtasi:
|
| |