美文网首页iOS
iOS图文混编

iOS图文混编

作者: 代码行者 | 来源:发表于2015-06-05 11:30 被阅读2785次

    先准备一个坑,自己跳

    CoreText 之后,苹果新增加了UITextkit,更容易实现图文混排,甚至混编!

    说起这个话题,是源自我在项目设计中遇到的,要显示美观优雅的界面效果,图文并茂(图文混排)是基本的一个需求.为了增加用户粘性,如果可以再实现图文编辑(图文混编)那也就是顺其自然的啦....

    先说一下我遇到这个问题的思路:

    思路1. 首先最容易想到的就是使用UIWebView.

        "不想偷懒的程序员不是优秀的程序猿", 秉着这种想法,自然就是希望后台的兄弟们能够提供一个URL给移动端进行调用,直接用网页的形式进行展示就完事啦....不过这里有三个需要处理的问题: 

    1> UIWebView的性能   

    2> UIWebView的互动

    3> UIWebView的编辑

    其中第三个问题是比较棘手的,最初想到的的思路是获取webview的html,然后修改html内容后再让webview加载.(这个要请web前端的同事吃好多饭才行啊~_^).

    另外,如果处理图片(比如添加一张图片,JS的执行性能也是一个体验考量啊..),因此这个方案暂时搁置.接着.....

    思路2. CoreText 

       苹果的这个框架对富文编辑提供了强大的底层支持,具体用法可参考网上的教程CoreText入门系列.

       使用CoreText编辑图文混排是没问题啦,但是考虑到...展示图文混搭的界面....我先下楼透透气...好吧,你可能想到了解析html.

       因此使用CoreText需要一个HTML的解析器....

       这个让我再想想...于是....

    思路3.UITextVIew

    在iOS7之后,苹果封装了基于C语言的CoreTextKit,推出了UITextkit...用起来更加OC化.

    但在思路2遇到的问题这个依然存在...后来....

    思路4. UIWebView+UITextView

    想来想去,其实就是把图文展示与 图文编辑这两个需求分开,用webview进行展示,用textview进行编辑.这个勉强算是个解决方案层上一个版本吧.

    代码实现:(待续...)


      

     

    相关文章

      网友评论

      • Civel_Xu:用textview结合tableview 上传是怎么上传的
        代码行者:@Civel_Xu 上传html到服务器
      • Durex灬弑:啦啦啦快开始看世界还是说还是事实或者还是事实还是事实还是十万火急,我们的生活方式。我的人家的话可以理解的确很久了。我的人家都说了句你的确很久没想到过来吧嗒。。。。。。。。在线指导书、一切皆在取舍和一切安好……:fearful::angry::mask::first_quarter_moon_with_face::cat::u7981::checkered_flag::cake::bread::black_nib::bow::lollipop::skull::ideograph_advantage::ideograph_advantage::ideograph_advantage::ideograph_advantage::ideograph_advantage::ideograph_advantage::ideograph_advantage::cocktail::sunflower::sunflower::snowman::snowman::clubs::clubs::mag::cocktail::mag::dancers::lollipop::dancers::dancers::dancers::dancers:
      • f0f038a9117f:Textkit 实现不了类似简书的图文混排?微博头条文章图文混排怎么做的?
        代码行者:@LIANGMIAOPM 嗯,tableview的好处之一是图片不会占比较大的内存(重用机制),类似的豆瓣也是这么做的。
        代码行者:@云锦天章 简书的图文混排是用webview+js实现的
        LIANGMIAOPM:@云锦天章 用tableview做,看过越狱后的微博头条,微博就是用tableview实现的,cell上放textview
      • LIANGMIAOPM:iOS实现富文本编辑器,不是用textKit吗?不是图文混排的功能,而是像简书那样可以编辑文字和随意插入图片。是不是就是你说的需要用webview和js?而不是用textKit?好实现吗?有没有可以参考的code demo ?
        LIANGMIAOPM:@dong_liang 差不多了基本上。用textview结合tableview做的
        dong_liang:@ios菇凉 你这个功能实现了吗?求指教
        代码行者:@ios菇凉 简书就是webview+js实现的,图文混编不能用textkit,太麻烦。网上有参考demo,Github上找ZZSRichText看看,经典的webview编辑器
      • LIANGMIAOPM:如果编辑的时候要实现图文混编怎么做?就像微博的发布头条文章的功能该怎么弄?
        代码行者:如果文字和图片是交替排版的话,要使用webview实现,需要使用js进行编辑交互,如果文字固定在上面,图片固定再底部(例如微信朋友圈或微博),可以使用原生textview+uiview组合方式,第一种方式的样例可以参考简书的编辑器(就是可编辑的webview+js:smile:

      本文标题:iOS图文混编

      本文链接:https://www.haomeiwen.com/subject/bebdqttx.html