转换 Rect
- (CGRect)convertRect:(CGRect)rect fromView:(nullable UIView *)view;
- (CGRect)convertRect:(CGRect)rect toView:(nullable UIView *)view;
someView调用时
前者
rect 是以fromView为坐标系下的值,
将rect转为以someView为坐标系的值。
后者
rect是以 someView 为坐标系下的值,
将 rect转为以 toView 为坐标系的值。
注意:两者都只改变rect 的origin,不改变 rect 的 size。
UIView 的autoresizingMask属性
typedef NS_OPTIONS(NSUInteger, UIViewAutoresizing) {
//不自动调整
UIViewAutoresizingNone = 0,
//自动调整view与父视图左边距,以保证右边距不变
UIViewAutoresizingFlexibleLeftMargin = 1 << 0,
//自动调整view的宽度,保证左边距和右边距不变
UIViewAutoresizingFlexibleWidth = 1 << 1,
//自动调整view与父视图右边距,以保证左边距不变
UIViewAutoresizingFlexibleRightMargin = 1 << 2,
//自动调整view与父视图上边距,以保证下边距不变
UIViewAutoresizingFlexibleTopMargin = 1 << 3,
//自动调整view的高度,以保证上边距和下边距不变
UIViewAutoresizingFlexibleHeight = 1 << 4,
//自动调整view与父视图下边距,以保证上边距不变
UIViewAutoresizingFlexibleBottomMargin = 1 << 5
};
TableView 滚动到顶部
AFNetworking 请求示成功的 Block 回调是在主线程中进行,
刷新数据后,
让 TableView 滚动到顶部时,总是会有10-20的偏差,
解决方法就是放到GCD的主线程中进行。
dispatch_async(dispatch_get_main_queue(), ^{
[self.tableView setContentOffset:CGPointZero animated:NO];
//[self.tableView scrollRectToVisible:CGRectMake(0,0,1,1) animated:NO];
});
网友评论