package com.kuanzhai.user.dialog
|
|
import android.os.Bundle
|
import android.view.Gravity
|
import android.view.LayoutInflater
|
import android.view.View
|
import android.view.ViewGroup
|
import androidx.fragment.app.DialogFragment
|
import cn.sinata.xldutils.activity.BaseActivity
|
import cn.sinata.xldutils.clickDelay
|
import cn.sinata.xldutils.utils.myToast
|
import cn.sinata.xldutils.visible
|
import com.kuanzhai.user.R
|
import com.kuanzhai.user.interfaces.StringCallback
|
import com.kuanzhai.user.network.HttpManager
|
import com.kuanzhai.user.network.request
|
import kotlinx.android.synthetic.main.dialog_comment.*
|
import kotlinx.android.synthetic.main.dialog_seat.*
|
import org.jetbrains.anko.imageResource
|
import org.jetbrains.anko.matchParent
|
import org.jetbrains.anko.wrapContent
|
|
class CommentDialog : DialogFragment() {
|
private val id by lazy { //评论项目id
|
arguments?.getLong("id")?:0L
|
}
|
private val type by lazy { //评论项目类型
|
arguments?.getInt("type")?:0
|
}
|
private val commentId by lazy { //被回复评论id,可为空,为空表示一级评论
|
arguments?.getLong("commentId")
|
}
|
private val replyUserId by lazy { //被回复用户id,可为空,为空表示二级评论,不为空表示回复二级评论
|
arguments?.getLong("replyUserId")
|
}
|
|
|
|
override fun onCreateView(
|
inflater: LayoutInflater,
|
container: ViewGroup?,
|
savedInstanceState: Bundle?
|
): View? {
|
return inflater.inflate(R.layout.dialog_comment, container, false)
|
}
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
super.onCreate(savedInstanceState)
|
setStyle(STYLE_NO_FRAME, R.style.Dialog)
|
}
|
|
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
super.onActivityCreated(savedInstanceState)
|
dialog?.window?.setLayout(matchParent, wrapContent)
|
dialog?.window?.setGravity(Gravity.BOTTOM)
|
dialog?.setCanceledOnTouchOutside(true)
|
}
|
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
super.onViewCreated(view, savedInstanceState)
|
if (commentId!=null&&commentId!=0L){
|
et_content.hint = "回复@${arguments?.getString("name")}"
|
}
|
iv_close.setOnClickListener { dismissAllowingStateLoss() }
|
tv_send.clickDelay {
|
val toString = et_content.text.toString()
|
if (toString.isEmpty())
|
myToast("请输入评论内容")
|
else{
|
HttpManager.insertComment(id,type,toString,if (commentId == 0L) null else commentId,if (replyUserId == 0L) null else replyUserId).request(requireActivity() as BaseActivity){_,_->
|
myToast("评论成功")
|
dismissAllowingStateLoss()
|
callback?.onRlt("")
|
}
|
}
|
}
|
}
|
|
private var callback: StringCallback? = null
|
|
fun setCallback(callback: StringCallback) {
|
this.callback = callback
|
}
|
}
|