2***@qq.com
2***@qq.com
  • 发布:2020-09-03 21:20
  • 更新:2020-09-03 21:20
  • 阅读:698

uni-app 原生 titleNView 绘制RichText

分类:uni-app

按照了这个老兄的方法:传送门绘制原生导航的搜索框,我需要有个按钮点击时清除掉搜索框的内容(或其它需求),例如


我不知如何在font中添加点击事件,在百度中找到HTML5+官网中比较符合需求的描述:传送门,RichText这个组件可以有一个点击事件,但是我根据HTML5+的官网中的写法,无法实现这个点击事件
我曾尝试这样写(已省略掉多余的代码):
文字可以渲染出来,但是点击事件无效,还有字体图标无法使用

    // var s = this;  
            var pages = getCurrentPages();  
            var page = pages[pages.length - 1];  
            var currentWebview = page.$getAppWebview();  
            var nTitle = currentWebview.getTitleNView();  
            nTitle.draw([  
                {  
                    tag: "richtext",  
                    id: "richtext",  
                    text: "<text>\ue90d</text>",  
                    color: "#900",  
                    position: {  
                        right: "0",  
                        width: "30px",  
                        top: "7px",  
                        bottom: "7px",  
                    },  
                    richTextStyles: {  
            fontSrc: "/static/fonts/cnrIcon.ttf",  
                        onClick(e) {  
                            console.log(e);  
                        },  
                    },  
                },  
            ]);

我还根据HTML5+中的参数,这样写过:

var pages = getCurrentPages();  
            var page = pages[pages.length - 1];  
            var currentWebview = page.$getAppWebview();  
            var nTitle = currentWebview.getTitleNView();  
            nTitle.draw([  
                {  
                    tag: "richtext",  
                    id: "richtext",  
                    text: "<text>\ue90d</text>",  
                    color: "#900",  
                    position: {  
                        right: "0",  
                        width: "30px",  
                        top: "7px",  
                        bottom: "7px",  
                    },  
                    styles: {  
            fontSrc: "/static/fonts/cnrIcon.ttf",  
                        onClick(e) {  
                            console.log(e);  
                        },  
                    },  
                },  
            ]);

甚至这样写过,将以上代码这样改:

var pages = getCurrentPages();  
            var page = pages[pages.length - 1];  
            var currentWebview = page.$getAppWebview();  
            var nTitle = currentWebview.getTitleNView();  
            nTitle.draw([  
                {  
                ......  
                    position: {  
                    ......  
                    },  
                    styles: {  
                                        richTextStyles:{.....}  
                    },  
                },  
            ]);

还有这样


var pages = getCurrentPages();  
            var page = pages[pages.length - 1];  
            var currentWebview = page.$getAppWebview();  
            var nTitle = currentWebview.getTitleNView();  
            nTitle.draw([  
                {  
                ......  
                    position: {  
                    ......  
                    },  
                    richTextStyles: {  
                                        styles:{.....}  
                    },  
                },  
            ]);

全部没有办法使用,只能使用new plus.nativeObj.View来渲染

搞得我崩溃了这uniapp.....

铁子们有没有办法...

哦对了,uniapp的编辑器是我用过最难用的,没有之一

2020-09-03 21:20 负责人:无 分享
已邀请:

该问题目前已经被锁定, 无法添加新回复