0

連絡先の名前を表示するカスタムアダプタ付きのリストビューがあります。現在、それらを次のように表示しています

RohitRahul ...。
_

こんな風になりたい

  1. Rohit
  2. ラフル...。

つまり、番号は自動的に追加されます。bindview()メソッドとnewview()メソッドの両方でカウント変数を使用してそれを実行しようとしましたが、下にスクロールして戻ってくると混乱します

私がテキストを設定する方法は

name = cursor.getString(cursor.getColumnIndex(ContactsContract.Data.DISPLAY_NAME));
contactName.setText(count + ". " + name);
4

4 に答える 4

1

試す

name = cursor.getString(cursor.getColumnIndex(ContactsContract.Data.DISPLAY_NAME));
contactName.setText(cursor.getPosition() + ". " + name);
于 2013-01-23T14:43:25.850 に答える
0

多分試してみてください:long count = cursor.getPosition();

于 2013-01-23T14:42:32.337 に答える
0

これは、必要なものには問題ないはずです。

public class CustomCursoAdapter extends SimpleCursorAdapter{

    public CustomCursoAdapter(Context context, int layout, Cursor c,
            String[] from, int[] to) {
        super(context, layout, c, from, to);
        // TODO Auto-generated constructor stub
        }

    @Override
    public void bindView(View view, Context context, Cursor cursor)
    {
            int count =cursor.getPosition()+1;
            RelativeLayout rl = (RelativeLayout) view;
            TextView tv = (TextView) rl.findViewById(R.id.serial_no);
            tv.setText(""+count);
        super.bindView(view, context, cursor);
    }
}
于 2013-01-23T14:50:00.620 に答える
0

を使用してカーソルから位置を取得します

long count = cursor.getPosition();

それで

name = cursor.getString(cursor.getColumnIndex(ContactsContract.Data.DISPLAY_NAME));
contactName.setText(cursor.getPosition() + ". " + name);
于 2013-01-23T14:52:23.897 に答える