通知不会显示?

时间:2014-08-24 08:52:29

标签: android android-notifications

我有以下代码来显示自定义视图的通知:

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>

1 个答案:

答案 0 :(得分:1)

您还需要添加setSmallIcon(int drawable)。这应该可以解决问题。