fix
lmw
2024-11-09 d1a9e3312387b6c47e6186af506787a8a66369d1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
package com.sinata.xqmuse.ui.mine
 
import android.os.Bundle
import android.webkit.WebChromeClient
import android.webkit.WebSettings
import android.webkit.WebViewClient
import androidx.core.os.bundleOf
import cn.sinata.xldutils.activity.BaseActivity
import com.github.zackratos.ultimatebar.UltimateBar
import com.share.utils.ShareUtils
import com.sinata.xqmuse.R
import com.sinata.xqmuse.dialog.ShareDialog
import com.sinata.xqmuse.network.Apis
import com.sinata.xqmuse.network.HttpManager
import com.sinata.xqmuse.network.request
import com.sinata.xqmuse.utils.interfaces.StringCallback
import com.umeng.socialize.bean.SHARE_MEDIA
import kotlinx.android.synthetic.main.activity_share.*
import org.jetbrains.anko.backgroundColor
 
class ShareActivity:BaseActivity() {
    private val userId by lazy { intent.getStringExtra("userId") }
 
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_share)
        UltimateBar.with(this)
            .statusDark(true)
            .create().immersionBar() //沉浸状态栏
        val settings = webView.settings
        settings.javaScriptEnabled = true
        settings.javaScriptCanOpenWindowsAutomatically = true
        settings.defaultTextEncodingName = "utf-8"
        settings.domStorageEnabled = true
        settings.setSupportZoom(true)
//        settings.textZoom = 200
        settings.useWideViewPort = true
        settings.loadWithOverviewMode = true
        settings.layoutAlgorithm = WebSettings.LayoutAlgorithm.TEXT_AUTOSIZING
        webView.webChromeClient = object : WebChromeClient() {}
        webView.webViewClient = object : WebViewClient() {}
        webView.backgroundColor = 0
        webView.background.alpha = 0
        getShareInfo()
        iv_back.setOnClickListener { finish() }
        tv_action.setOnClickListener {
            val shareDialog = ShareDialog()
            shareDialog.arguments = bundleOf("isSave" to true)
            shareDialog.callback = object :StringCallback{
                override fun onResult(rst: String) {
                    if (rst == "wx"){
                        ShareUtils.share(this@ShareActivity,SHARE_MEDIA.WEIXIN,"分享内容","分享标题",Apis.SHARE_APP.format(userId),null,"")
                    }else if (rst == "circle"){
                        ShareUtils.share(this@ShareActivity,SHARE_MEDIA.WEIXIN_CIRCLE,"分享内容","分享标题",Apis.SHARE_APP.format(userId),null,"")
                    }else{
 
                    }
                }
            }
            shareDialog.show(supportFragmentManager,"share")
        }
    }
 
    private fun getShareInfo(){
        HttpManager.shareInfo().request(this){_,data->
            data?.apply {
                iv_code.setImageURI(qrCode)
                val sHead =
                    "<html><head><meta name=\"viewport\" content=\"width=device-width, " + "initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes\" />" + "<style>img{max-width:100% !important;height:auto !important;}</style>" + "<style>body{max-width:100% !important;}</style>" + "</head><body>"
                webView!!.loadDataWithBaseURL(
                    null,
                    sHead + rules,
                    "text/html",
                    "utf-8",
                    null
                )
                iv_share.setImageURI(poster)
            }
        }
    }
 
}