【发布时间】:2014-08-29 05:23:41
【问题描述】:
我使用一个接口将 ArrayList 从一个类获取到另一个类。但是当我在其他类中调用接口时,我没有得到 ArrayList 的值。
界面
public interface GetArrayList {
public void getArray(List<SearchModel> listValues);
}
我设置数组列表的类
getArrayList = new GetArrayList() {
@Override
public void getArray(List<SearchModel> listValues) {
listValues = values;
}
};
JSONArray tableArray = NewDataSet.getJSONArray("Table");
for (int i = 0; i < tableArray.length(); i++) {
JSONObject table = tableArray.getJSONObject(i);
data = new SearchModel(/*Constructor irrelevant to question*/);
values.add(data);
}
getArrayList.getArray(values);
我想使用数组列表的第二类
public class SearchJobList extends ListFragment {
private View view;
private List<SearchModel> data;
private GetArrayList getArrayList;
SearchJobAdapter jobAdapter;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
view = inflater.inflate(R.layout.search_job_list, null, false);
return view;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
data = new ArrayList<SearchModel>();
getArrayList = new GetArrayList() {
@Override
public void getArray(List<SearchModel> listValues) {
data = listValues;
jobAdapter = new SearchJobAdapter(getActivity(), data);
setListAdapter(jobAdapter);
}
};
}
}
【问题讨论】:
-
你为什么不直接使用
public ArrayList<SearchModel> getArrayList()? -
很抱歉让你失望了???
-
您是否将Activity类中GetArrayList的引用对象发送给您正在操作的一个类..?
-
我想为列表设置适配器。所以我将使用 ArrayList,所以我已经使用了一个接口