如何在android中的listview中单击按钮时向左滑动行

时间:2016-05-30 06:04:42

标签: java android listview

我在listview行上有三个按钮。我必须单击左侧的红色按钮将该行向左滑动一点并打开右侧的删除按钮。在该按钮上,单击我需要删除该行。任何人都可以帮我这个功能吗?在这里,我附上了我的布局图片。

Here is image

3 个答案:

答案 0 :(得分:1)

按照:

  1. 在右侧创建一个删除按钮,并将其可见性设置为在xml文件中消失。

  2. 当用户点击左侧红色按钮时,将删除按钮的可见性设置为可见。

  3. 在删除按钮的onClick方法中添加逻辑以删除行。
  4. 代码:

    <ImageButton
        android:id="@+id/category_delete"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="50dp"
        android:background="#fff"
        android:layout_alignParentLeft="true"
        android:layout_marginRight="5dp"
        android:layout_marginTop="5dp"
        android:layout_marginBottom="5dp"
        android:src="@drawable/img_delete_category" />
    
    
    <EditText
        android:id="@+id/added_category_name"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:paddingTop="20dp"
        android:background="#fff"
        android:layout_alignParentRight="@+id/category_delete"
        android:textColor="#000"
        android:paddingLeft="10dp"
        android:fontFamily="Cabin-Regular"
        android:textSize="14dp"
        android:hint="category name"
        android:singleLine="true"
        android:layout_toRightOf="@+id/category_delete"
        android:layout_toEndOf="@+id/category_delete" />
    
    
    
    <ImageButton
        android:id="@+id/category_edit"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="50dp"
        android:background="#fff"
        android:layout_toLeftOf="@+id/unlock_image"
        android:layout_marginTop="5dp"
        android:layout_marginBottom="5dp"
        android:src="@drawable/img_editcategory" />
    
    
    <ImageButton
        android:id="@+id/unlock_image"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="50dp"
        android:layout_alignParentRight="true"
         android:layout_marginRight="5dp"
        android:layout_marginTop="5dp"
        android:background="#fff"
        android:layout_marginBottom="5dp"
        android:src="@drawable/img_unlocked" />
    <Button
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:text="Delete"
        android:textColor="#fff"
        android:visibility="visible"
        android:id="@+id/delete_btn"
        android:background="#FF0000"
    
        />
    

答案 1 :(得分:0)

这是一个很好的库AndroidSwipeLayout

希望这会对你有所帮助

答案 2 :(得分:0)

这是

的库
  1. 查看SwipeActionAdapter
  2. 查看SwipeMenuListView
  3. 同时检查此答案android listview slide left right