【发布时间】:2013-04-22 23:31:26
【问题描述】:
我想更新布局中的 Textview,当服务检测到未接来电时, 我在我的服务的 onCreat 方法中使用此代码:
public void onCreate() {
super.onCreate();
final LayoutInflater mcInflator = (LayoutInflater) ctext.getSystemService(Context.LAYOUT_INFLATER_SERVICE );
bla bla bla bla bla
...
if (call.toString().contains("Missed")){
View mcLayout= mcInflator.inflate(R.layout.m_call, null );
TextView mc = (TextView) mcLayout.findViewById(R.id.mcText);
mc.setText("Missed Call");
}
if (call.toString().contains("Outgoing")){
bla bla bla bla bla ....
但是当我检查布局时,Textview 没有改变?请问有什么建议吗?
【问题讨论】:
-
“有什么建议吗?” - 是的...不要尝试这样做。首先,您不能保证
Activity确实存在。其次,您不能从Service膨胀或访问Activity中的视图。第三,你为什么要这样做?如果我错过了一个电话,我会收到一条通知,告诉我我错过了电话 - 这是通知某人有未接电话的正确方式 - 而不是在TextView中的Activity可能会或可能不会运行。
标签: android service textview inflate