ios,android不用内置浏览器如何解析html数据并布局
伊谢尔伦
伊谢尔伦 2017-04-17 17:50:10
0
3
404

现在做的这个项目有一个文章详情的页面要显示,文章内容是html代码,有图文,就跟微信公众号的文章一样的。以前都是直接用内置浏览器打开,但现在要求不能用webview打开网页,要使用原生解析html数据并布局?请问苹果和安卓端各有相应的插件可以用吗?或者说有什么好的实现思路?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(3)
Peter_Zhu

これは素晴らしいですね。おそらく dom 構造を解析するにはサーバーの協力が必要です (フロントエンドで解析しないと、パフォーマンスが良くない可能性があります。2 つ目は、サーバーにキャッシュできることです)。サーバー)

また、反応ネイティブに単純な HTML を入れてみました (一般的な構造、ネストされたスタイル、すべてのタグ、属性、さらには表示される属性の順序も理解しています)

でも、p、img、b/blockquote、aを混ぜるときにネストが1層しかなかったので、1時間作業して諦めて、正直にWebViewを作って入れました。

問題の鍵は、Java にはバランスの取れたグループがないことを考えると、正規表現を使用して要素を表示するのは死ぬほど面倒だということです。正規表現を使用せずに dom 構造を分析するのは非常に面倒です。したがって、これを実行したい場合は、DOM パーサー ライブラリが必要であり、DOM ツリーを取得し、DOM ツリーを使用して各要素をネイティブ要素に変換します。 。 。

私が遭遇したことについて話します。たとえば、p に幅が設定されている場合、内部の要素が 1 行に足りない場合は、それらを下に詰めるべきでしょうか。あるいは、float なしの p が 2 つある場合は、次のようになります。自動的に改行されますが、解析時に識別できるような <br/> はありません。 。

いいねを押す +0
巴扎黑

個人的にはわかりませんが、WebView 経由で表示しない場合、なぜ HTML 形式を使用する必要があるのでしょうか? 他の形式を使用した方が効率的ですか?
手動で HTML 形式を解析する必要がある場合、TextView で HTML スタイルを設定できますが、一般的に、対応する要素を 1 つずつ表示し、対応するスタイルに対応する属性を設定するのは少し面倒です。

いいねを押す +0
Ty80

画像とテキストを組み合わせる場合、WebView より優れたものはありません。画像とテキストを分離できるかどうかは、デザインのニーズにもよります。通常の Android バージョンは TextView+ImageView に加えて、gridview とその他の組み合わせです。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!