摘要:
//// 动画和事件综合例子-键盘处理#import "ScrollView.h"@interface MJScrollView () { CGPoint _lastOffset;}@end@implementation MJScrollView#pragma mark - 生命周期方法- (id)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { [self initial]; } return self;}- (id)init { if (self = [super i 阅读全文
摘要:
(UITextField *)findFirstResponder:(UIView *) view{ //遍历子视图 for(UIView *child in view.subviews){ if([child responesToSelector:@selector(isFirstResponder)] && [child isFirstResponder]){ return (UITextField *) child; } //子控件的第一响应者 UITextField *field = [self findFirstResponder: child]; if(field) 阅读全文
摘要:
UIView之所以能显示在屏幕上,完全是因为它内部的一个层,UIView本身不具备显示的功能,是它内部的层才有显示功能。创建UIView对象时,UIView内部会自动创建一个层(即CALayer对象),通过UIView的layer属性可以访问这个层。当UIView需要显示到屏幕上时,会调用drawRect:方法进行绘图,并且会将所有内容绘制在自己的层上,绘图完毕后,系统会将层拷贝到屏幕上,于是就完成了UIView的显示。shadowColor: // 阴影颜色shadowOffset = CGSizeMake(x,y):// 阴影位置shadowOpacity: // 透明度cornerRad 阅读全文