2013-02-25 98 views
2

我被卡在Counting ListView项目并显示特定ListView项目的计数器。普莱斯见下文其实我想做的事:想要计算ListView项目并在每个ListView项目上显示计数器

这里的ListView项目的样本:

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

例。

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

我得到这些从我的本地数据库列表查看项目,请给我建议任何想法

回答

1

我建议你创建的一些ListAdapter子类,并在getView()方法只使用INT位置获取每个孩子的位置获取总数的数据源大小为

例如,如果你使用SimpleCursorAdapter所以使用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); 
    } 
} 
+0

我在你的解释代码和示例代码之下完成了代码.. mHolder.mTxt_index.setText((position + 1)+“/”+ MyFragment。 .size()); Thanx很多sajmon_d .. :) – CKnDROID 2013-02-25 12:40:59

+0

欢迎您:) – Sajmon 2013-02-25 15:25:47

0

在列表的自定义布局中添加文本视图,并在该tex中设置position +"/10" t视图。

+0

我没有。的项目不仅仅是10.通过方式Thanx .. AnujMathur。 – CKnDROID 2013-02-25 08:14:12

+0

所以你可以通过你想要的来改变“/ 10”,比如你用来生成列表的数组或列表大小。 – 2013-02-25 09:57:30

+0

Thanx for yr建议AnujMathur ... :)我用这种方法解决了我的问题:mHolder.mTxt_index.setText((position + 1)+“/”+ MyFragment。 .size()); – CKnDROID 2013-02-25 12:43:55

0

你可以得到总项目的长度,然后尝试使用下面的代码。

for (int i = 0; i < length; i++) { 
Syllabus (i/total length) < My Heading > 
     } 
+0

Thanx for yr建议kyogs ... :)我用这种方法解决了我的问题:mHolder.mTxt_index.setText((position + 1)+“/”+ MyFragment。 .size());但从你的代码我解决了很多prob.s :) – CKnDROID 2013-02-26 04:45:57

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; 
} 
} 
+0

Thanx年建议Kapil Vats ...但我高高兴地解决了我的问题: mHolder.mTxt_index.setText((位置+ 1)+“/”+ MyFragment。 .size()); – CKnDROID 2013-02-25 12:43:06