向通知中的按钮添加 onClick 操作 [英] Adding onClick Action To Button In Notification
本文介绍了向通知中的按钮添加 onClick 操作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用自定义布局向通知添加按钮.我能够添加布局并显示按钮.但是,我仍然想不出将单击侦听器添加到按钮的方法.这是我拥有的相关代码:
I'm trying to add button to Notification using custom layout. I was able to add the layout and display the button. However, I still can't figure out a way to add click listener to the button. Here is the relevant code I have:
添加自定义布局通知的代码:
String ns = Context.NOTIFICATION_SERVICE;
mNotificationManager = (NotificationManager) ctx.getSystemService(ns);
CharSequence tickerText = "Quick Application Launcher";
long when = System.currentTimeMillis();
Notification.Builder builder = new Notification.Builder(ctx);
Notification notification=builder.getNotification();
notification.when=when;
notification.tickerText=tickerText;
notification.icon=R.drawable.ic_launcher;
RemoteViews contentView=new RemoteViews(ctx.getPackageName(), R.layout.custom_notification);
Intent volume=new Intent(ctx, NotifActivityHandler.class);
volume.putExtra("DO", "2");
PendingIntent pVolume = PendingIntent.getActivity(ctx, 1, volume, 0);
contentView.setOnClickPendingIntent(R.id.btn2, pVolume);
notification.contentView = contentView;
notification.flags |= Notification.FLAG_ONGOING_EVENT;
mNotificationManager.notify(2345345, notification);
这是 NotifActivityHandler 代码:
public class NotifActivityHandler extends Activity {
private NotifActivityHandler ctx;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ctx=this;
String action= (String)getIntent().getExtras().get("DO");
Log.i("LOG", "lauching action: " + action);
if(action.equals("1")){
} else if(action.equals("2")){
} else if(action.equals("config")){
Intent i = new Intent(NotifActivityHandler.this, ConfigActivity.class);
startActivity(i);
}
}
}
即使我输入了Log.i
,上面的代码也不会产生任何日志.我不确定这有什么问题.任何帮助表示赞赏.
Codes above doesn't produce any log even if I put Log.i
. I'm not sure what is wrong with this. Any help is appreciated.
更新
我在 ICS 设备上对此进行了测试.
I tested this on ICS device.
推荐答案
您可能需要在 AndroidManifest.xml
中注册您的监听器.看看这个
You may have to register your listner in AndroidManifest.xml
.
Take a look at this one
这篇关于向通知中的按钮添加 onClick 操作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文