dengzemiao / DZMeBookRead

支持项目使用!最完整小说阅读器Demo!仿iReader(掌阅),QQ阅读 ... 常用阅读器阅读页面,支持 翻页效果(仿真,覆盖,平移,滚动,无效果)、字体切换、书签功能、阅读记录、亮度调整、背景颜色切换 ...
MIT License
1.23k stars 325 forks source link

为什么不直接使用TextView? #48

Closed xiguagaga closed 4 years ago

xiguagaga commented 4 years ago

请教一下,为什么不选择使用textView作为文本的承载视图而采取自己绘制的方式展示内容?其中有什么权衡吗?

liuqingtong commented 4 years ago

你指的是哪种翻页模式?

xiguagaga commented 4 years ago

你指的是哪种翻页模式?

(我没有实际写过)我初步的想法是:无论是横向翻页还是垂直阅读方式,直接采用textView都会更加方便呀!

首先,横向(仿真、水平)翻页可以直接使用NSTextStorage类为textview的文本做分页处理,很方便。 其次,垂直阅读方式的话,直接使用textView就更加简单了,因为textView自带滚动效果,所以不需要我们去拼接内容,所以不需要做额外处理就可以避免 #38 中提到的问题(有时候两行文字贴的很近,我猜测这个问题是cell与cell之间拼接造成的,当然,这个问题你已经解决。)

以上是我的初步想法。

当我在准备写一个阅读器时,我看到你已经写出了相当完善的阅读器,但是发现你没有使用textView,所以想请教一下你,不采用textView是否有其他我没有考虑到的缺点(换句话说就是采用自己绘制文本会更加方便实现某些功能)。

dengzemiao commented 4 years ago

@xiguagaga 可以使用textView做,只是我之前做小说阅读的时候最先接触的就是CoreText,所以用的是这个,你用UIKit里面的相关控件做阅读,都是一样的 只是CoreText底层一点吧,我是先接触到这个才用这个,以前我做笔记项目的时候也用过textview 但是后面做的时候已经用习惯这个ct的语法函数了,我就肯定会选择熟悉一点的用 uitextview 那么我还得去熟悉我忘记的属性东西。

xiguagaga commented 4 years ago

好的,感谢!