侧滑删除
This commit is contained in:
@@ -26,6 +26,7 @@ import com.ckkj.water.plan.entity.WaterPlanWeekEntity;
|
|||||||
import com.ckkj.water.plan.mvp.WaterPlanContract;
|
import com.ckkj.water.plan.mvp.WaterPlanContract;
|
||||||
import com.ckkj.water.plan.mvp.WaterPlanImpl;
|
import com.ckkj.water.plan.mvp.WaterPlanImpl;
|
||||||
import com.ckkj.water.plan.mvp.WaterPlanPresenter;
|
import com.ckkj.water.plan.mvp.WaterPlanPresenter;
|
||||||
|
import com.ckkj.water.utils.show.ToastUtil;
|
||||||
import com.ckkj.water.utils.time.ZYTimeUtils;
|
import com.ckkj.water.utils.time.ZYTimeUtils;
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.yanzhenjie.recyclerview.OnItemMenuClickListener;
|
import com.yanzhenjie.recyclerview.OnItemMenuClickListener;
|
||||||
@@ -33,6 +34,7 @@ import com.yanzhenjie.recyclerview.SwipeMenu;
|
|||||||
import com.yanzhenjie.recyclerview.SwipeMenuBridge;
|
import com.yanzhenjie.recyclerview.SwipeMenuBridge;
|
||||||
import com.yanzhenjie.recyclerview.SwipeMenuCreator;
|
import com.yanzhenjie.recyclerview.SwipeMenuCreator;
|
||||||
import com.yanzhenjie.recyclerview.SwipeMenuItem;
|
import com.yanzhenjie.recyclerview.SwipeMenuItem;
|
||||||
|
import com.yanzhenjie.recyclerview.SwipeRecyclerView;
|
||||||
import com.yanzhenjie.recyclerview.widget.DefaultItemDecoration;
|
import com.yanzhenjie.recyclerview.widget.DefaultItemDecoration;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -72,7 +74,7 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
|||||||
mWeekAdapter = new WaterPlanWeekAdapter_copy(mContext, R.layout.plan_period_item,list);
|
mWeekAdapter = new WaterPlanWeekAdapter_copy(mContext, R.layout.plan_period_item,list);
|
||||||
viewBinding.rvWeek.setAdapter(mWeekAdapter);
|
viewBinding.rvWeek.setAdapter(mWeekAdapter);
|
||||||
//周期对应的 时间配置
|
//周期对应的 时间配置
|
||||||
timeList = weekList.get(0).getTimeData();
|
List<WaterPlanWeekEntity.TimeDataBean> timeList = weekList.get(0).getTimeData();
|
||||||
mTimeAdapter = new WaterPlanTimeDataAdapter(mContext,R.layout.include_plan_time_item_layout,timeList);
|
mTimeAdapter = new WaterPlanTimeDataAdapter(mContext,R.layout.include_plan_time_item_layout,timeList);
|
||||||
viewBinding.rvTimes.setAdapter(mTimeAdapter);
|
viewBinding.rvTimes.setAdapter(mTimeAdapter);
|
||||||
initListener();
|
initListener();
|
||||||
@@ -87,11 +89,9 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
|||||||
deleteItem.setText("删除");
|
deleteItem.setText("删除");
|
||||||
deleteItem.setTextColor(mContext.getResources().getColor(R.color.white));
|
deleteItem.setTextColor(mContext.getResources().getColor(R.color.white));
|
||||||
deleteItem.setHeight(ViewGroup.LayoutParams.MATCH_PARENT);
|
deleteItem.setHeight(ViewGroup.LayoutParams.MATCH_PARENT);
|
||||||
deleteItem.setWidth((int) mContext.getResources().getDimension(R.dimen.dp_70));
|
deleteItem.setWidth((int) mContext.getResources().getDimension(R.dimen.dp_90));
|
||||||
// 各种文字和图标属性设置。
|
// 各种文字和图标属性设置。
|
||||||
rightMenu.addMenuItem(deleteItem); // 在Item右侧添加一个菜单。
|
rightMenu.addMenuItem(deleteItem); // 在Item右侧添加一个菜单。
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -100,12 +100,21 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
|||||||
OnItemMenuClickListener mItemMenuClickListener = new OnItemMenuClickListener() {
|
OnItemMenuClickListener mItemMenuClickListener = new OnItemMenuClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onItemClick(SwipeMenuBridge menuBridge, int position) {
|
public void onItemClick(SwipeMenuBridge menuBridge, int position) {
|
||||||
// 任何操作必须先关闭菜单,否则可能出现Item菜单打开状态错乱。
|
// 先关闭菜单
|
||||||
menuBridge.closeMenu();
|
menuBridge.closeMenu();
|
||||||
// 左侧还是右侧菜单:
|
// 左/右菜单
|
||||||
int direction = menuBridge.getDirection();
|
int direction = menuBridge.getDirection();
|
||||||
// 菜单在Item中的Position:
|
// 点击的是第几个菜单
|
||||||
int menuPosition = menuBridge.getPosition();
|
int menuPosition = menuBridge.getPosition();
|
||||||
|
// 只处理右侧菜单
|
||||||
|
if (direction == SwipeRecyclerView.RIGHT_DIRECTION) {
|
||||||
|
if (menuPosition == 0) {
|
||||||
|
weekList.get(mWeekAdapter.getmPos()).getTimeData().remove(position);
|
||||||
|
if(mTimeAdapter != null){
|
||||||
|
mTimeAdapter.notifyItemRemoved(position);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -142,6 +151,40 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
|||||||
mTimeAdapter.setNewData(timeList);
|
mTimeAdapter.setNewData(timeList);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
mTimeAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
|
||||||
|
switch (view.getId()){
|
||||||
|
case R.id.tv_select_time:
|
||||||
|
selectStartTime(position);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case R.id.tv_plan_duration:
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void selectStartTime(int position) {
|
||||||
|
boolean times[] = {false, false, false, true, true, false};
|
||||||
|
//时间选择器
|
||||||
|
TimePickerView pvTime = new TimePickerBuilder(mContext, new OnTimeSelectListener() {
|
||||||
|
@Override
|
||||||
|
public void onTimeSelect(Date date, View v) {
|
||||||
|
//用于提交接口
|
||||||
|
weekList.get(mWeekAdapter.getmPos()).getTimeData().get(position).
|
||||||
|
setStartTime(ZYTimeUtils.getStrTimeData_H_M(date));
|
||||||
|
mWeekAdapter.notifyItemChanged(position);
|
||||||
|
}
|
||||||
|
}).setType(times)
|
||||||
|
.setCancelColor(mContext.getColor(R.color.color_999999))
|
||||||
|
.setSubmitColor(mContext.getColor(R.color.color_zhu))
|
||||||
|
.setTextColorCenter(mContext.getColor(R.color.color_zhu))
|
||||||
|
.build();
|
||||||
|
pvTime.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setClick(View view) {
|
private void setClick(View view) {
|
||||||
@@ -157,25 +200,6 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
|||||||
weekList.get(selPos).getTimeData().add(timeData);
|
weekList.get(selPos).getTimeData().add(timeData);
|
||||||
mTimeAdapter.notifyItemInserted(weekList.get(selPos).getTimeData().size() - 1);
|
mTimeAdapter.notifyItemInserted(weekList.get(selPos).getTimeData().size() - 1);
|
||||||
break;
|
break;
|
||||||
case R.id.tv_select_time:
|
|
||||||
boolean times[] = {false, false, false, true, true, false};
|
|
||||||
//时间选择器
|
|
||||||
// TimePickerView pvTime = new TimePickerBuilder(mContext, new OnTimeSelectListener() {
|
|
||||||
// @Override
|
|
||||||
// public void onTimeSelect(Date date, View v) {
|
|
||||||
// viewBinding.tvSelectTime.setText(ZYTimeUtils.getStrTimeData_H_M(date));
|
|
||||||
// if(weekList != null){
|
|
||||||
// String startTime = ZYTimeUtils.getStrTimeData_H_M(date).trim();
|
|
||||||
// weekList.get(0).getWashCycleList().get(mWeekAdapter.getmPos()).setTime(startTime);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }).setType(times)
|
|
||||||
// .setCancelColor(mContext.getColor(R.color.color_999999))
|
|
||||||
// .setSubmitColor(mContext.getColor(R.color.color_zhu))
|
|
||||||
// .setTextColorCenter(mContext.getColor(R.color.color_zhu))
|
|
||||||
// .build();
|
|
||||||
// pvTime.show();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case R.id.tv_commit:
|
case R.id.tv_commit:
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -43,5 +43,7 @@ public class WaterPlanTimeDataAdapter extends BaseQuickAdapter<WaterPlanWeekEnti
|
|||||||
helper.setText(R.id.tv_plan_duration,"");
|
helper.setText(R.id.tv_plan_duration,"");
|
||||||
tvPlanDuration.setHint(mContext.getString(R.string.input_water_plan_time));
|
tvPlanDuration.setHint(mContext.getString(R.string.input_water_plan_time));
|
||||||
}
|
}
|
||||||
|
helper.addOnClickListener(R.id.tv_select_time);
|
||||||
|
helper.addOnClickListener(R.id.tv_plan_duration);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
<inset xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:insetRight="12dp">
|
||||||
|
|
||||||
|
<shape android:shape="rectangle">
|
||||||
|
|
||||||
<solid android:color="@color/color_e34d59"/>
|
<solid android:color="@color/color_e34d59"/>
|
||||||
<corners android:radius="8dp"/>
|
|
||||||
</shape>
|
<corners
|
||||||
|
android:radius="8dp"/>
|
||||||
|
|
||||||
|
</shape>
|
||||||
|
|
||||||
|
</inset>
|
||||||
Reference in New Issue
Block a user