2015-02-07 69 views
0

如何自定義前臺服務通知? 我想:Android自定義前臺服務通知

private void startForegoundService() { 
    RemoteViews remoteViews = new RemoteViews(getPackageName(), 
      R.layout.custom_notification); 
    Notification.Builder mBuilder = new Notification.Builder(this) 
      .setContent(remoteViews); 

    startForeground(mforegroundNotificationId, mBuilder.build()); 
} 

其中R.layout.custom_notification是:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/notification_layout_root" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#7777" 
    android:padding="3dp" > 

    <ImageView 
     android:id="@+id/button_enable_alarm" 
     android:layout_width="44dp" 
     android:layout_height="44dp" 
     android:layout_marginRight="10dp" 
     android:contentDescription="Eye" 
     android:src="@drawable/action_enable_alarm" /> 

    <TextView 
     android:id="@+id/text" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textColor="#FFF" 
     android:textSize="24sp" /> 

</LinearLayout> 

但它不會有任何效果。我需要自定義前臺服務通知。不只是「假」的服務通知。

回答

0

問題通過添加小圖標值得到修復。完整代碼:

Notification.Builder mBuilder = new Notification.Builder(this).setSmallIcon(R.drawable.custom_small_icon).setContent(remoteViews);