0

我的应用程序将接收 SMS,将其保存在 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);
        }
4

1 回答 1

0

我仍然不太确定你在问什么,所以我不知道这是否有帮助。我认为您想大致执行以下操作:

1)通过查询要放入列表中的数据来创建一个 android.database.Cursor 对象 2)使用要显示的查询中的列创建一个字符串数组。例如String[] from_list = new String[] { "title", "case" }

3) 创建一个 int 数组,其中包含要填写的列表行中的 TextViews 的 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);

这有帮助吗?

于 2012-05-10T01:49:17.810 回答