2

我陷入了 Counting ListViewitems 并在 Particular ListView Items 上显示 Counters 。请参阅下面的实际我想做的事情:

这是 ListView 项的示例:

教学大纲(列表项目计数) <我的标题>

前任。

  • 教学大纲 (1/10) Android
  • 教学大纲 (2/10) Java
  • 教学大纲 (10/10) Java
  • ...更多的

我从我的本地数据库中获取这些列表视图项目,请建议我任何想法

4

4 回答 4

1

我建议您创建一些子类,ListAdapter并且在getView()方法中只使用int position来获取每个孩子的位置和数据源的大小来获取总数。

例如,如果您将使用SimpleCursorAdapterso用于获取每个子项(行)位置的cursor.getCount()项目计数和方法int position参数。getView()

基本示例:

@Override
public View getView(int position, View convertView, ViewGroup parent) {
   if (c.moveToPosition(position) { 
      String name = c.getString(c.getColumnIndex(Constants.COL));
      String another = c.getString(c.getColumnIndex(Constants.COL_2));
      String text = value + "(" + String.valueOf(position) + "/" + String.valueOf(c.getCount()) + ") " + another; 
      textView.setText(text);
   }
}
于 2013-02-25T07:55:09.850 回答
0

在列表的自定义布局中添加一个文本视图并position +"/10"在该文本视图中进行设置。

于 2013-02-25T07:53:41.240 回答
0

您可以获取总项目的长度,然后尝试使用以下代码。

for (int i = 0; i < length; i++) {
 Syllabus (i/total length) < My Heading >
       }
于 2013-02-25T07:54:46.753 回答
0

你需要有你的自定义 CursorAdapter,比如

public class ExampleCursorAdapter extends CursorAdapter {
public ExampleCursorAdapter(Context context, Cursor c) {
    super(context, c);
}

@Override
public void bindView(View view, Context context, Cursor cursor) {
    TextView summary = (TextView)view.findViewById(R.id.summary);
    summary.setText(cursor.getString(
            cursor.getColumnIndex(ExampleDB.KEY_EXAMPLE_SUMMARY)));
}

@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
    LayoutInflater inflater = LayoutInflater.from(context);
    View v = inflater.inflate(R.layout.item, parent, false);
    bindView(v, context, cursor);
    return v;
}
}
于 2013-02-25T07:54:56.650 回答