代码之家  ›  专栏  ›  技术社区  ›  Jake Lee

类型不匹配。必需:NotificationCompat.Style,找到:Notification.BigPictureStyle

  •  1
  • Jake Lee  · 技术社区  · 6 年前

    我正在为我的应用程序使用AndroidX,并试图以自定义BigPicture样式显示通知(如图所示) in the docs ).

    但是,我不能使用 .setStyle(Notification.BigPictureStyle() 作为 NotificationCompat.Builder BigPictureStyle

    麻烦代码:

        val notif = NotificationCompat.Builder(context, channelId)
            .setAutoCancel(true)
            .setSmallIcon(R.drawable.ic_notification)
            .setLargeIcon(image)
            .setContentTitle(apod.title)
            .setContentText(apod.desc.take(100))
            .setStyle(Notification.BigPictureStyle()
                .bigPicture(image)
                .bigLargeIcon(null as Bitmap))
    

    错误截图:

    enter image description here

    进口:

    import android.app.Notification
    import android.app.NotificationChannel
    import android.app.NotificationManager
    import android.content.Context
    import android.graphics.Bitmap
    import android.graphics.Color
    import android.media.RingtoneManager
    import android.os.Build
    import androidx.core.app.NotificationCompat
    

    应用程序级别的潜在相关行 build.gradle :

    implementation 'com.android.support:design:28.0.0'
    implementation 'androidx.appcompat:appcompat:1.1.0-alpha01'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2'
    

    当然还有 gradle.properties

    android.useAndroidX=true
    android.enableJetifier=true
    

    1 回复  |  直到 6 年前
        1
  •  4
  •   Jake Lee    6 年前

    一如往常,只要你写下问题,你就能解决它。

    解决办法就是改变 Notification.BigPictureStyle() NotificationCompat.BigPictureStyle() ,因为所有AndroidX通知库都命名为 NotificationCompat !

        val notif = NotificationCompat.Builder(context, channelId)
            .setAutoCancel(true)
            .setSmallIcon(R.drawable.ic_notification)
            .setLargeIcon(image)
            .setContentTitle(apod.title)
            .setContentText(apod.desc.take(100))
            .setStyle(NotificationCompat.BigPictureStyle()
                .bigPicture(image)
                .bigLargeIcon(null))
    
    推荐文章