我创建了一个自定义通知布局,它有一个可点击的按钮.到目前为止在
Android 3(API Level 11)或更高版本上工作得很好,但是在Android 2.3上不起作用,Notification中的ContentIntent总是覆盖我的布局而无法覆盖.
我无法点击视图,我总是点击通知并启动
我无法点击视图,我总是点击通知并启动
Builder builder = new NotificationCompat.Builder(getApplicationContext()); RemoteViews contentView = new RemoteViews(getPackageName(),R.layout.notification_layout); contentView.setImageViewResource(R.id.notImage,R.drawable.stat_icon); contentView.setTextViewText(R.id.notTitle,"Title"); contentView.setTextViewText(R.id.notText,"Text"); contentView.setOnClickPendingIntent(R.id.notButton,secondPendingIntent); contentView.setOnClickPendingIntent(R.id.notContentLayout,pendingIntent); builder .setContentTitle("Title") .setContentText("Text") .setSmallIcon(R.drawable.stat_icon) .setOngoing(true) .setWhen(0) .setTicker("Ticket") .setContent(contentView) .setContentIntent(contentIntent); //this intent override my contentView.setOnClickPendintIntent. I can't click the view. not = builder.build(); not.contentView = contentView;
布局:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/layout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dp" > <RelativeLayout android:id="@+id/notContentLayout" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_toLeftOf="@+id/notButton" > <ImageView android:id="@+id/notImage" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentLeft="true" android:layout_marginLeft="8dp" android:layout_marginRight="23dp" android:contentDescription="@string/image_desc" /> <TextView android:id="@+id/notTitle" style="@style/NotificationTitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/notImage" /> <TextView android:id="@+id/notText" style="@style/NotificationText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/notTitle" android:layout_toRightOf="@id/notImage" /> </RelativeLayout> <ImageButton android:id="@+id/notButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:background="@color/transparent" android:contentDescription="@string/image_desc" android:padding="10dp" android:src="@android:drawable/ic_media_pause" /> </RelativeLayout>
简单.但不要在Android 2.3或更低版本上工作,任何想法?
解决方法
我发现它,Android 2.3或更低版本是不可能的. 可点击通知按钮仅适用于Android 3或更高版本.