0

2列の行レイアウトで、ユーザーがクリックまたは押した列を確認する方法はありますか?

2列目がボタンになればさらにいいのですが、どうやってボタンにするのかわかりません。これが私がしていることです:

private List<HashMap<String, String>> fillMaps;
private SimpleAdapter simple_adapter;
ListView list = null;

以降:

    list = (ListView) findViewById(android.R.id.list);
    ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();

    // My data
    fillMaps = new ArrayList<HashMap<String, String>>();

    simple_adapter = new SimpleAdapter(this, fillMaps, R.layout.comment_list,
            new String[] {"train", "from"}, 
            new int[] {R.id.TRAIN_CELL,  R.id.FROM_CELL });

    // This was the middle item R.id.FROM_CELL,
    list.setAdapter(simple_adapter);        
    list.setTextFilterEnabled(true); 

そして私はこのようにリストにデータを入力します:

for ( int i = 0; i < obj.length(); i++ )
                            {
                                JSONObject o = obj.getJSONObject(i);
                                HashMap<String, String> map = new HashMap<String, String>();

                                ... Some variables set here...


                                map.put("train", comment);
                                map.put("from", "Edit");

                                fillMaps.add(map);

                                discussion.add( d );
                            }
                        }

                        simple_adapter.notifyDataSetChanged();                      

これがcomment_list.xmlです

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:paddingTop="4dip"
 android:paddingBottom="6dip"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:textSize="13sp"
 android:weightSum="1.0"
 android:orientation="horizontal">

 <TextView android:id="@+id/TRAIN_CELL"
     android:textSize="16sp"
     android:layout_height="wrap_content"
     android:layout_width="275dip"/>



  <TextView android:id="@+id/FROM_CELL"
     android:textSize="16sp"
     android:textStyle="bold"
     android:layout_height="wrap_content" 
     android:layout_width="50dip"/>


</LinearLayout>

ありがとう!

4

2 に答える 2

1

行の2つの列でクリック可能なアイテムをいくつか使用して、それらのクリックイベントを処理してみてください。

これらの2つの列に2つのボタンを指定し、それらにsetOnClickListenersを追加して、最後にアクティビティでクリックされたボタンを確認するとします。

于 2012-09-12T18:12:03.870 に答える
1

このようなものを使用できます

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:paddingTop="4dip"
 android:paddingBottom="6dip"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
   android:textSize="13sp"
 android:weightSum="1.0"
 android:orientation="horizontal">
    <Button
        android:id="@+id/TRAIN_CELL"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         android:textSize="16sp"
 android:layout_height="wrap_content" />

    <Button
        android:id="@+id/FROM_CELL"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/label_grid_view" />
</LinearLayout>

何か問題があれば戻ってきてください

于 2012-09-12T18:36:10.580 に答える