fix
lmw
2024-11-09 d1a9e3312387b6c47e6186af506787a8a66369d1
app/src/main/java/com/sinata/xqmuse/ui/mine/UserInfoActivity.kt
@@ -6,6 +6,9 @@
import android.os.Build
import android.os.Environment
import android.provider.Settings
import android.text.Editable
import android.text.TextWatcher
import androidx.core.os.bundleOf
import cn.sinata.xldutils.activity.SelectPhotoDialog
import cn.sinata.xldutils.gone
import cn.sinata.xldutils.utils.myToast
@@ -24,11 +27,11 @@
import org.greenrobot.eventbus.EventBus
import org.jetbrains.anko.startActivityForResult
class UserInfoActivity:TransparentStatusBarActivity() {
class UserInfoActivity:TransparentStatusBarActivity(){
    override fun setContentView() = R.layout.activity_user_info
    private var userInfo:UserInfo? = null
    private var changed = true
    private var changed = false
    override fun initClick() {
        iv_avatar.setOnClickListener {
@@ -39,16 +42,23 @@
            ChoosSexDialog.show(supportFragmentManager,object :StringCallback{
                override fun onResult(rst: String) {
                    userInfo?.gender = rst.toInt()
                    changed = true
                    tv_sex.text = if (userInfo?.gender == 1) "男" else if (userInfo?.gender == 2) "女" else if (userInfo?.gender == 3) "保密" else ""
                }
            })
        }
        tv_save.setOnClickListener {
            updateInfo()
        }
        tv_birth.clickDelay {
            val chooseBirthDialog = ChooseBirthDialog()
            chooseBirthDialog.arguments = bundleOf("data" to userInfo?.birthday)
            chooseBirthDialog.setCallback(object : ChooseBirthDialog.Callback {
                override fun onOk(s: String) {
                    userInfo?.birthday = s
                    changed = true
                    tv_birth.text = s
                }
            })
@@ -56,7 +66,7 @@
        }
        iv_back.setOnClickListener {
            onBackPressed()
            finish()
        }
    }
@@ -71,7 +81,7 @@
            data?.apply {
                iv_avatar.setImageURI(avatar)
                et_nick.setText(nickname)
                et_name.setText("") //todo
                et_name.setText(realname)
                et_sign.setText(signature)
                tv_sex.text = if (gender == 1) "男" else if (gender == 2) "女" else if (gender == 3) "保密" else ""
                tv_birth.text = birthday
@@ -86,28 +96,19 @@
        }
    }
    override fun onBackPressed() {
        if (changed)
            TipDialog.show(supportFragmentManager,"是否保存修改?",object :TipDialog.OnClickCallback{
                override fun onOk() {
                    updateInfo()
                }
                override fun onCancel() {
                    finish()
                }
            },"保存","不保存")
        else
            super.onBackPressed()
    }
    private fun updateInfo(){
        HttpManager.updateInfo(userInfo?.avatar,userInfo?.birthday,et_company.text.toString(),et_edu.text.toString(),et_mail.text.toString(),userInfo?.gender,et_homeland.text.toString(),
        HttpManager.updateInfo(userInfo?.birthday,et_company.text.toString(),et_edu.text.toString(),et_mail.text.toString(),userInfo?.gender,et_homeland.text.toString(),
        et_profess.text.toString(),et_location.text.toString(),et_nick.text.toString(),et_job.text.toString(),et_sign.text.toString(),et_name.text.toString()).request(this@UserInfoActivity,true){_,_->
            myToast("保存成功")
            setResult(RESULT_OK)
            finish()
        }
    }
    private fun updateAvatar(){
        HttpManager.updateUserAvatar(userInfo?.avatar?:"").request(this@UserInfoActivity,true){_,_->
            setResult(RESULT_OK)
        }
    }
@@ -117,6 +118,7 @@
            data.getStringExtra("path")!!.uploadWithCompress(this, object : StringCallback {
                override fun onResult(rst: String) {
                    userInfo?.avatar = rst
                    updateAvatar()
                    iv_avatar.setImageURI(rst)
                }
            })