Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

请问一下怎么取消预览模式 #9

Open
GGWON opened this issue Nov 4, 2019 · 8 comments
Open

请问一下怎么取消预览模式 #9

GGWON opened this issue Nov 4, 2019 · 8 comments

Comments

@GGWON
Copy link

GGWON commented Nov 4, 2019

我看你是用的richEditor.loadRichEditorCode(html);来进行加载html并且作为预览模式,但是之后我想继续编辑怎么办呢?

@GGWON
Copy link
Author

GGWON commented Nov 4, 2019

还有,希望大大如果有时间可以写一下判断当前选中的文字是否斜体,是否粗体这种判断等等。

@RexSuper
Copy link
Owner

RexSuper commented Nov 5, 2019

我看你是用的richEditor.loadRichEditorCode(html);来进行加载html并且作为预览模式,但是之后我想继续编辑怎么办呢?

继续编辑有两种 一种是未发布,那直接finish 返回去就行了,另一种是将所有html生成string上传到服务器后续通过http得到加载,直接richEditor.setHtml就行了。他本质就是个webview,此时相当于加载一个静态网页 直接调用setHtml

public void setHtml(String contents) { if (contents == null) { contents = ""; } try { exec("javascript:RE.setHtml('" + URLEncoder.encode(contents, "UTF-8") + "');"); } catch (UnsupportedEncodingException e) { // No handling } mContents = contents; }

@RexSuper
Copy link
Owner

RexSuper commented Nov 5, 2019

还有,希望大大如果有时间可以写一下判断当前选中的文字是否斜体,是否粗体这种判断等等。

这种简单的 内部是有的 建议以library的方式集成自己可以修改

` editor.webChromeClient = object : WebChromeClient() {
override fun onConsoleMessage(message: String?, lineNumber: Int, sourceID: String?) {
super.onConsoleMessage(message, lineNumber, sourceID)
Log.i("rex", "message:" + message)
try {
// console.log(item.style["font-size"]+"|"+item.getAttribute("color")+"|"+document.queryCommandState('bold'))
message?.run {
if (contains("|")) {
val split = split("|")
Log.i("rex", "onConsoleMessage:" + split.toString())
isBold = split[2].toBoolean()
setSbColor(isBold, ifvBold);
if (TextUtils.isEmpty(split[0])) {
showInputFontSizePopView.updateUIChoose(15)
} else {
val fontSize = split[0].replace("px", "").toInt();
showInputFontSizePopView.updateUIChoose(fontSize)
Log.i("rex", "fontSize:" + fontSize)
}

                        if (TextUtils.isEmpty(split[1])) {
                            showInputColorPopView.updateUIChoose(CustomRichEditor.getDefaultTextColor())
                        } else {
                            showInputColorPopView.updateUIChoose(Color.parseColor(split[1]))
                            Log.i("rex", "color:" + split[1])
                        }


                    }
                }
            } catch (e: Exception) {
                Log.i("rex", "message:" + message)
            }

        }

    }`

@GGWON
Copy link
Author

GGWON commented Nov 5, 2019

还有,希望大大如果有时间可以写一下判断当前选中的文字是否斜体,是否粗体这种判断等等。

这种简单的 内部是有的 建议以library的方式集成自己可以修改

` editor.webChromeClient = object : WebChromeClient() {
override fun onConsoleMessage(message: String?, lineNumber: Int, sourceID: String?) {
super.onConsoleMessage(message, lineNumber, sourceID)
Log.i("rex", "message:" + message)
try {
// console.log(item.style["font-size"]+"|"+item.getAttribute("color")+"|"+document.queryCommandState('bold'))
message?.run {
if (contains("|")) {
val split = split("|")
Log.i("rex", "onConsoleMessage:" + split.toString())
isBold = split[2].toBoolean()
setSbColor(isBold, ifvBold);
if (TextUtils.isEmpty(split[0])) {
showInputFontSizePopView.updateUIChoose(15)
} else {
val fontSize = split[0].replace("px", "").toInt();
showInputFontSizePopView.updateUIChoose(fontSize)
Log.i("rex", "fontSize:" + fontSize)
}

                        if (TextUtils.isEmpty(split[1])) {
                            showInputColorPopView.updateUIChoose(CustomRichEditor.getDefaultTextColor())
                        } else {
                            showInputColorPopView.updateUIChoose(Color.parseColor(split[1]))
                            Log.i("rex", "color:" + split[1])
                        }


                    }
                }
            } catch (e: Exception) {
                Log.i("rex", "message:" + message)
            }

        }

    }`

嗯我去试试,另外反馈一个小bug,只能从整个文件管理器或者谷歌相册插入图片,从本机相册插入图片不能显示。可能因为我是android10吧,算了,忽略吧。

@RexSuper
Copy link
Owner

RexSuper commented Nov 5, 2019

还有,希望大大如果有时间可以写一下判断当前选中的文字是否斜体,是否粗体这种判断等等。

这种简单的 内部是有的 建议以library的方式集成自己可以修改
` editor.webChromeClient = object : WebChromeClient() {
override fun onConsoleMessage(message: String?, lineNumber: Int, sourceID: String?) {
super.onConsoleMessage(message, lineNumber, sourceID)
Log.i("rex", "message:" + message)
try {
// console.log(item.style["font-size"]+"|"+item.getAttribute("color")+"|"+document.queryCommandState('bold'))
message?.run {
if (contains("|")) {
val split = split("|")
Log.i("rex", "onConsoleMessage:" + split.toString())
isBold = split[2].toBoolean()
setSbColor(isBold, ifvBold);
if (TextUtils.isEmpty(split[0])) {
showInputFontSizePopView.updateUIChoose(15)
} else {
val fontSize = split[0].replace("px", "").toInt();
showInputFontSizePopView.updateUIChoose(fontSize)
Log.i("rex", "fontSize:" + fontSize)
}

                        if (TextUtils.isEmpty(split[1])) {
                            showInputColorPopView.updateUIChoose(CustomRichEditor.getDefaultTextColor())
                        } else {
                            showInputColorPopView.updateUIChoose(Color.parseColor(split[1]))
                            Log.i("rex", "color:" + split[1])
                        }


                    }
                }
            } catch (e: Exception) {
                Log.i("rex", "message:" + message)
            }

        }

    }`

嗯我去试试,另外反馈一个小bug,只能从整个文件管理器或者谷歌相册插入图片,从本机相册插入图片不能显示。可能因为我是android10吧,算了,忽略吧。

自己写一个图片选择 插入也行啊 无非就是绝对路径和Uri的问题 你打印一下 看文件是否存在

@Duanjiadong
Copy link

还有,希望大大如果有时间可以写一下判断当前选中的文字是否斜体,是否粗体这种判断等等。

兄弟你这个解决没?解决了分享下,,

@GGWON
Copy link
Author

GGWON commented Dec 6, 2019

还有,希望大大如果有时间可以写一下判断当前选中的文字是否斜体,是否粗体这种判断等等。

兄弟你这个解决没?解决了分享下,,

你说判断字体是否为斜体吗?没解决。。

@Duanjiadong
Copy link

还有,希望大大如果有时间可以写一下判断当前选中的文字是否斜体,是否粗体这种判断等等。

兄弟你这个解决没?解决了分享下,,

你说判断字体是否为斜体吗?没解决。。

粗体或者下划线的判断,这个值得反馈好像不准确,,你那边可以准确得获取到么

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants