如何初始化布局的ListView?

时间:2016-03-17 17:48:13

标签: android listview

我想将布局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.javahttp://pastebin.com/6xr72uJ4

谢谢。

1 个答案:

答案 0 :(得分:1)

与您提供的代码一样,您正在创建ListView类中Service的实例化。

public class CallRecordService extends Service {

任何扩展Service类的类都不能拥有UI或无法访问UI元素。无论您在活动或片段中夸大了ListView,都必须在该文件中设置适配器。这样做的方法是,您可以在工作完成后从服务中发送广播。包含ListView的活动/片段将侦听此广播并适当更新ListView。