Android读书笔记---RemoteViews 远程View

(内容来自于Android开发艺术探索)
RemoteViews 远程View,可以跨进程更新它的页面。
例如自定义一个Notification

Notifiaction notification=new Notification();
notification.icon=R.drawable.ic_luncher;
notification.tickerText="test"
notification.when=System.currentTimeMillis();
notification.flags=Notification.FLAG_AUTO_CANCEL;
Intent intent=new Intent(this,Act);
PendingIntent pendingIntent=PendingIntent.getActivity(this,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
RemoteViews remoteViews=new RemoteViews(getPackageName(),R.layout.layout_notification);
remoteViews.setTextView(R.id.msg,"..");
remoteViews.setImageViewResource(R.id.icon,R.drawable.icon1);
PendingIntent pendingActivity=PendingIntent.getActivity(this,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
remoteViews.setOnClickPendingIntent(R.id.open_activity2,pendingActivity);
notification.contentView=remoteViews;
notification.contentIntent=pendingIntent;
NotificationManager manager=getSystemService(Context.NOTIFICATION_SERVICE);
manager.notify(2,notificaiton);

1.使用RemoteView需要提供当前应用的报名,和替换布局的id

RemoteViews remoteViews=new RemoteViews(getPackageName(),R.layout.layout_notification);

2.RemoteViews无法直接访问它的布局中的View,可以通过RemoteView提供的方法访问

remoteViews.setTextView(R.id.msg,"..");
remoteViews.setImageViewResource(R.id.icon,R.drawable.icon1);

3.如果布局中的View需要点击事件,则要通过PendingIntent

pendingActivity=PendingIntent.getActivity(this,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
remoteViews.setOnClickPendingIntent(R.id.open_activity2,pendingActivity);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值