侧滑删除
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.WaterPlanImpl;
|
||||
import com.ckkj.water.plan.mvp.WaterPlanPresenter;
|
||||
import com.ckkj.water.utils.show.ToastUtil;
|
||||
import com.ckkj.water.utils.time.ZYTimeUtils;
|
||||
import com.google.gson.Gson;
|
||||
import com.yanzhenjie.recyclerview.OnItemMenuClickListener;
|
||||
@@ -33,6 +34,7 @@ import com.yanzhenjie.recyclerview.SwipeMenu;
|
||||
import com.yanzhenjie.recyclerview.SwipeMenuBridge;
|
||||
import com.yanzhenjie.recyclerview.SwipeMenuCreator;
|
||||
import com.yanzhenjie.recyclerview.SwipeMenuItem;
|
||||
import com.yanzhenjie.recyclerview.SwipeRecyclerView;
|
||||
import com.yanzhenjie.recyclerview.widget.DefaultItemDecoration;
|
||||
|
||||
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);
|
||||
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);
|
||||
viewBinding.rvTimes.setAdapter(mTimeAdapter);
|
||||
initListener();
|
||||
@@ -87,11 +89,9 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
||||
deleteItem.setText("删除");
|
||||
deleteItem.setTextColor(mContext.getResources().getColor(R.color.white));
|
||||
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右侧添加一个菜单。
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
@@ -100,12 +100,21 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
||||
OnItemMenuClickListener mItemMenuClickListener = new OnItemMenuClickListener() {
|
||||
@Override
|
||||
public void onItemClick(SwipeMenuBridge menuBridge, int position) {
|
||||
// 任何操作必须先关闭菜单,否则可能出现Item菜单打开状态错乱。
|
||||
// 先关闭菜单
|
||||
menuBridge.closeMenu();
|
||||
// 左侧还是右侧菜单:
|
||||
// 左/右菜单
|
||||
int direction = menuBridge.getDirection();
|
||||
// 菜单在Item中的Position:
|
||||
// 点击的是第几个菜单
|
||||
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.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) {
|
||||
@@ -157,25 +200,6 @@ public class WaterConfigFragment_copy extends BaseFragment<WaterConfigFragmentLa
|
||||
weekList.get(selPos).getTimeData().add(timeData);
|
||||
mTimeAdapter.notifyItemInserted(weekList.get(selPos).getTimeData().size() - 1);
|
||||
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:
|
||||
break;
|
||||
|
||||
@@ -43,5 +43,7 @@ public class WaterPlanTimeDataAdapter extends BaseQuickAdapter<WaterPlanWeekEnti
|
||||
helper.setText(R.id.tv_plan_duration,"");
|
||||
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"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<solid android:color="@color/color_e34d59"/>
|
||||
<corners android:radius="8dp"/>
|
||||
</shape>
|
||||
<inset xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:insetRight="12dp">
|
||||
|
||||
<shape android:shape="rectangle">
|
||||
|
||||
<solid android:color="@color/color_e34d59"/>
|
||||
|
||||
<corners
|
||||
android:radius="8dp"/>
|
||||
|
||||
</shape>
|
||||
|
||||
</inset>
|
||||
Reference in New Issue
Block a user