代码之家  ›  专栏  ›  技术社区  ›  Josiah Kiehl

为自定义ListView适配器创建拆分按钮

  •  1
  • Josiah Kiehl  · 技术社区  · 14 年前

    我想制作一个列表适配器,将视图格式化为:

    List Entry

    我希望能够在用户单击图像时触发不同的onClick。我已经在getView()覆盖中定义了图像本身的onClick,但是如何获得被单击的行的位置,以便更新数据库中的记录来记录操作?

    1 回复  |  直到 14 年前
        1
  •  3
  •   tlayton    14 年前

    首先,需要表示适配器的ListView。如果你已经把它放在某个地方了,那就太好了;如果没有,则可以获取传递给onClick()的视图,并调用其getParent()方法两次(如果图像嵌套在单击项的视图中更深,则调用次数会更多)以获取ListView。

    例如:

    public void onClick(View v){
        ListView lv = (ListView)(v.getParent().getParent()); // you may need more getParent()s and/or extra casting
        int position = lv.getPositionForView(v);
        /* Do whatever database stuff
         * You want to do
        */
    }