1

ListActivity我有一个以 aSimpleAdapter作为列表适配器扩展的类。我的代码如下所示:

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);
     }  

我的问题是如何为列表中的每个元素添加一个按钮,该按钮应该向右浮动。我的列表包含类的Firm对象,当用户按下此按钮时,我怎么知道我从列表中取出哪个对象?

4

3 回答 3

1

您必须编写一个扩展 BaseAdapter 的 CustomAdapter。

于 2012-04-22T18:30:20.880 回答
1

是自定义列表视图的示例,可以帮助您

使用自定义适配器....并设置

listview.setAdapter(adapter);
于 2012-04-22T18:54:45.527 回答
0

如果您可以使用 OnTouchListener 和 OnLongClickListener 而不是按钮,那么实现起来会更容易一些。此外,如果您只想选择项目,使用标准的内置 Android 机制会更容易。

只有当你真的需要在每个列表项上都有一个按钮时,你才必须像 Gaurav Agarwal 建议的那样去做...... - 这是你迟早可能要做的事情:-)

于 2012-04-22T18:53:00.737 回答