我想将布局activity_call_history.xml
的ListView包含ListView Id/call_history_listview
更新到Android中的班级CallRecordService.java
。
因此,我不知道如何初始化ListView
以应用于此ListView
。
目前,我用代码初始化了:
listView = new ListView(context);
我在互联网上搜索,所有人通常使用相似的代码:
View rootView = inflater.inflate(R.layout.activity_call_history, container, false);
listView = (ListView) rootView.findViewById(R.id.call_history_listview);
但是在我的班级中无法像这段代码那样创建rootView。
如何在R.id.call_history_listview
中初始化listView包含layout activity_call_history
?
这是班级CallRecordService.java
:
http://pastebin.com/6xr72uJ4
谢谢。
答案 0 :(得分:1)
与您提供的代码一样,您正在创建ListView
类中Service
的实例化。
public class CallRecordService extends Service {
任何扩展Service
类的类都不能拥有UI或无法访问UI元素。无论您在活动或片段中夸大了ListView
,都必须在该文件中设置适配器。这样做的方法是,您可以在工作完成后从服务中发送广播。包含ListView
的活动/片段将侦听此广播并适当更新ListView。