完善新增开服信息
This commit is contained in:
7
app/src/main/java/com/gh/base/OnViewClickListener.java
Normal file
7
app/src/main/java/com/gh/base/OnViewClickListener.java
Normal file
@ -0,0 +1,7 @@
|
||||
package com.gh.base;
|
||||
|
||||
import android.view.View;
|
||||
|
||||
public interface OnViewClickListener {
|
||||
void onClick(View v, Object data);
|
||||
}
|
||||
@ -10,6 +10,7 @@ import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.facebook.drawee.view.SimpleDraweeView;
|
||||
import com.gh.base.OnViewClickListener;
|
||||
import com.gh.common.constant.Config;
|
||||
import com.gh.common.util.DataUtils;
|
||||
import com.gh.common.util.DialogUtils;
|
||||
@ -46,15 +47,17 @@ public class BindingAdapters {
|
||||
view.setImageURI(imageUrl);
|
||||
}
|
||||
|
||||
@BindingAdapter("addKaiFuView")
|
||||
public static void addKaiFuView(LinearLayout view, List<KaiFuCalendarEntity> list) {
|
||||
@BindingAdapter({"addKaiFuView", "clickListener"})
|
||||
public static void addKaiFuView(LinearLayout view, List<KaiFuCalendarEntity> list, OnViewClickListener listener) {
|
||||
if (list == null) return;
|
||||
view.removeAllViews();
|
||||
view.addView(LayoutInflater.from(view.getContext()).inflate(R.layout.kaifu_add_item_title, null));
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
View inflate = LayoutInflater.from(view.getContext()).inflate(R.layout.kaifu_add_item, null);
|
||||
KaifuAddItemBinding binding = KaifuAddItemBinding.bind(inflate);
|
||||
binding.setClickListener(listener);
|
||||
binding.setEntity(list.get(i));
|
||||
binding.setPosition(i);
|
||||
binding.setIsCloseBottom(list.size() - 1 == i);
|
||||
view.addView(inflate);
|
||||
}
|
||||
|
||||
@ -2,9 +2,9 @@ package com.gh.gamecenter.adapter.viewholder;
|
||||
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.view.View;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.ScrollView;
|
||||
import android.widget.TableLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.gh.base.BaseRecyclerViewHolder;
|
||||
@ -36,7 +36,7 @@ public class GameDetailKaiFuViewHolder extends BaseRecyclerViewHolder<GameDetail
|
||||
@BindView(R.id.gamedetail_kaifu_detail_time)
|
||||
public TextView detailTime;
|
||||
@BindView(R.id.gamedetail_kaifu_detail_list)
|
||||
public TableLayout detailList;
|
||||
public LinearLayout detailList;
|
||||
@BindView(R.id.gamedetail_kaifu_detail_sv)
|
||||
public ScrollView detailSv;
|
||||
@BindView(R.id.gamedetail_kaifu_des)
|
||||
|
||||
@ -10,6 +10,8 @@ import java.util.*
|
||||
*/
|
||||
class KaiFuCalendarEntity() : Parcelable {
|
||||
|
||||
var id : String? = null
|
||||
|
||||
var note: String? = null
|
||||
|
||||
var time: Long = 0
|
||||
@ -31,6 +33,7 @@ class KaiFuCalendarEntity() : Parcelable {
|
||||
}
|
||||
|
||||
override fun writeToParcel(dest: Parcel, flags: Int) {
|
||||
dest.writeString(this.id)
|
||||
dest.writeString(this.note)
|
||||
dest.writeLong(this.time)
|
||||
dest.writeString(this.type)
|
||||
@ -39,6 +42,7 @@ class KaiFuCalendarEntity() : Parcelable {
|
||||
}
|
||||
|
||||
constructor(source: Parcel) : this() {
|
||||
this.id = source.readString()
|
||||
this.note = source.readString()
|
||||
this.time = source.readLong()
|
||||
this.type = source.readString()
|
||||
|
||||
@ -20,13 +20,13 @@ import android.widget.TextView;
|
||||
import com.gh.common.util.DisplayUtils;
|
||||
import com.gh.common.util.StringUtils;
|
||||
import com.gh.gamecenter.R;
|
||||
import com.gh.gamecenter.SuggestionActivity;
|
||||
import com.gh.gamecenter.adapter.viewholder.GameDetailCalenderViewHolder;
|
||||
import com.gh.gamecenter.adapter.viewholder.GameDetailKaiFuViewHolder;
|
||||
import com.gh.gamecenter.databinding.KaifuDetailItemRowBinding;
|
||||
import com.gh.gamecenter.entity.CalendarEntity;
|
||||
import com.gh.gamecenter.entity.KaiFuCalendarEntity;
|
||||
import com.gh.gamecenter.eventbus.EBReuse;
|
||||
import com.gh.gamecenter.kaifu.add.KaiFuAddActivity;
|
||||
import com.gh.gamecenter.kaifu.amend.KaiFuAmendActivity;
|
||||
import com.gh.gamecenter.retrofit.Response;
|
||||
import com.lightgame.adapter.BaseRecyclerAdapter;
|
||||
@ -189,8 +189,9 @@ public class GameDetailKaiFuAdapter extends BaseRecyclerAdapter<ViewHolder> {
|
||||
viewHolder.kaifuSuggest.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
SuggestionActivity.startSuggestionActivity(mContext, 1, "service"
|
||||
, StringUtils.buildString(gameName, ",", suggestTime, "开服信息有误:"));
|
||||
mContext.startActivity(KaiFuAddActivity.Companion.getIntent(mContext));
|
||||
// SuggestionActivity.startSuggestionActivity(mContext, 1, "service"
|
||||
// , StringUtils.buildString(gameName, ",", suggestTime, "开服信息有误:"));
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
@ -2,11 +2,27 @@ package com.gh.gamecenter.kaifu.add
|
||||
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.graphics.Color
|
||||
import android.os.Bundle
|
||||
import android.support.v4.content.ContextCompat
|
||||
import android.view.Gravity
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.EditText
|
||||
import android.widget.FrameLayout
|
||||
import android.widget.TextView
|
||||
import com.bigkoo.pickerview.builder.TimePickerBuilder
|
||||
import com.bigkoo.pickerview.listener.OnTimeSelectListener
|
||||
import com.gh.base.BaseActivity
|
||||
import com.gh.base.OnViewClickListener
|
||||
import com.gh.common.util.GsonUtils
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.databinding.ActivityKaifuAddBinding
|
||||
import com.gh.gamecenter.entity.KaiFuCalendarEntity
|
||||
import com.lightgame.utils.Utils
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
|
||||
|
||||
class KaiFuAddActivity : BaseActivity() {
|
||||
|
||||
@ -29,6 +45,69 @@ class KaiFuAddActivity : BaseActivity() {
|
||||
setNavigationTitle("新增开服")
|
||||
mBinding = ActivityKaifuAddBinding.bind(mContentView)
|
||||
mBinding?.list = mList
|
||||
mBinding?.timeClickListener = OnViewClickListener { view: View, position: Any ->
|
||||
showDataPicker(OnTimeSelectListener { data: Date, _ ->
|
||||
run {
|
||||
if (view is TextView && position is Int) {
|
||||
if (position == 0) {
|
||||
|
||||
}
|
||||
mList[position].time = data.time
|
||||
view.text = SimpleDateFormat("yyyy年mm月dd日 hh:mm", Locale.CANADA).format(data.time)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
mBinding?.addPost?.setOnClickListener({
|
||||
Utils.log("========" + GsonUtils.getInstance().toJson(mList))
|
||||
|
||||
})
|
||||
val a = EditText(this)
|
||||
}
|
||||
|
||||
// 项目地址 ->https://github.com/Bigkoo/Android-PickerView/
|
||||
private fun showDataPicker(timeSelectListener: OnTimeSelectListener) {
|
||||
val selectedDate = Calendar.getInstance()
|
||||
val startDate = Calendar.getInstance()
|
||||
val endDate = Calendar.getInstance()
|
||||
val format = SimpleDateFormat("yyyy", Locale.CANADA)
|
||||
val curYeas = format.format(selectedDate.time).toInt()
|
||||
startDate.set(curYeas, 0, 1)
|
||||
endDate.set(curYeas + 1, 11, 31)
|
||||
|
||||
val pvTime = TimePickerBuilder(this, timeSelectListener)
|
||||
.setType(booleanArrayOf(true, true, true, true, true, false))
|
||||
.setCancelText("取消")
|
||||
.setSubmitText("确定")
|
||||
.setTitleSize(15)
|
||||
.setOutSideCancelable(false)
|
||||
.isCyclic(false)
|
||||
.setSubmitColor(ContextCompat.getColor(this, R.color.theme))
|
||||
.setCancelColor(ContextCompat.getColor(this, R.color.hint))
|
||||
.setTitleBgColor(Color.WHITE)
|
||||
.setBgColor(Color.WHITE)
|
||||
.setDate(selectedDate)
|
||||
.setRangDate(startDate, endDate)
|
||||
.setLabel("", "月", "日", "时", "分", "")
|
||||
.isCenterLabel(false)
|
||||
.isDialog(true)
|
||||
.setContentTextSize(15)
|
||||
.build()
|
||||
|
||||
val dialog = pvTime.dialog
|
||||
if (dialog != null) {
|
||||
val params = FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
|
||||
ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.BOTTOM)
|
||||
params.leftMargin = 0
|
||||
params.rightMargin = 0
|
||||
pvTime.dialogContainerLayout.layoutParams = params
|
||||
val dialogWindow = dialog.window
|
||||
if (dialogWindow != null) {
|
||||
dialogWindow.setWindowAnimations(com.bigkoo.pickerview.R.style.picker_view_slide_anim)
|
||||
dialogWindow.setGravity(Gravity.BOTTOM)
|
||||
}
|
||||
dialog.show()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -3,10 +3,13 @@ package com.gh.gamecenter.kaifu.amend
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import com.gh.base.BaseActivity
|
||||
import com.gh.common.util.GsonUtils
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.databinding.ActivityKaifuAmendBinding
|
||||
import com.gh.gamecenter.entity.KaiFuCalendarEntity
|
||||
import com.lightgame.utils.Utils
|
||||
|
||||
class KaiFuAmendActivity : BaseActivity() {
|
||||
|
||||
@ -19,14 +22,20 @@ class KaiFuAmendActivity : BaseActivity() {
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setNavigationTitle("修改开服")
|
||||
mServerEntity = intent.getParcelableExtra(KaiFuCalendarEntity.TAG)
|
||||
|
||||
mBinding = ActivityKaifuAmendBinding.bind(mContentView)
|
||||
mBinding?.entity = intent.getParcelableExtra(KaiFuCalendarEntity.TAG)
|
||||
mBinding?.entity = mServerEntity
|
||||
mBinding?.amendBtn?.setOnCheckedChangeListener({ _, b: Boolean ->
|
||||
if (b) mBinding?.deleteBtn?.isChecked = false
|
||||
})
|
||||
mBinding?.deleteBtn?.setOnCheckedChangeListener({ _, b: Boolean ->
|
||||
if (b) mBinding?.amendBtn?.isChecked = false
|
||||
})
|
||||
mBinding?.amendPost?.setOnClickListener(View.OnClickListener {
|
||||
Utils.log("==========WWW::" + GsonUtils.getInstance().toJson(mServerEntity!!))
|
||||
})
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
Reference in New Issue
Block a user