大熊猫猪侯佩 (︶^︶)

hopy是一只贪吃贪睡爱鹅鹅的大熊猫猪

排序:
默认
按更新时间
按访问量

iOS中TabBar显示模式VC时切换TabItem的奇怪行为

本猫App的UI层次大致如下: TabBarVC NavVC 若干子VC NavVC 若干子VC NavVC 若干子VC NavVC 若干子VC NavVC 若干子VC 各个VC之间切换都很正常...

2018-10-11 08:59:34

阅读数:66

评论数:0

iOS中TabBar背景图片不显示问题的解决

App中计划使用UITabBarController(后面简称为TBVC)的自定义子类来实现根VC. 因为调试目的,开始是将TBVC当做一个子VC来使用,即用占位VC作为根VC,然后点击按钮切换到TBVC,这样一直都没什么问题…一直到… 将占位VC甩开,直接使用TBVC当做根VC,这时出现问题了...

2018-10-09 10:21:44

阅读数:27

评论数:0

MultivaluedSection类在不同Eureka源中不同行为的分析和修正

Eureka中含有MultivaluedSection类,用来实现Section的编辑功能,这里编辑是指:对Row的删除,排序和插入. 但是本猫发现Eureka在CocoaPods和GitHub中同样的4.2.0版本,其删除行为却不太相同,这可能对新手有所困惑,所以这里做一些解释,对自己和别人都...

2018-10-01 19:02:03

阅读数:69

评论数:0

如何一劳永逸的修改某类UIView所有对象的外观

修改某一个UI子类的外观很容易,但是如果有1万个对象需要修改怎么办? 而且我还不想子类化和扩展该类! 拿导航栏上的UIBarButtonItem对象来说。 如果我想修改其在导航栏上的位置,可以这么做: UIBarButtonItem().setBackButtonTitlePositionAdju...

2018-09-29 09:54:28

阅读数:122

评论数:0

CoreData模型中Entity关系未添加反向链接导致奇怪问题

近日发现项目中无法保存变化到CoreData数据库中,检查发现问题出现在如下一个没有反向链接的的关系中: 可以看到favoriteHabits到Habit的关系,并没有反向链接. 我先把问题的现象说一下: 未加入favoriteHabits中的Habit在App保存数据库前,可以任意加入或从f...

2018-09-24 16:05:11

阅读数:77

评论数:0

CoreData中Transformable类型浅谈

在很久很久以前,CoreData对于用户自定义类型数据的保存比较棘手,主要有2种办法: 使用NSData 使用Transformable类型 对于后者还需要写一个转换包装类,操作繁琐,显得意义不大. 不过现在Transformable类型只需要你保存对象的类遵守NSCoding协议,就可...

2018-09-09 09:20:51

阅读数:227

评论数:0

Swift4.0+中一个容易被忽略的问题

本猫的项目在将Swift语言升级到4.0之后时,发现一个隐藏的问题,可能大家没太注意过. 存在一个继承于UICollectionViewController的类 open class EPCalendarPicker: UICollectionViewController { } 它实现了...

2018-09-03 13:32:45

阅读数:80

评论数:0

定制Github日历库EPCalendarPicker实现项目需求(三)

三.按条件定制Cell选中颜色 前面说过了,EPCalendarPicker是可以定制Cell选中颜色的,但所有选中Cell只能是一种颜色。 因为App需要根据某天执行结果的成功与否设置对应的选中颜色,比如绿色代表成功,红色代表失败,透明色代表无结果。 所以当务之急是:如何随心所欲的设置任何...

2018-08-30 10:29:11

阅读数:114

评论数:0

定制Github日历库EPCalendarPicker实现项目需求(二)

二.日历界面国际化 将iOS模拟器中的本地语言改为简体中文,重新运行App发现EPCalendarPicker中的界面还是英文。 主要是其中的月份和星期名称都是英文表示。 那么如何使其显示符合设备所设置的语言呢? 首先我们尝试修改Section标题中的月,找到如下方法: override...

2018-08-29 10:14:01

阅读数:96

评论数:0

定制Github日历库EPCalendarPicker实现项目需求(一)

最近App需要一个日历显示界面,找了一下发现EPCalendarPicker库比较合适。 简单看了一下它的源代码,发现其简单,小巧,虽然界面可定制能力一般。 我的App不需要使用日期的选择功能,只需要显示功能。它的界面对于我来说基本满足,不需要再进行太大的涂修,所以可定制有限也勉强够用了。 ...

