1

リストアダプターとして拡張するクラスがありListActivityます。SimpleAdapter私のコードは次のようになります。

public class ListOfFirms extends ListActivity {

Intent extras;
int time;
String km;
ArrayList<String> firms = new ArrayList<String>(); 
SimpleAdapter adapter;  
static final ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>();





  @Override
  public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.firms);


        extras = getIntent();

        time = extras.getIntExtra("time", 0); 
        km = extras.getStringExtra("km");

        adapter = new SimpleAdapter(
                this, list, R.layout.taxi_custom,
                new String[] {"name","price"},
                new int[] {R.id.taxi_name,R.id.taxi_price});

        initializeFirm();
        setListAdapter(adapter);
     }  

私の質問は、リスト内の各要素にボタンを追加する方法です。ボタンは右に浮かんでいる必要があります。私のリストには class のオブジェクトが含まれてFirmいます。ユーザーがこのボタンを押したときに、リストから取得したオブジェクトをどのように知ることができますか?

4

3 に答える 3

1

これがあなたを助けるかもしれないカスタムリストビューの例です

カスタムアダプタを使用して....そして設定

listview.setAdapter(adapter);
于 2012-04-22T18:54:45.527 に答える
1

You will have to write a CustomAdapter which extends BaseAdapter.

于 2012-04-22T18:30:20.880 に答える
0

ボタンの代わりに OnTouchListener と OnLongClickListener を使用できれば、実装が少し簡単になります。また、項目を選択するだけの場合は、標準の組み込みの Android メカニズムを使用する方が簡単です。

各リスト項目に本当にボタンが必要な場合にのみ、Gaurav Agarwal が提案したようにそれを行う必要があります...-これはとにかく遅かれ早かれやらなければならないことかもしれません:-)

于 2012-04-22T18:53:00.737 に答える