package com.kuanzhai.driver.ui.driver_server.adapter
|
|
import android.app.Activity
|
import android.content.Context
|
import android.os.Bundle
|
import android.view.Gravity
|
import android.view.View
|
import android.view.inputmethod.InputMethodManager
|
import android.widget.EditText
|
import androidx.fragment.app.FragmentManager
|
import cn.sinata.xldutils.utils.Utils
|
import cn.sinata.xldutils.utils.clickDelay
|
import cn.sinata.xldutils.utils.getContent
|
import cn.sinata.xldutils.utils.toast
|
import com.kuanzhai.driver.R
|
import com.kuanzhai.driver.ui.main.BaseDialogFragment
|
import kotlinx.android.synthetic.main.dialog_show_commend.*
|
import java.util.*
|
|
class ShowCommendDialog: BaseDialogFragment() {
|
|
var replyName = ""
|
|
override fun initView(view: View) {
|
showSoftInput(requireContext(),et_content)
|
}
|
|
override fun layout(): Int {
|
return R.layout.dialog_show_commend
|
}
|
|
|
override fun show(manager: FragmentManager, tag: String?) {
|
super.show(manager, tag)
|
}
|
|
|
|
|
|
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
super.onActivityCreated(savedInstanceState)
|
dialog?.window?.setGravity(Gravity.BOTTOM)
|
et_content.setText("")
|
et_content.hint = if (replyName.isNotEmpty()) "回复@$replyName" else "发表评论(最多150字)"
|
tv_send_commend.clickDelay {
|
dismissAllowingStateLoss()
|
}
|
tv_send_commend.clickDelay {
|
if (et_content.getContent().isEmpty()){
|
toast("请输入内容")
|
return@clickDelay
|
}
|
comment?.comment(et_content.getContent())
|
dismissAllowingStateLoss()
|
}
|
|
iv_close_pop.clickDelay {
|
dismissAllowingStateLoss()
|
}
|
|
}
|
|
var comment:Comment? = null
|
|
interface Comment{
|
fun comment(content:String)
|
}
|
|
/**
|
* 自动弹软键盘
|
*
|
* @param context
|
* @param et
|
*/
|
fun showSoftInput(context: Context, et: EditText) {
|
Timer().schedule(object : TimerTask() {
|
override fun run() {
|
(context as Activity).runOnUiThread(Runnable {
|
et.setFocusable(true)
|
et.setFocusableInTouchMode(true)
|
//请求获得焦点
|
et.requestFocus()
|
//调用系统输入法
|
val inputManager: InputMethodManager = et
|
.getContext()
|
.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
|
inputManager.showSoftInput(et, 0)
|
})
|
}
|
}, 200)
|
}
|
}
|