作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Swift 的新手。我正在使用 Down 渲染 Markdown 并将其添加到我的 View 中,https://github.com/iwasrobbed/Down
我可以将 DownView
添加到我的 View 中(使用下面的代码)但是我如何更新其中的内容?
let cardFrontStr = "Use chained optional to simplify code below,\n\n```\nvar display: UILabel?\nif let label = display {\n if let text = label.text {\n let x = text.hasValue\n // ...\n }\n}\n```"
let cardfrontView = try? DownView(frame: cardfront.bounds, markdownString: cardFrontStr)
cardfront.addSubview(cardfrontView!)
由于 DownView 是从 WebView
扩展的,所以我可以更新内容和 loadHTMLString
;但是,在我这样做之后,DownView 样式就消失了。
let down = Down(markdownString: "`test`")
let newStr = try? down.toHTML()
cardbackView?.loadHTMLString(newStr!, baseURL: nil)
最佳答案
没有找到为此编写的任何方法。但您可以尝试以下方法来更新它。
首先以这种方式在类中的方法之外声明 cardfrontView
:
var cardfrontView: DownView?
现在以这种方式创建cardfrontView
:
let cardFrontStr = "Use chained optional to simplify code below,\n\n```\nvar display: UILabel?\nif let label = display {\n if let text = label.text {\n let x = text.hasValue\n // ...\n }\n}\n```"
cardfrontView = try? DownView(frame: self.view.bounds, markdownString: cardFrontStr)
self.view.addSubview(cardfrontView!)
现在当你想更新内容时,你可以这样做:
cardfrontView?.removeFromSuperview()
let cardFrontStr = "Updated Use chained optional to simplify code below,\n\n```\nvar display: UILabel?\nif let label = display {\n if let text = label.text {\n let x = text.hasValue\n // ...\n }\n}\n```"
cardfrontView = try? DownView(frame: self.view.bounds, markdownString: cardFrontStr)
self.view.addSubview(cardfrontView!)
希望这会有所帮助。
关于ios - 如何更新Down库DownView内容并保持风格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42117350/
我是一名优秀的程序员,十分优秀!