Skip to content Skip to sidebar Skip to footer

How To Use Both Bigtextstyle And Bigpicturestyle In Setstyle Notification?

I am trying to use both BigTextStyle and BigPictureStyle in my notification.But setStyle accepts only one style. My code: NotificationCompat.BigTextStyle bigTextStyle = new Noti

Solution 1:

Sorry for late reply..Actually i was also faced the same problem and got the solution, so i am thinking that it can help for other user. As we can NOT use the both BigTextStyle and BigPictureStyle method of the NotificationCompat.Builder than we can create the CustomView.

We can use the setCustomBigContentView(RemoteViews) method of NotificationCompat.Builder and create our own view to show the Big Image with Big text.

Please check the below code for it:-

PendingIntentpendingIntent= PendingIntent.getActivity(this, (int) System.currentTimeMillis(), i,
                PendingIntent.FLAG_ONE_SHOT);

        UridefaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);


        NotificationCompat.BuildernotificationBuilder=newNotificationCompat.Builder(this);
        notificationBuilder.setContentTitle("YOUR_APP_NAME");
        notificationBuilder.setContentText(body);
        notificationBuilder.setTicker("YOUR_APP_NAME");
        notificationBuilder.setAutoCancel(true);
        notificationBuilder.setSound(defaultSoundUri);
        notificationBuilder.setCustomBigContentView(remoteView("YOUR_MESSAGE_TO_SHOW"));///IT IS THE MAIN METHOD WHICH WE USE TO INFLATE OR CREATE THE CUSTOM VIEW
        notificationBuilder.setSmallIcon(getNotificationIcon(notificationBuilder));
        notificationBuilder.setContentIntent(pendingIntent);

        NotificationManagernotificationManager=
                (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

        notificationManager.notify((int) System.currentTimeMillis(), notificationBuilder.build());

Below is the RemoteViews which we have called from our setCustomBigContentView() method

privateRemoteViewsremoteView(String message)
    {
        RemoteViews views;
        views = newRemoteViews(getPackageName(), R.layout.YOUR_LAYOUT_HERE);
        views.setImageViewBitmap(R.id.YOUR_BIG_IMAGE_ID_FROM_LAYOUT, bitmap);
        views.setImageViewBitmap(R.id.YOUR_APP_ID_FROM_LAYOUT, BitmapFactory.decodeResource(getResources(), R.drawable.APP_ICON_OF_YOUR_APP));
        views.setTextViewText(R.id.YOUR_BIG_TEXTVIEW_ID_FROM_LAYOUT, message);
        return views;
    }

I have created the custom notification like itCustom Notification example

Post a Comment for "How To Use Both Bigtextstyle And Bigpicturestyle In Setstyle Notification?"