Android开发中 在Activity中 如何实时监听 Service 中某个变量的变化?

 我来答
宝张万40
2011-08-29 · 超过38用户采纳过TA的回答
知道答主
回答量:184
采纳率:0%
帮助的人:112万
展开全部
举个例子你会理解的更快:X, Y两个listview,X里有1,2,3,4这4个item,Y里有a,b,c,d这4个item。
如果你点了b这个item。如下:

public void onItemClick (AdapterView<?> parent, // parent相当于listview Y适配器的一个指针,可以通过它来获得Y里装着的一切东西,再通俗点就是说告诉你,你点的是Y,不是X - -、
View view, // view是你点b item的view的句柄,就是你可以用这个view,来获得b里的控件的id后操作控件
int position, // position是b在Y适配器里的位置(生成listview时,适配器一个一个的做item,然后把他们按顺序排好队,在放到listview里,意思就是这个b是第position号做好的)
long id // id是b在listview Y里的第几行的位置(很明显是第2行),大部分时候position和id的值是一样的,如果需要的话,你可以自己加个log把position和id都弄出来在logcat里瞅瞅,看了之后心里才踏实
)
阳光佷刺眼
推荐于2016-09-10 · TA获得超过588个赞
知道小有建树答主
回答量:112
采纳率:0%
帮助的人:183万
展开全部
service里的变量变化了,可以发一个消息给主UI,消息里面带上数据,主UI再做出相应的动作。

强烈指责“杭翠波”,把我之前 回答别人的问题 的答案据为己有,然后贴在这
追问
您好,用广播发信息给主UI,和用意图发消息。哪个更合适? 求教 谢谢
追答
广播其实也是通过把东西装在inten里发送的。广播用起来比较麻烦,还得注册等等的工作,我是不愿意用,但是想捕获系统的广播(开机,电量等)还是必须用的。我上面说的是Handler和Message,这个用着比较简单方便在service里new一个message,把数据什么的装进去,发给主UI的Handler(这个Handler是主UI的成员,不用担心出现子线程操作主UI的问题),主UI接到消息,吧东西拿出来就OK了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
西凉观云海
2015-08-18 · TA获得超过172个赞
知道小有建树答主
回答量:188
采纳率:0%
帮助的人:66.9万
展开全部
可以通过观察者来监听变化,也可以主动通知
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雨非我所欲
推荐于2018-05-15 · TA获得超过1993个赞
知道小有建树答主
回答量:559
采纳率:85%
帮助的人:198万
展开全部
service里的变量变化了,可以发一个消息给主ui,消息里面带上数据,主ui再做出相应的动作。
广播其实也是通过把东西装在inten里发送的。广播用起来比较麻烦,还得注册等等的工作,我是不愿意用,但是想捕获系统的广播(开机,电量等)还是必须用的。我上面说的是Handler和Message,这个用着比较简单方便在service里new一个message,把数据什么的装进去,发给主UI的Handler(这个Handler是主UI的成员,不用担心出现子线程操作主UI的问题),主UI接到消息,吧东西拿出来就OK了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhonglushu
2011-08-30 · 超过61用户采纳过TA的回答
知道小有建树答主
回答量:229
采纳率:0%
帮助的人:171万
展开全部
要支持一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式