我的应用会收到短信,将其保存在SQLite中,然后将其显示在我的列表中。 剩下的就完成了,但我无法将数据存入我的列表中;我怎么能这样做?
这是我尝试的内容:
list.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View view,
int position, long index) {
// here send Recent case Object OR or Recent case info. to show case information
}
});
这是我的适配器:
public class RecentCaseListAdapter extends BaseAdapter {
private RecentCases myPage;
static public List<RecentCaseClass> listOfCases;
RecentCaseClass entry;
public RecentCaseListAdapter(RecentCases R, List<RecentCaseClass> listOfCaseParameter) {
this.myPage = R;
this.listOfCases = listOfCaseParameter;
}
public int getCount() {
return listOfCases.size();
}
public Object getItem(int position) {
return listOfCases.get(position);
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup viewGroup) {
entry = listOfCases.get(position);
if (convertView == null) {
LayoutInflater inflater = (LayoutInflater) myPage.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.recent_cases_row, null);
}
// this is row items..
// Set the onClick Listener on this button
TextView tvCase = (TextView) convertView.findViewById(R.id.tvrecentName);
tvCase.setText(entry.getName());
TextView tvCaseInfo = (TextView) convertView.findViewById(R.id.recent_info);
tvCaseInfo.setText(entry.getAge());
// To be a clickable button
return convertView;
}
public void add(RecentCaseClass rCaseClass) {
// TODO Auto-generated method stub
listOfCases.add(rCaseClass);
}
}
这是我的清单
public static List<RecentCaseClass> RecentCaseList = new ArrayList<RecentCaseClass>();
public static List<RecentCaseClass> getRecentCaseList() {
return RecentCaseList;
}
public static void setRecentCaseList(List<RecentCaseClass> recentCaseList) {
RecentCaseList = recentCaseList;
}
此处我应该加入列表
if (SMSReceived.startsWith("Hi")) {
Toast.makeText(context, "Iam in hi", Toast.LENGTH_LONG)
.show();
msg = SMSReceived;
RecentCaseClass rCase = run();
dbAdapter.add(rCase);
All_Static.RecentCaseList.add(recent1);
}
答案 0 :(得分:0)
我仍然不太确定你在问什么,所以我不知道这是否有帮助。我想你想大致做到以下几点:
1)通过查询要放入列表中的数据来创建android.database.Cursor对象
2)使用要显示的查询中的列创建一个字符串数组。例如。 String[] from_list = new String[] { "title", "case" }
3)创建一个int数组,其中包含要填写的列表行中TextView的ID。 int[] to_list = new int[] {R.id.title, R.id.case}
4)创建一个SimpleCursorAdapter,将光标映射到列表:
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter (this, R.layout.list_row, mCursor, from_list, to_list);
5)`setListAdapter(mAdapter);
这有用吗?