1
tuoxie007 2013-10-17 15:37:27 +08:00 1
我没用过网易新闻客户端,猜想的,你说的对,我另补充两条愚见
1. 对于已经打开的正文,可以在字体设置变化之后,发出一个notification,正文所在的view controller监听之,由此触发一个方法,在该方法里修改当前字体大小 2. 保存磁盘可以(注意是否需要考虑iCloud同步问题),用NSUserDefaults最简单,还能用系统的Settings,当然,也有把设置放在服务器上的 |
2
yellowV2ex 2013-10-17 15:44:07 +08:00
顺便问一下,类似网易新闻或数字尾巴或太平洋电脑客户端,打开文章内容之后,图片是会先用一个loading图代替,待图片载入完了再显示,文字也会根据图片大小保持一定的间距。
设置里可以设置图片的质量和是否允许显示图片等选项。 这种一般是怎么做的? 是一个UIWebView然后剩下的事交给JS还是怎么做呢? |
3
parkman OP |
4
sobigfish 2013-10-17 16:44:53 +08:00 2
监听 UIContentSizeCategoryDidChangeNotification
然后更新页面。 字体设为 UIFontTextStyleBody 或者其他的preferredFontDescriptorWithTextStyle 字体大小为0,既为系统自动调节。 应该是iOS7 更新的api,codeschool的iOS7课程正好覆盖到这个内容 Core iOS7 Level2 challenge 7 没读过用户协议,但应该不能把code放上来,抱歉。 但搜下文档应该就清楚了 |
5
sobigfish 2013-10-17 16:47:20 +08:00 1
之前的iOS版本也可以自己用Notification 加设置实现。
|
6
sobigfish 2013-10-17 16:53:26 +08:00
有blog介绍了iOS 7 dynamic type http://www.peterboni.net/blog/2013/06/29/ios-7-dynamic-type/
|
8
tangqiaoboy 2013-10-29 22:05:47 +08:00 1
@sobigfish dynamic type 是iOS7的方法,网易新闻支持iOS5.0+, 所以不能简单使用7.0的新API来做这件事情。
@yellowV2ex 说的比较对路,网易新闻是用UIWebView来做的,关于UIWebView内容中图片的显示,主要是通过调用native代码异步下载,然后再调到js端加载本地图片完成的,我写过一篇介绍相关技术的文章:http://blog.devtang.com/blog/2012/03/24/talk-about-uiwebview-and-phonegap/ 最后回答一下楼主的问题,网易新闻客户端正文是用UIWebView来显示的,而UIWebView里面的内容实际上是html,所以切换字体可以直接用javascript换一下css样式即可。 我之前在网易工作过,和网易新闻客户端的作者也认识,所以以上内容应该不会有什么问题。 |
9
sobigfish 2013-10-30 10:23:08 +08:00
@tangqiaoboy 恩,如果希望提供文字复制共享什么的 UIWebView确实很好用,其他的短文字的话UIWebView貌似有点重啦
|
10
tangqiaoboy 2013-11-05 18:09:18 +08:00
@sobigfish 是的,短文字可以用nimbus基于core text写的NIAttributeLabel或者自己基于core text写排版。
|