效果图如下:
1、引用SwipeMenuLayout类,网上一搜一大堆
2、布局中引用SwipeMenuLayout作为父类,其子类只能包含连个View或者ViewGroup(一个作为内容展示,另一个作为侧滑内容)
代码如下:
<?xml version="1.0" encoding="utf-8"?>
<com.leixiansheng.swipemenulayout.SwipeMenuLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:context=".MainActivity">
<TextView
android:id="@+id/tv_content"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorAccent"
android:gravity="center_vertical"
android:text="我是内容"
android:textColor="#ffffffff"
android:textSize="16sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_delete1"
android:layout_width="100dp"
android:layout_height="50dp"
android:background="@color/colorPrimaryDark"
android:gravity="center"
android:text="删除1"
android:textColor="#ffffffff"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_delete2"
android:layout_width="100dp"
android:layout_height="50dp"
android:background="#D81A1A"
android:gravity="center"
android:text="删除2"
android:textColor="#ffffffff"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_delete3"
android:layout_width="100dp"
android:layout_height="50dp"
android:background="#070505"
android:gravity="center"
android:text="删除3"
android:textColor="#ffffffff"
android:textSize="16sp" />
</LinearLayout>
</com.leixiansheng.swipemenulayout.SwipeMenuLayout>
public class MainActivity extends AppCompatActivity {
private TextView tvContent;
private TextView tvDelete1;
private TextView tvDelete2;
private TextView tvDelete3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tvContent = findViewById(R.id.tv_content);
tvDelete1 = findViewById(R.id.tv_delete1);
tvDelete2 = findViewById(R.id.tv_delete2);
tvDelete3 = findViewById(R.id.tv_delete3);
tvContent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
toast(tvContent.getText().toString());
}
});
tvDelete1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
toast(tvDelete1.getText().toString());
}
});
tvDelete2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
toast(tvDelete2.getText().toString());
}
});
tvDelete3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
toast(tvDelete3.getText().toString());
}
});
}
private void toast(String str) {
Toast.makeText(this, str, Toast.LENGTH_SHORT).show();
}
}