そのため、右側にいくつかのテキストと2つのボタンがある通知を作成しようとしています(gmail/whatsapp通知のように下部にはありません)。同じレイアウトを作成しましたが、通知にリモート ビューを設定すると、タイトル テキスト ビューと 2 つのボタンしか表示されません。タイトルの下の画像ビューまたはテキスト ビューは表示されません。また、指定した余白も適用されません。xml と以下のコードを貼り付けます。
custom_notification.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/img_logo"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_margin="10dp"
android:scaleType="centerCrop"
android:src="@drawable/ic_launcher"/>
<TextView
android:id="@+id/txt_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toEndOf="@+id/img_logo"
android:layout_alignTop="@+id/img_logo"
android:text="Would you like to connect with this person?"
style="@style/NotificationTitle"
android:textColor="@android:color/darker_gray" />
<TextView
android:id="@+id/txt_contact_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/txt_title"
android:layout_below="@id/txt_title"
android:text="Lord Voldemort"
style="@style/NotificationText"
android:textColor="@android:color/black"
android:textStyle="bold"/>
<ImageButton
android:id="@+id/img_btn_reject_suggestion"
android:layout_width="36dp"
android:layout_height="36dp"
android:scaleType="centerCrop"
android:layout_alignTop="@+id/img_logo"
android:src="@drawable/ic_reject_suggestion"
android:background="@android:color/transparent"
android:layout_toStartOf="@+id/img_btn_accept_suggestion"
android:layout_marginRight="10dp"
android:layout_centerVertical="true"/>
<ImageButton
android:id="@+id/img_btn_accept_suggestion"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_alignTop="@+id/img_logo"
android:layout_marginRight="10dp"
android:scaleType="centerCrop"
android:src="@drawable/ic_accept_suggestion"
android:background="@android:color/transparent"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"/>
</RelativeLayout>
通知を作成するメソッドは次のとおりです。
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE);
Notification.Builder mNotificationBuilder = new Notification.Builder(context);
RemoteViews contentView = new RemoteViews(context.getPackageName(), R.layout.custom_notification);
mNotificationBuilder.setSmallIcon(R.drawable.ic_small_notification)
.setDefaults(Notification.DEFAULT_ALL)
.setContent(contentView)
.setAutoCancel(true);
Notification notification = mNotificationBuilder.build();
mNotificationManager.notify(MANUAL_NOTIFICATION_ID, notification);
私は多くのことを掘り下げましたが、なぜこれがうまくいかないのか分かりません。さらに情報が必要な場合はお知らせください。:)