我有以下代码来显示自定义视图的通知:
private void showMediaPlayerNotification(){
RemoteViews rm = new RemoteViews(getActivity().getPackageName(), R.layout.notif_media_player);
Intent activity = new Intent(getActivity(), HomeActivity.class);
PendingIntent pendingActivity = PendingIntent.getActivity(getActivity(), 0, activity,0);
Notification notif = new NotificationCompat.Builder(getActivity())
.setContent(rm).setContentIntent(pendingActivity)
.setOngoing(true)
.build();
NotificationManager mgr = (NotificationManager) getActivity().getSystemService(Context.NOTIFICATION_SERVICE);
mgr.notify(NOTIFICATION_ID, notif);
}
这是一个片段。片段进入onStop()
时会显示通知,并会在onResume()
和onDetach()
中删除。
但是,通知未显示。
这里有什么问题?
这是在三星Galaxy S3上运行的。
<?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"
android:background="@android:color/black">
<!-- Logo -->
<ImageView android:id="@+id/logo"
android:layout_width="64dp"
android:layout_height="64dp"
android:scaleType="fitXY"
android:src="@drawable/chimp"
android:layout_alignParentLeft="true" />
<!-- Media Buttons -->
<ImageButton android:id="@+id/cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_action_cancel"
android:background="@android:color/transparent"
android:layout_alignParentRight="true"
android:layout_marginRight="5dp"
android:layout_centerVertical="true"/>
<ImageButton android:id="@+id/next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_action_next"
android:background="@android:color/transparent"
android:layout_toLeftOf="@id/cancel"
android:layout_marginRight="15dp"
android:layout_centerVertical="true"/>
<ImageButton android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_action_previous"
android:background="@android:color/transparent"
android:layout_toLeftOf="@id/next"
android:layout_marginRight="15dp"
android:layout_centerVertical="true"/>
<ImageButton android:id="@+id/pause"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_action_pause"
android:background="@android:color/transparent"
android:layout_toLeftOf="@id/previous"
android:layout_marginRight="15dp"
android:layout_centerVertical="true"/>
</RelativeLayout>
答案 0 :(得分:1)
您还需要添加setSmallIcon(int drawable)
。这应该可以解决问题。