标签:
1.改变按钮字体大小:(其实是按钮里面的文字是加在label上的)
button.titleLabel.font = [UIFont systemFontOfSize:20];
label的改变方法:
label.font = [UIFont systemFontOfSize:20];
2.改变一个控件的point(包括frame、bounds、center等有point的)不可以直接赋值如下,要声明一个临时变量存下来,改临时变量的点再赋值整个frame回去。因为,一个View用了点语法(即".frame")之后:,后面再".size",这个并不是访问View的成员变量了,而是访问结构体里面的成员,OC中并不允许怎么做。
num.center.x = self.view.center.x; // 此行代码报错
正确做法如下
// 如要改变Y值不能直接改,必须利用一个临时rect才能改
CGRect tempframe = popView.frame ; tempframe.origin.y -= popView.frame.size.height; popView.frame = tempframe;
到这里有人就会问:如果以后开发中要改一个View或者控件的Frame中的Point那不得很麻烦?,这里来个小Tips,可以为UIView写个分类哦,,以下为示例:
在.h文件中声明属性,
@property (assign, nonatomic) CGFloat x;
在.m文件中重写Setter方法,
- (void)setX:(CGFloat)x { CGRect frame = self.frame; frame.origin.x = x; self.frame = frame; }
这样,以后用的时候就可以直接像
myView.x = 10;
这样用起来就会方便许多对吧。其他的Y值、宽高应该不用我去说了吧?还不赶紧去写?以后直接把分类拉到要开发的项目中,这个修改Frame值就爽多了。
3.使label中得文字居中
label.textAlignment = NSTextAlignmentCenter;
4.label中的文字自动换行,0代表可以多行。
label.numberOfLines = 0;
5.设置图片的拉伸模式(多个属性可选,右边是枚举,可Commom键加鼠标点进去API里面看看有哪些)
imageView.contentMode = UIViewContentModeScaleAspectFit;
6.使用plist文件的3步骤
1) //获得plist文件路径的方法! plistName为Plist的文件名
NSBundle *bundle = [NSBundle mainBundle]; NSString *path = [bundle pathForResource:@"plistName" ofType:@"plist"];
2) //获得plist里面的数组(也可以为字典、或字符串,具体类型要看Plist)
plistArr = [NSArray arrayWithContentsOfFile:path];
3)//使用数组即可。
7.NSlog中的%.f 和强制转换(int)的差别
%.f是4舍5入,5.5 ->6;
(int)是去掉小数点,5.5->5;
所以在编写时需要注意。
8.改变父控件的bounds,会移动他的子控件的位置,父不动,因为子控件的frame是以父控件的为主。
//父
UIView *superView = [[UIView alloc]initWithFrame:CGRectMake(50, 150, 220, 220)]; superView.backgroundColor = [UIColor greenColor]; [self.view addSubview:superView]
//子
UIView *subView = [[UIView alloc]initWithFrame:superView.frame]; subView.backgroundColor = [UIColor blueColor]; [superView addSubview:subView];
CGRect superbounds = superView.bounds; superbounds.origin = CGPointMake(50, 150); // <-其中父的X、Y都加,子会相反,即是子的x、y都减(往左上移动)减就相反。 superView.bounds = superbounds;
前期做第一个小项目的一些问题总结+解决+解释,希望新手少走点弯路
标签:
原文地址:http://www.cnblogs.com/MiBlog/p/4631804.html