摘要:
如果你在寻找一个UITableView加载远程图片的方法,推荐一个第三方类库:SDWebImage。这个类库为你的工程提供了灵活的加载&缓存网络图片的方法,而且非常容易在工程中使用。但当我开始使用时,当我加载不同分辨率的网络图片时,发现图片出现了不同宽度,很不美观,为了解决这个问题,我们需要对webimage中的不同宽度进行限制。下面是一个简便有效的处理方法,自定义layoutSubviews:1 - (void)layoutSubviews {2 [super layoutSubviews];3 self.imageView.frame = CGRectMake(5,5,40... 阅读全文
摘要:
如果你需要编写一个软件,同时支持portrait&landscape,你会遇到一个问题:当屏幕旋转后,如果才能确保一些可视化的things依然居中呢。下面是一个简单的例子,无论设备是否旋转,UITableView的footer中的UILabel保持居中的方法。 1 //create the uiview container 2 UIView *tfooterView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, _tableView.frame.size.width, 45)]; 3 tfooterView.autor... 阅读全文
摘要:
__block修饰的变量是可以在blocks中共享block外的父类中的变量。这样,即使父类已经超出生存周期,只要任何父类的__block修饰的变量存在于任何一个没有销毁的block块中,那么这个变量就是有效的,不会出现BAD_access错误。多个block块在一个给定的作用域中可以同时的使用共享内存变量。__weak描述的是一个特定的引用类型,它不保证修饰的变量在生命周期。当weak修饰的变量所指向的强引用变量销毁时,weak类型的弱引用变量会被置为nil。这两个修饰变量的类型是完全不同的概念,当block中使用__block的变量时,__block变量不会copy一份在block中,而是 阅读全文