From 5325e22a184b53aadcc5e9552cb1ec54f9c8ad81 Mon Sep 17 00:00:00 2001 From: guoshen <3129367635@qq.com> Date: 星期六, 29 六月 2024 16:33:11 +0800 Subject: [PATCH] 加入了直播、会议功能 --- app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java | 285 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 285 insertions(+), 0 deletions(-) diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java new file mode 100644 index 0000000..00e4348 --- /dev/null +++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/MeetingStaDetailActivity.java @@ -0,0 +1,285 @@ +package com.application.zhangshi_app_android.ui.function; + +import android.content.Intent; +import android.widget.PopupWindow; + +import androidx.activity.result.ActivityResultLauncher; +import androidx.lifecycle.MutableLiveData; +import androidx.recyclerview.widget.GridLayoutManager; + +import com.android.app_base.base.BaseConfig; +import com.android.app_base.base.dialog.BaseDialog; +import com.android.app_base.base.dialog.WaitDialog; +import com.android.app_base.utils.Utils; +import com.application.zhangshi_app_android.BR; +import com.application.zhangshi_app_android.R; +import com.application.zhangshi_app_android.adapter.ElectronicFileAddAdapter; +import com.application.zhangshi_app_android.bean.MeetingStaBean; +import com.application.zhangshi_app_android.databinding.ActivityMeetingStaDetailBinding; +import com.application.zhangshi_app_android.ui.DLBaseActivity; + +import java.util.List; + + +/** + * @author Gss + * @date 2023.03.25. 16:00 + * @desc 瀹跺ぇ浜嬭 MeetingDetailActivity + */ +public class MeetingStaDetailActivity extends DLBaseActivity<ActivityMeetingStaDetailBinding, MeetingStaDetailActivityViewModel> { + private int type;// 0 鏌ョ湅鍙慨鏀瑰垹闄� 1 鏂板 2 鐩存帴淇敼 + private PopupWindow popupWindow; + private MutableLiveData<MeetingStaBean> beanLiveData; + private ElectronicFileAddAdapter adapter; + private BaseDialog mWaitDialog; + private ActivityResultLauncher<Intent> activityResultLauncher; + @Override + public int getLayoutId() { + return R.layout.activity_meeting_sta_detail; + } + + @Override + public int getVariableId() { + return BR.viewModel; + } + + @Override + public void initParam() { + type = getIntent().getIntExtra(BaseConfig.EXTRA_TYPE,0); + if (type == 0 || type == 2){ + MeetingStaBean bean = (MeetingStaBean) getIntent().getSerializableExtra("bean"); + if (bean !=null){ + viewModel.getBeanLiveData().setValue(bean); + } + } + } + + + + @Override + public void initView() { + adapter = new ElectronicFileAddAdapter(this); + GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 3); +// binding.rvImage.setLayoutManager(gridLayoutManager); +// binding.rvImage.setNestedScrollingEnabled(false); +// adapter.setOnChildClickListener(R.id.iv_delete, new BaseRVAdapter.OnChildClickListener() { +// @Override +// public void onChildClick(RecyclerView recyclerView, View childView, int position) { +// MeetingStaBean bean = viewModel.getBeanLiveData().getValue(); +// if (bean !=null){ +// List<String> urlList = Utils.splitString2List(bean.getUrl(),","); +// urlList.remove(adapter.getItem(position)); +// bean.setUrl(Utils.appendList2String(urlList,",")); +// } +// adapter.removeItem(position); +// viewModel.getBeanLiveData().setValue(bean); +// } +// }); +//// binding.rvImage.setAdapter(adapter); +// if (type == 1){ +// viewModel.getTypeLiveData().setValue(true); +// binding.titleBar.setTitle("鏂板瀹跺ぇ浜嬭"); +// binding.ivOperate.setOnClickListener(v -> { +// viewModel.add(); +// }); +// }else if (type == 0){ +// popupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate_delete,null)); +// popupWindow.getContentView().findViewById(R.id.tv_modify).setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// viewModel.getTypeLiveData().postValue(true); +// popupWindow.dismiss(); +// } +// }); +// viewModel.getTypeLiveData().postValue(false); +// }else if (type == 2){ +// viewModel.getTypeLiveData().postValue(true); +// +// } + + + +// binding.etDate1.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// DatePicker picker = getDatePicker(); +// picker.setTitle("閫夋嫨鏃堕棿"); +// picker.setOnDatePickedListener(new OnDatePickedListener() { +// @Override +// public void onDatePicked(int year, int month, int day) { +// String date = String.format(Locale.CHINA, "%d-%02d-%02d", year, month, day); +// binding.etDate1.setText(date); +// } +// }); +// picker.show(); +// } +// }); + +// binding.etDate2.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// DatePicker picker = getDatePicker(); +// picker.setTitle("閫夋嫨鏃堕棿"); +// picker.setOnDatePickedListener(new OnDatePickedListener() { +// @Override +// public void onDatePicked(int year, int month, int day) { +// String date = String.format(Locale.CHINA, "%d-%02d-%02d", year, month, day); +// binding.etDate2.setText(date); +// } +// }); +// picker.show(); +// } +// }); + +// binding.etTime1.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// TimePicker picker = getTimePicker(); +// picker.setTitle("閫夋嫨鏃堕棿"); +// picker.setOnTimePickedListener(new OnTimePickedListener() { +// +// @Override +// +// public void onTimePicked(int hour, int Minute,int second) { +//// second = '0'; +// String date = String.format(Locale.CHINA, "%d:%02d:%02d",hour,Minute,second); +// binding.etTime1.setText(date); +// } +// }); +// picker.show(); +// } +// }); + + + + +// binding.etTime2.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// TimePicker picker = getTimePicker(); +// picker.setTitle("閫夋嫨鏃堕棿"); +// picker.setOnTimePickedListener(new OnTimePickedListener() { +// @Override +// public void onTimePicked(int hour, int Minute, int second) { +// String date = String.format(Locale.CHINA, "%d:%02d:%02d",hour,Minute,second ); +// binding.etTime2.setText(date); +// } +// }); +// picker.show(); +// } +// }); + + + + + + +// activityResultLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() { +// @Override +// public void onActivityResult(ActivityResult result) { +// if (result.getResultCode() == Activity.RESULT_OK) { +// if (result.getData() == null){ +// return; +// } +// // 鑾峰彇閫変腑鐨勫涓枃浠剁殑 URI +// ClipData clipData = result.getData().getClipData(); +// if (clipData != null) { +// int itemCount = clipData.getItemCount(); +// for (int i = 0; i < itemCount; i++) { +// Uri uri = clipData.getItemAt(i).getUri(); +// // 浣跨敤閫変腑鐨勬枃浠� URI 杩涜鍚庣画鎿嶄綔锛屾瘮濡傝鍙栨枃浠跺唴瀹圭瓑 +// String path = GetFilePathFromUri.getFileAbsolutePath(getSelfActivity(),uri); +// if (path!=null){ +// viewModel.addUploadFile(path); +// MeetingStaBean bean = viewModel.getBeanLiveData().getValue(); +// if (bean !=null){ +// List<String> urlList = Utils.splitString2List(bean.getUrl(),","); +// urlList.add(path); +// bean.setUrl(Utils.appendList2String(urlList,",")); +// } +// viewModel.getBeanLiveData().setValue(bean); +// } +// } +// }else { +// // 鑾峰彇閫変腑鐨勫崟涓枃浠剁殑 URI +// Uri selectedFileUri = result.getData().getData(); +// String path = GetFilePathFromUri.getFileAbsolutePath(getSelfActivity(),selectedFileUri); +// if (path!=null){ +// viewModel.addUploadFile(path); +// MeetingStaBean bean = viewModel.getBeanLiveData().getValue(); +// if (bean !=null){ +// List<String> urlList = Utils.splitString2List(bean.getUrl(),","); +// urlList.add(path); +// bean.setUrl(Utils.appendList2String(urlList,",")); +// } +// viewModel.getBeanLiveData().setValue(bean); +// } +// } +// } +// } +// }); + + } + + @Override + public void initData() { +// beanLiveData.setValue=MeetingStaBean; + + } + + + @Override + public void initLiveDataObserve() { + viewModel.getBeanLiveData().observe(this, bean -> { + if (bean!=null){ + List<String> urlList = Utils.splitString2List(bean.getUrl(),","); + adapter.setData(urlList); + } + }); +// viewModel.getTypeLiveData().observe(this,operateType -> { +// if (operateType){ +// if (type == 1) { +// binding.ivOperate.setOnClickListener(v -> { +// viewModel.add(); +// }); +// }else { +// binding.ivOperate.setOnClickListener(v -> { +// viewModel.update(); +// }); +// } +// setIsEdited(true); +// }else { +// binding.ivOperate.setOnClickListener(v -> { +// popupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(this,85) +binding.ivOperate.getWidth(),0); +// }); +// setIsEdited(false); +// } +// }); + } + + public void setIsEdited(boolean isEdited){ + adapter.setIsEdited(isEdited); + } + + @Override + protected void dialogLoading() { + if (mWaitDialog == null) { + mWaitDialog = new WaitDialog.Builder(this) + // 娑堟伅鏂囨湰鍙互涓嶇敤濉啓 + .setMessage("姝e湪涓婁紶") + .create(); + } + if (!mWaitDialog.isShowing()) { + mWaitDialog.show(); + } + } + + @Override + protected void dialogDismiss() { + if (mWaitDialog != null && mWaitDialog.isShowing()) { + mWaitDialog.dismiss(); + mWaitDialog = null; + } + } + +} -- Gitblit v1.9.1