IOS代码
2016-03-28 本文已影响31人
叶落秋至
1.随机产生颜色值
+ (UIColor *)normalRandomColor {
static BOOL seeded = NO;
if (!seeded) {
seeded = YES; // srandom()这个函数是初始化随机数产生器
srandom(time(NULL));
}
// random()函数产生随即值
CGFloat red = (CGFloat)random() / (CGFloat)RAND_MAX;
CGFloat green = (CGFloat)random() / (CGFloat)RAND_MAX;
CGFloat blue = (CGFloat)random() / (CGFloat)RAND_MAX;
return [UIColor colorWithRed:red green:green blue:blue alpha:1.0];
}
2.导航栏显示设置
// 去掉线黑色线条
[self.navigationController.navigationBar setShadowImage:[UIImage new]];
// 取消导航栏的透明效果(根据实际情况)
self.navigationController.navigationBar.translucent = NO;
// 设置背景色
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageWithColor:kColorTheme]
forBarPosition:UIBarPositionAny
barMetrics:UIBarMetricsDefault];
// 标题属性(字体、颜色)
[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor whiteColor],
NSFontAttributeName: [UIFont boldSystemFontOfSize:18]}];
3.实现textfiled输入限制
可以作为基类,初始化时注册监听
// 1.注册监听
[self addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];
// 2.实现方法
- (void)textFieldDidChange:(UITextField *)textField {
if (textField.text.length > _maxLength) {
textField.text = [textField.text substringToIndex:_maxLength];
}
}
4.当控件添加了约束需要做动画
// 设置完动画 需要添加2行代码
[self.button setNeedsUpdateConstraints];
[self.button layoutIfNeeded];
5.获取当前显示的cell的相关方法
// 直接获取当前显示的cell
- (NSArray *)visibleCells;
// 获取显示cell的index
- (NSArray *)indexPathsForVisibleRows;
CGRect rectInTableView = [tableView rectForRowAtIndexPath:indexPath];
CGRect rect = [tableView convertRect:rectInTableView toView:[tableView superview]];