package com.igo.user.dialog import android.os.Bundle import android.view.Gravity import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.TextView import androidx.fragment.app.DialogFragment import com.igo.user.R import org.jetbrains.anko.matchParent import org.jetbrains.anko.support.v4.find import org.jetbrains.anko.wrapContent class ShareDialog: DialogFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { return inflater.inflate(R.layout.dialog_share,container,false) } private val isTrip by lazy { //true行程分享,短信显示 arguments?.getBoolean("isTrip",false)?:false } private val tv_title by lazy { find(R.id.tv_title) } private val tv_wx by lazy { find(R.id.tv_wx) } private val tv_moment by lazy { find(R.id.tv_moment) } private val tv_msg by lazy { find(R.id.tv_msg) } private val tv_wa by lazy { find(R.id.tv_wa) } private val tv_fb by lazy { find(R.id.tv_fb) } private val tv_x by lazy { find(R.id.tv_x) } private val iv_close by lazy { find(R.id.iv_close) } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setStyle(STYLE_NO_FRAME,cn.sinata.xldutils.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) tv_title.text = getString(if (isTrip) R.string.分享行程 else R.string.分享) iv_close.setOnClickListener { dismiss() } tv_wx.setOnClickListener { callback?.onOk(0) } tv_moment.setOnClickListener { callback?.onOk(1) } tv_msg.setOnClickListener { callback?.onOk(2) } tv_wa.setOnClickListener { callback?.onOk(3) } tv_fb.setOnClickListener { callback?.onOk(4) } tv_x.setOnClickListener { callback?.onOk(5) } } interface Callback{ fun onOk(way: Int) } private var callback: Callback? = null fun setCallback(callback: Callback){ this.callback = callback } }