1:修改时间选择框,根据需要,展示时分秒和不显示时分秒
2:修改展示设备id,在头部信息中,使用第三方的获取设备唯一id 3:优化群聊成员列表展示 4:修改房间封面,上传图片的时候,需要裁剪 5:添加营业时间展示 6:pk修改开始的时候,选择时间去掉1分钟 7:修改声网,添加声卡开关
This commit is contained in:
@@ -317,6 +317,7 @@ public class Constants {
|
||||
public static final String POST_APPLY_SONG = "/api/RoomSong/apply_song";//申请点歌
|
||||
public static final String POST_AGREE_SONG = "/api/RoomSong/agree_song";//同意、拒绝点歌
|
||||
public static final String GET_BLIND_BOX_STATUS = "/api/BlindBoxTurntable/blind_box_status";//盲盒转盘状态
|
||||
public static final String SET_ROOM_BUSINESS_TIME = "/api/Room/set_room_business_time";//设置房间的营业时间
|
||||
public static final String POST_SONG_LIST = "/api/RoomSong/song_list";//获取已点歌曲
|
||||
public static final String POST_SONG = "/api/RoomSong/song";//点歌
|
||||
public static final String POST_UP_SONG = "/api/RoomSong/up_song";//移动歌曲
|
||||
@@ -411,6 +412,7 @@ public class Constants {
|
||||
public static final String GET_INDEX_RECOMMEND_ROOM = "/api/Index/index_recommend_room";//首页弹窗推荐房间
|
||||
public static final String GET_DAY_DROP_GIFT = "/api/Activities/day_drop_gift";//天降好礼列表接口(弹框)
|
||||
public static final String postRoomSwToken = "/api/Room/update_user_sw_token";//获取用户声网token
|
||||
public static final String POST_CLOSE_PK_MIC = "/api/RoomPk/close_pk_mic";//PK闭麦
|
||||
public static final String POST_CANCEL_USER_DECORATE = "/api/Decorate/cancel_user_decorate";//取消装扮
|
||||
public static final String GET_THEME_DATA = "/api/Theme/get_theme_data";//主题接口
|
||||
public static final String START_FRIEND = "/api/Friend/start_friend";//点击开始按钮 交友房
|
||||
|
||||
@@ -20,6 +20,9 @@ import java.util.Date;
|
||||
public class DoubleTimePickerBottomSheet extends BottomSheetDialogFragment {
|
||||
|
||||
private OnTimeRangeSelectedListener listener;
|
||||
private boolean showTime = true; // 默认显示时分秒
|
||||
private boolean showDate = true; // 默认显示日期
|
||||
private boolean showSeconds = true; // 默认显示秒
|
||||
|
||||
public interface OnTimeRangeSelectedListener {
|
||||
void onTimeRangeSelected(Date startDate, Date endDate);
|
||||
@@ -28,6 +31,54 @@ public class DoubleTimePickerBottomSheet extends BottomSheetDialogFragment {
|
||||
public void setOnTimeRangeSelectedListener(OnTimeRangeSelectedListener listener) {
|
||||
this.listener = listener;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置是否显示时分秒
|
||||
* @param showTime true显示年月日时分秒,false只显示年月日
|
||||
*/
|
||||
public void setShowTime(boolean showTime) {
|
||||
this.showTime = showTime;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置是否显示日期
|
||||
* @param showDate true显示日期,false只显示时间
|
||||
*/
|
||||
public void setShowDate(boolean showDate) {
|
||||
this.showDate = showDate;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置是否显示秒
|
||||
* @param showSeconds true显示秒,false不显示秒
|
||||
*/
|
||||
public void setShowSeconds(boolean showSeconds) {
|
||||
this.showSeconds = showSeconds;
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建实例
|
||||
* @param showTime true显示年月日时分秒,false只显示年月日
|
||||
* @return DoubleTimePickerBottomSheet实例
|
||||
*/
|
||||
public static DoubleTimePickerBottomSheet newInstance(boolean showTime) {
|
||||
DoubleTimePickerBottomSheet fragment = new DoubleTimePickerBottomSheet();
|
||||
fragment.setShowTime(showTime);
|
||||
return fragment;
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建实例
|
||||
* @param showTime true显示年月日时分秒,false只显示年月日
|
||||
* @param showDate true显示日期,false只显示时间
|
||||
* @return DoubleTimePickerBottomSheet实例
|
||||
*/
|
||||
public static DoubleTimePickerBottomSheet newInstance(boolean showTime, boolean showDate) {
|
||||
DoubleTimePickerBottomSheet fragment = new DoubleTimePickerBottomSheet();
|
||||
fragment.setShowTime(showTime);
|
||||
fragment.setShowDate(showDate);
|
||||
return fragment;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
@@ -52,17 +103,77 @@ public class DoubleTimePickerBottomSheet extends BottomSheetDialogFragment {
|
||||
WheelTimePicker wheelStartTime = view.findViewById(R.id.wheel_start_time);
|
||||
WheelDatePicker wheelEndDate = view.findViewById(R.id.wheel_end_date);
|
||||
WheelTimePicker wheelEndTime = view.findViewById(R.id.wheel_end_time);
|
||||
|
||||
// 根据showDate和showTime参数控制日期和时间选择器的显示和布局
|
||||
if (showDate && showTime) {
|
||||
// 显示日期和时间时,使用默认布局
|
||||
wheelStartDate.setVisibility(View.VISIBLE);
|
||||
wheelStartTime.setVisibility(View.VISIBLE);
|
||||
wheelEndDate.setVisibility(View.VISIBLE);
|
||||
wheelEndTime.setVisibility(View.VISIBLE);
|
||||
|
||||
// 重置日期选择器的布局参数为默认值
|
||||
ViewGroup.LayoutParams startDateParams = wheelStartDate.getLayoutParams();
|
||||
startDateParams.width = ViewGroup.LayoutParams.WRAP_CONTENT;
|
||||
wheelStartDate.setLayoutParams(startDateParams);
|
||||
|
||||
ViewGroup.LayoutParams endDateParams = wheelEndDate.getLayoutParams();
|
||||
endDateParams.width = ViewGroup.LayoutParams.WRAP_CONTENT;
|
||||
wheelEndDate.setLayoutParams(endDateParams);
|
||||
} else if (showDate && !showTime) {
|
||||
// 只显示日期时,隐藏时间选择器并让日期选择器铺满宽度
|
||||
wheelStartTime.setVisibility(View.GONE);
|
||||
wheelEndTime.setVisibility(View.GONE);
|
||||
|
||||
// 设置日期选择器铺满宽度
|
||||
ViewGroup.LayoutParams startDateParams = wheelStartDate.getLayoutParams();
|
||||
startDateParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
|
||||
wheelStartDate.setLayoutParams(startDateParams);
|
||||
|
||||
ViewGroup.LayoutParams endDateParams = wheelEndDate.getLayoutParams();
|
||||
endDateParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
|
||||
wheelEndDate.setLayoutParams(endDateParams);
|
||||
} else if (!showDate && showTime) {
|
||||
// 只显示时间时,隐藏日期选择器并让时间选择器铺满宽度
|
||||
wheelStartDate.setVisibility(View.GONE);
|
||||
wheelStartTime.setVisibility(View.VISIBLE);
|
||||
wheelEndDate.setVisibility(View.GONE);
|
||||
wheelEndTime.setVisibility(View.VISIBLE);
|
||||
|
||||
// 设置时间选择器铺满宽度
|
||||
ViewGroup.LayoutParams startTimeParams = wheelStartTime.getLayoutParams();
|
||||
startTimeParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
|
||||
wheelStartTime.setLayoutParams(startTimeParams);
|
||||
|
||||
ViewGroup.LayoutParams endTimeParams = wheelEndTime.getLayoutParams();
|
||||
endTimeParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
|
||||
wheelEndTime.setLayoutParams(endTimeParams);
|
||||
}
|
||||
|
||||
// 默认设置当前时间
|
||||
Calendar startCal = Calendar.getInstance();
|
||||
wheelStartDate.init(startCal.get(Calendar.YEAR), startCal.get(Calendar.MONTH), startCal.get(Calendar.DAY_OF_MONTH));
|
||||
wheelStartTime.init(startCal.get(Calendar.HOUR_OF_DAY), startCal.get(Calendar.MINUTE),startCal.get(Calendar.SECOND));
|
||||
if (showDate) {
|
||||
wheelStartDate.init(startCal.get(Calendar.YEAR), startCal.get(Calendar.MONTH), startCal.get(Calendar.DAY_OF_MONTH));
|
||||
}
|
||||
if (showTime) {
|
||||
wheelStartTime.init(startCal.get(Calendar.HOUR_OF_DAY), startCal.get(Calendar.MINUTE), showSeconds ? startCal.get(Calendar.SECOND) : 0);
|
||||
wheelStartTime.setShowSeconds(showSeconds);
|
||||
}
|
||||
|
||||
// 设置默认结束时间略晚于开始时间
|
||||
Calendar endCal = (Calendar) startCal.clone();
|
||||
endCal.add(Calendar.HOUR, 1);
|
||||
wheelEndDate.init(endCal.get(Calendar.YEAR), endCal.get(Calendar.MONTH), endCal.get(Calendar.DAY_OF_MONTH));
|
||||
wheelEndTime.init(endCal.get(Calendar.HOUR_OF_DAY), endCal.get(Calendar.MINUTE),endCal.get(Calendar.SECOND));
|
||||
if (showTime) {
|
||||
endCal.add(Calendar.HOUR, 1);
|
||||
} else {
|
||||
endCal.add(Calendar.DAY_OF_MONTH, 1);
|
||||
}
|
||||
if (showDate) {
|
||||
wheelEndDate.init(endCal.get(Calendar.YEAR), endCal.get(Calendar.MONTH), endCal.get(Calendar.DAY_OF_MONTH));
|
||||
}
|
||||
if (showTime) {
|
||||
wheelEndTime.init(endCal.get(Calendar.HOUR_OF_DAY), endCal.get(Calendar.MINUTE), showSeconds ? endCal.get(Calendar.SECOND) : 0);
|
||||
wheelEndTime.setShowSeconds(showSeconds);
|
||||
}
|
||||
|
||||
// 取消按钮
|
||||
view.findViewById(R.id.btn_cancel).setOnClickListener(v -> dismiss());
|
||||
@@ -70,16 +181,36 @@ public class DoubleTimePickerBottomSheet extends BottomSheetDialogFragment {
|
||||
// 确定按钮
|
||||
view.findViewById(R.id.btn_sure).setOnClickListener(v -> {
|
||||
Calendar start = Calendar.getInstance();
|
||||
start.set(wheelStartDate.getYear(), wheelStartDate.getMonth(), wheelStartDate.getDay(),
|
||||
wheelStartTime.getHour(), wheelStartTime.getMinute(), wheelStartTime.getSecond());
|
||||
|
||||
Calendar end = Calendar.getInstance();
|
||||
end.set(wheelEndDate.getYear(), wheelEndDate.getMonth(), wheelEndDate.getDay(),
|
||||
wheelEndTime.getHour(), wheelEndTime.getMinute(), wheelEndTime.getSecond());
|
||||
|
||||
if (end.getTime().before(start.getTime())) {
|
||||
Toast.makeText(requireContext(), "结束时间不能早于开始时间", Toast.LENGTH_SHORT).show();
|
||||
return;
|
||||
|
||||
if (showDate && showTime) {
|
||||
// 显示日期和时间
|
||||
start.set(wheelStartDate.getYear(), wheelStartDate.getMonth(), wheelStartDate.getDay(),
|
||||
wheelStartTime.getHour(), wheelStartTime.getMinute(), wheelStartTime.getSecond());
|
||||
end.set(wheelEndDate.getYear(), wheelEndDate.getMonth(), wheelEndDate.getDay(),
|
||||
wheelEndTime.getHour(), wheelEndTime.getMinute(), wheelEndTime.getSecond());
|
||||
} else if (showDate && !showTime) {
|
||||
// 只显示日期
|
||||
start.set(wheelStartDate.getYear(), wheelStartDate.getMonth(), wheelStartDate.getDay(),
|
||||
0, 0, 0);
|
||||
end.set(wheelEndDate.getYear(), wheelEndDate.getMonth(), wheelEndDate.getDay(),
|
||||
23, 59, 59);
|
||||
} else if (!showDate && showTime) {
|
||||
// 只显示时间,使用当前日期
|
||||
int currentYear = start.get(Calendar.YEAR);
|
||||
int currentMonth = start.get(Calendar.MONTH);
|
||||
int currentDay = start.get(Calendar.DAY_OF_MONTH);
|
||||
|
||||
start.set(currentYear, currentMonth, currentDay,
|
||||
wheelStartTime.getHour(), wheelStartTime.getMinute(), wheelStartTime.getSecond());
|
||||
end.set(currentYear, currentMonth, currentDay,
|
||||
wheelEndTime.getHour(), wheelEndTime.getMinute(), wheelEndTime.getSecond());
|
||||
}
|
||||
if ((showDate && showTime) || (showDate && !showTime) ) {
|
||||
if (end.getTime().before(start.getTime())) {
|
||||
Toast.makeText(requireContext(), "结束时间不能早于开始时间", Toast.LENGTH_SHORT).show();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (listener != null) {
|
||||
|
||||
@@ -8,6 +8,7 @@ import android.widget.NumberPicker;
|
||||
public class WheelTimePicker extends LinearLayout {
|
||||
|
||||
private NumberPicker hourPicker, minutePicker, secondPicker;
|
||||
private boolean showSeconds = true; // 默认显示秒
|
||||
|
||||
public WheelTimePicker(Context context) {
|
||||
this(context, null);
|
||||
@@ -33,6 +34,9 @@ public class WheelTimePicker extends LinearLayout {
|
||||
addView(hourPicker);
|
||||
addView(minutePicker);
|
||||
addView(secondPicker);
|
||||
|
||||
// 根据showSeconds参数决定是否显示秒选择器
|
||||
secondPicker.setVisibility(showSeconds ? VISIBLE : GONE);
|
||||
|
||||
// 设置小时范围
|
||||
hourPicker.setMinValue(0);
|
||||
@@ -64,4 +68,15 @@ public class WheelTimePicker extends LinearLayout {
|
||||
public int getSecond() {
|
||||
return secondPicker.getValue();
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置是否显示秒
|
||||
* @param showSeconds true显示秒,false不显示秒
|
||||
*/
|
||||
public void setShowSeconds(boolean showSeconds) {
|
||||
this.showSeconds = showSeconds;
|
||||
if (secondPicker != null) {
|
||||
secondPicker.setVisibility(showSeconds ? VISIBLE : GONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -216,7 +216,7 @@ public class RewardGiftDialogFragment extends BaseMvpDialogFragment<RewardGiftPr
|
||||
mBinding.viewPager.setAdapter(new MyFragmentPagerAdapter(getChildFragmentManager(), giftLabelBeans, fragmentList, ""));
|
||||
mBinding.slidingTabLayout.setViewPager(mBinding.viewPager);
|
||||
mBinding.slidingTabLayout.setCurrentTab(0);
|
||||
refreshCurrentGiftFragment(giftLabelBeans.get(0).getId(), 2, "");
|
||||
refreshCurrentGiftFragment(giftLabelBeans.get(0).getId(), 2, "5");
|
||||
mBinding.viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
|
||||
@Override
|
||||
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
|
||||
@@ -226,7 +226,7 @@ public class RewardGiftDialogFragment extends BaseMvpDialogFragment<RewardGiftPr
|
||||
@Override
|
||||
public void onPageSelected(int position) {
|
||||
// 当页面切换时,控制 tv_bb_qs 按钮的显示
|
||||
refreshCurrentGiftFragment(giftLabelBeans.get(position).getId(), 2, "");
|
||||
refreshCurrentGiftFragment(giftLabelBeans.get(position).getId(), 2, "5");
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -236,9 +236,9 @@ public class RewardGiftDialogFragment extends BaseMvpDialogFragment<RewardGiftPr
|
||||
});
|
||||
}
|
||||
|
||||
private void refreshCurrentGiftFragment(String id, int type, String roomId) {
|
||||
private void refreshCurrentGiftFragment(String id, int status, String type) {
|
||||
if (getCurrentGiftFragment() != null) {
|
||||
getCurrentGiftFragment().loadDataIfNeeded(id, type, roomId);
|
||||
getCurrentGiftFragment().loadDataIfNeeded(id, status, type);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user