如何从SQLite添加到我的列表中

时间:2012-05-09 01:24:38

标签: java android sqlite list

我的应用会收到短信,将其保存在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);
        }

1 个答案:

答案 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);

这有用吗?