3
   listView.setOnItemClickListener(new OnItemClickListener() {
          @Override
          public void onItemClick(AdapterView<?> parent, View view,
            int position, long id) {


                if(position == 1 ){
                    Toast.makeText(getApplicationContext(),
                    "Click ListItem Number " + position,
 Toast.LENGTH_LONG)
                    .show();
                }else{
                     }

正常に動作するカスタム アダプターからのリスト ビューがあり、項目をクリックすると正しい位置に移動します。フィールド ビューのテキストを位置から抽出するにはどうすればよいですか。すなわち

 holder.txtDesc = (TextView) convertView.findViewById(R.id.desc);

クリックした位置 listem から desc フィールドをターゲットにしたい.. ハッシュ マッピングを使用できることはわかっていますが、アイテムのクリック時にフィールド ビューをリスト位置でターゲットにする方法はありますか? これが「webby」であることは知っていますが、Java にも同じ柔軟性があると確信しています。

  public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder holder = null;
    RowItem rowItem = getItem(position);

    LayoutInflater mInflater = (LayoutInflater) context
            .getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
    if (convertView == null) {
        convertView = mInflater.inflate(R.layout.list_item, null);
        holder = new ViewHolder();
        holder.txtDesc = (TextView) convertView.findViewById(R.id.desc);
        holder.txtTitle = (TextView) convertView.findViewById(R.id.title);
        convertView.setTag(holder);
    } else
        holder = (ViewHolder) convertView.getTag();

    holder.txtDesc.setText(rowItem.getDesc());
    holder.txtTitle.setText(rowItem.getTitle());


    return convertView;
}       
4

3 に答える 3

2

フィールド ビューのテキストを位置から抽出するにはどうすればよいですか。すなわち

holder.txtDesc = (TextView) convertView.findViewById(R.id.desc);

内部onItemClick()で使用できます:

TextView textview = (TextView) view.findViewById(R.id.desc);
// Now use textView.getText().toString() to get the description

convertViewfrom は Adapter と同じオブジェクトであるためview、Listener と同じです。

于 2013-04-05T20:20:55.407 に答える
0

電話してくれませんadapter.getItem(position)か?

于 2013-04-05T20:16:08.183 に答える