2018-08-29 09:35:05

阅读数:98

评论数:0

Swift4.2之新特性:动态成员(dynamicMember)和Ruby类似机制的比较

马上就要9月了,iOS 12和MacOS 10.14正式版也越来越近了.这也意味着Swift 4.2和Xcode 10正式版也很快就要来了. 在这里就由本猫先聊一下Swift 4.2的一个新特性:dynamicMember. 这个特性是什么意思呢?用过Ruby语言的都知道Ruby里有一个met...

2018-08-26 10:32:54

阅读数:104

评论数:0

反其道而行之:ObjC调用Swift功能入门

大家可能对Swift如何调用ObjC中的方法已经很熟悉了,所以这个不细表了. 这篇博文中本猫却反其道而行之,给大家介绍下如何实现:ObjC调用Swift中的功能. 现举一栗! fileprivate let resBundleName = "HyCommonRes&...

2018-08-21 20:30:30

阅读数:88

评论数:0

iOS库中字符串国际化的实现

对于App中的国际化,大家想必已是轻车熟路了。 不过对于某些情况下我们需要对库中的字符串做国际化操作,这篇博文就来探讨一下如何完成这一任务。 其实理论上可以将库中的国际化字符串数据放在App的国际化文件中,但这样做打破了封装性,假如有100个App使用该库,则需要在创建100次国际化字符串,违...

2018-08-21 10:28:18

阅读数:101

评论数:0

Swift4.1定制UITableView索引外观之二:索引放大器

何曾几时,在一些热门的App的数据索引界面里,我们常常能够看到用户在改变索引时,屏幕中心会有索引的放大显示,非常人性化。 在这一篇博文里,本猫就来尝试用尽可能简单的代码来完成这一功能。 一.索引变化通知 首先我们必须在索引发生改变时得到通知,否则一切都无从谈起。幸运的是CocoaTouc...

2018-08-14 10:36:08

阅读数:119

评论数:0

如何利用Swift访问控制符来处理工厂模式的创建方法

我们知道在Swift中提供了5种访问控制符,合理的使用它们可以为我们打造更完美的代码生态系统。 现举一例。 通过工厂模式创建Counter对象,Counter只是一个工厂类,实体类是其两个子类: TimeCounter NumberCounter Counter类通过实际条件决定创建哪...

2018-08-13 09:06:20

阅读数:76

评论数:0

Swift4.1定制UITableView索引外观之一:索引字体

在这一系列博文中,本猫将会向大家介绍一下如何在UITableView索引的外观上做文章,添加一些不一样.

2018-08-10 20:23:41

阅读数:184

评论数:0

iOS:警惕伪"循环引用"造成内存资源释放的问题。

前不久发现App运行时内存占用一直在增大,嗅到一种不好的味道…闻起来像内存泄露啊! 在Xcode中打开调试内存图(Debug Memory Graph),奇怪的是并没有发现任何对象有引用循环! 看来初步判断并不是”死循环”导致的”内存泄露”。严格来说,如果没有引用循环就不存在内存泄露,因为你对...

2018-08-09 14:04:42

阅读数:115

评论数:0

Xcode中使用Profile测试App时报找不到framework的解决

如题,Xcode中正常编译运行是没有问题的。 因为想要测试App的性能,所以需要运行Profile. 但是在用Profile配置编译App时报错:无法找到某个framework库! 打开App的Scheme设置,选择Profile配置页面,发现其中使用的是release版本的配置。 打开T...

2018-08-06 16:05:57

阅读数:103

评论数:0

Eureka刷新Row疑似导致整个Form(Section)被刷新的问题

随着不断深入使用Eureka库,一些原来没有碰到的问题就会浮上水面。 最近本猫碰到这样一个问题:在刷新某一个Row时: row.reload() 会导致整个Form被刷新。 为什么我要刷新Row呢?因为我修改了row.title,如果不刷新,就不会显示更改后的内容! 其实本来再刷新一...

2018-08-06 09:18:28

阅读数:129

评论数:0

在swift中实现ruby数组中的的any方法

用过ruby的童鞋都知道,其数组包含一个any?方法(后面的问号不是手误,ruby允许方法名后面带特殊字符,其中就包括问号): 2.2.6 :001 > a = [1,2,3,11,5] => [1, 2, 3, 11, 5] 2.2.6 :002...

2018-08-01 10:59:07

阅读数:89

评论数:0

提示
确定要删除当前文章?
取消 删除