美文网首页
UI基础相关

UI基础相关

作者: 成功没有捷径_LBQ | 来源:发表于2016-11-25 11:51 被阅读0次

UI基础相关:

Frame 和 bounds的区别:
Frame是参照父控件的 bounds是参照自己的 默认是(0,0);

图片:
imageView.image=[UIImage imageNamed:@"1"];//把图片放在Assets.xcassets中的时候 直接写图片名字就可以,后缀都不用写

xib相关:
// 第一种加载XIB文件方式
NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"test" owner:nil options:nil];
// 第二种加载XIB文件方式
// UINib *nib = [UINib nibWithNibName:@"test" bundle:[NSBundle mainBundle]];
// NSArray *array = [nib instantiateWithOwner:nil options:nil];

layoutSubViews
在外面是调整不了按钮内部子控件的位置和尺寸,因为到时候在按钮内部的layoutSubViews中会调整回来

05.内边距
内边距是相对控件里面的约束
UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right)
四个元素的顺序:顶部,左边,下面,右边。

weak,Strong,copy, assign,retain的区别:
assign:
对基础数据类型 (NSInteger,CGFloat)和C数据类型(int, float, double, char, 等等)
copy:
对NSString会在内存里拷贝一份对象,两个指针指向不同的内存地址。一般用来修饰NSString等有对应可变类型的对象,因为他们有可能和对应的可变类型(NSMutableString)之间进行赋值操作,为确保对象中的字符串不被修改 ,应该在设置属性是拷贝一份。而若用strong修饰,如果对象在外部被修改了,会影响到属性。
retain:
对其他NSObject和其子类
weak:
修饰Object类型,修饰的对象在释放后,指针地址会被置为nil,是一种弱引用。在ARC环境下,为避免循环引用,往往会把delegate属性用weak修饰 开发中用于修饰控件
strong:
其实就是retain的意思,只不过ARC,MRC的用法,strong就是强引用,引用计数器会加1,

07.
UIScrollView 滚动范围
设置contentSize(内容尺寸),滚动范围
// 可滚动的尺寸 : contentSize的尺寸 减去 scrollView的尺寸
// 注意点:如果设置的contentSize尺寸小于 或者等于 scrollView的尺寸也是不可以滚动的

  1. 设置scrollView是否能够跟用户交互

设置scrollView是否能够跟用户交互(是否能够响应用户的点击.托跩等操作)
// 注意点:如果设置了scrollView的userInteractionEnabled = NO,scrollView以及它的子控件都不能跟用户交互
// self.scrollView.userInteractionEnabled = NO ;

09.UIScrollview的相关设置如下:

// 3.是否有弹簧效果
// self.scrollView.bounces = NO;

// 4.不管有没有设置contentSize,总是有弹簧效果(下拉刷新)

// self.scrollView.alwaysBounceHorizontal = YES;
// self.scrollView.alwaysBounceVertical = YES;

// 5.是否显示滚动条

// self.scrollView.showsHorizontalScrollIndicator = NO;
// self.scrollView.showsVerticalScrollIndicator = NO;

// 注意点:千万不要通过索引去subviews这个数组中去访问scrollView的子控件

// NSLog(@"22->%@",self.scrollView.subviews);
// [self.scrollView.subviews.firstObject removeFromSuperview];
10.contentOffset和contentInset的区别:
contentOffset是scrollview当前显示区域顶点相对于frame顶点的偏移量,可以理解为contentview的顶点相对于scrollerVIew的frame的偏移量。内容视图向上滚动contentOffset.y>0。
比如我写了一个UIScrollerView上面放了两张图片,初始的时候contentOffset.y==0。然后向上滚动contentOffset.y>0。

contentInset:
contentInset 是scrollview中contentView.frame.origin与scrollview.frame.origin的关系,比如contentView的frame为(0,30,320,480),那么contentInset则为(0, 30),
若scroller.contentInset = UIEdgeInsetsMake(50,0,0,0); 则内容视图开始的位置是(0,50)
若scroller.contentInset = UIEdgeInsetsMake(0,0,50,0);
那么contentView底部离scrollview底部的距离是50;
11.scrollView
/**
1.任何oc对象都可以作为scrollView的代理
2.苹果设计的delegate属性一定是weak
*/
12.继承自UIControl和UIView的区别:

//总结:继承UIControl的控件 可以调用addTarget 继承UIView 可以用代理delegate
//其中UITextField比较特殊 既能调用addTarget 也可以用代理delegate

  1. 开启分页功能
    // 分页的标准:以scrollView的尺寸为一页
    self.scrollView.pagingEnabled = YES;

相关文章

  • UI基础相关

    UI基础相关: Frame 和 bounds的区别:Frame是参照父控件的 bounds是参照自己的 默认是(0...

  • 怎么判断自己是否适合学ui设计

    怎么判断自己是否适合学ui设计?很多零基础学ui的学员都会有一个疑虑,自己本身没有一点专业相关的基础,真的可以学好...

  • 零基础学UI设计需要美术基础吗?

    零基础学UI设计需要美术基础吗?零基础学UI设计需要美术基础吗?零基础学UI设计需要美术基础吗?零基础学UI设计需...

  • UI基础知识

    UI基础知识 控件相关 大部分UI控件都基于UIView,因此控件不仅具有一些自己独有的属性,还有UIView的属...

  • UI设计零基础如何自学,关于培训班该如何选择?

    UI设计零基础如何自学,关于培训班该如何选择?UI设计零基础如何自学UI设计零基础如何自学UI设计零基础如何自学U...

  • UI相关

    1.NAV和ToolBar && Tabbar icon尺寸

  • UI相关

    ScrollView内容位置向下偏移或不存在 原因分析: NavigationController导致scroll...

  • UI相关

    1. button 图标和文字位置设置 //图标[button setImage:[UIImage imageNa...

  • UI相关

    1.$\color{red}{UIView和CAlayer的区别?}$ 每个UIView内部都有一个CALayer...

  • UI相关

    重用机制、数据源同步、图像显示、UI掉帧卡顿、UIView的异步绘制、离屏渲染 1.重用机制 cell = [ta...

网友评论

      本文标题:UI基础相关

      本文链接:https://www.haomeiwen.com/subject/yogipttx.html