2

我正在尝试在我的 android 应用程序中创建自定义通知。我正在使用以下代码

自定义布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/custom_notification"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"

    android:orientation="horizontal" >

    <LinearLayout
        android:layout_width="50dp"
        android:layout_height="fill_parent"
        android:background="@drawable/notification_background"
        android:clickable="true" >

        <ImageView
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="@drawable/ic_action_test" />
    </LinearLayout>
</LinearLayout>

这就是我创建通知的方式

RemoteViews contentView = new RemoteViews(activity.getPackageName(), R.layout.notification);

            Notification noti = new NotificationCompat.Builder(activity)

                    .setSmallIcon(R.drawable.ic_launcher)
                    .build();
            noti.contentView = contentView;
            // Hide the notification after its selected
            noti.flags |= Notification.FLAG_NO_CLEAR;

            notificationManager.notify(0, noti);

通知已创建,但即使我使用 fill_parent 作为高度属性,它也不会覆盖通知栏上的整个高度。

谁能告诉我这里有什么问题?

4

1 回答 1

1

为时已晚,但帮助了我,希望它也能帮助你。在xml或png中制作透明的背景图片(如果您愿意,可以对其进行着色),并且背景图片的高度必须大于通知高度。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/custom_notification"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/tran"
    android:orientation="horizontal" >
    <LinearLayout
        android:layout_width="50dp"
        android:layout_height="fill_parent"
        android:background="@drawable/notification_background"
        android:clickable="true" >
        <ImageView
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="@drawable/ic_action_test" />
    </LinearLayout>
</LinearLayout>

传输.xml

<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="@android:color/transparent"/>
    <size android:width="400dp" android:height="400dp"/>
</shape>
于 2015-01-05T18:52:10.467 回答