package com.xianning.driver.ui.mine
|
|
import android.Manifest
|
import android.graphics.Bitmap
|
import android.os.Environment
|
import android.provider.MediaStore
|
import androidx.core.view.drawToBitmap
|
import cn.sinata.xldutils.utils.SpanBuilder
|
import com.tbruyelle.rxpermissions2.RxPermissions
|
import com.xianning.driver.R
|
import com.xianning.driver.base.MyApplication
|
import com.xianning.driver.base.MyBaseActivity
|
import com.xianning.driver.bean.InviteInfo
|
import com.xianning.driver.netUtls.Api
|
import com.xianning.driver.netUtls.callNet
|
import com.xianning.driver.netUtls.getMapByAny
|
import com.xianning.driver.utils.Cache.CacheKey
|
import com.xianning.driver.utils.glide.GlideUtil
|
import kotlinx.android.synthetic.main.activity_invite.*
|
import org.jetbrains.anko.startActivity
|
import org.jetbrains.anko.toast
|
import java.io.File
|
import java.io.FileOutputStream
|
|
class InviteActivity : MyBaseActivity() {
|
override fun setContentView() {
|
setContentView(R.layout.activity_invite)
|
}
|
|
override fun initView() {
|
setTitleText("邀请好友")
|
val userInfo = CacheKey.getUserInfo()
|
GlideUtil.loady(MyApplication.getInstance(),userInfo.avatar,iv_head)
|
tv_name.text = userInfo.name
|
callNet(Api.getCode, getMapByAny()){
|
val fromJson = gson.fromJson(it, InviteInfo::class.java)
|
tv_count.text = SpanBuilder.content("您已成功邀请 ${fromJson.data.inviteNumber} 位乘客")
|
.sizeSpan(7,7+fromJson.data.inviteNumber.length,18)
|
.colorSpan(this,7,7+fromJson.data.inviteNumber.length,R.color.end_red).build()
|
GlideUtil.load(MyApplication.getInstance(),fromJson.data.code,iv_code,0)
|
}
|
}
|
|
override fun setOnclick() {
|
tv_download.setOnClickListener {
|
RxPermissions(this).request(Manifest.permission.WRITE_EXTERNAL_STORAGE).subscribe {
|
if (it)
|
try {
|
val copyPath =
|
getExternalFilesDir(Environment.DIRECTORY_DCIM)!!.absolutePath + "/" + System.currentTimeMillis() + ".png"
|
val file = File(copyPath)
|
if (!file.exists()) {
|
file.createNewFile()
|
}
|
val fors = FileOutputStream(file)
|
iv_code.drawToBitmap()?.compress(Bitmap.CompressFormat.PNG, 0, fors)
|
fors.flush()
|
fors.close()
|
MediaStore.Images.Media.insertImage(this.contentResolver, file.absolutePath, copyPath, null);
|
toast("保存成功")
|
} catch (e: Exception) {
|
toast("保存失败")
|
}
|
else
|
toast("缺少文件存储权限")
|
}
|
}
|
|
tv_action.setOnClickListener {
|
startActivity<InviteRecordActivity>()
|
}
|
}
|
|
}
|