从零开始,直到···
2019独角兽企业重金招聘Python工程师标准>>>
温馨提示: 开续篇了
点击进入续篇
点击进入续篇
点击进入续篇
( 43 ) 释放/销毁
//释放所有子控件
[<#控件#>.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
( 42 ) Xcode莫名其妙多了很多模拟器
解决方法:
1.关闭Xcode
2.终端输入
sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService
3.输入你的电脑密码
4.终端输入
rm -rf ~/Library/Developer/CoreSimulator/Devices
一次不行就一直试
一次不行就一直试
一次不行就一直试
( 41 ) autoresizing 和 autolayout 转换
有的老框架布局用的是autoresizing,想换成autolayout
解决方法:
点storyboard/Xib,你会看到这个界面,
然后按照提示操作
选中为autolayout,反之亦然
( 40 ) 自定义navigationBar的横竖屏适配
详情请见:
( 39 ) 真机调试
详情请见:
( 38 ) 导入隐藏库的方法
点击跳转播客
-------------------------------------------------------------------------------
( 37 ) 自定义navigationBar的高度
2016/3/3 Xcode 7.2
就是创建一个View然后添加到navigationBar中
所以你不能用navigationBar的自带item
UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 70)];
view.backgroundColor = [UIColor orangeColor];
[self.navigationController.navigationBar addSubview:view];
-------------------------------------------------------------------------------
( 36 ) 代码块的使用方法
详情请见
-------------------------------------------------------------------------------
--- > > 更新 <cell 的使用> 更新 < < ---
更新内容:
删除 cell 和 删除显示的文字
-------------------------------------------------------------------------------
( 35 ) UITableView 的使用
详情请见:
-------------------------------------------------------------------------------
( 34 ) 友盟分享
详情请见:
-------------------------------------------------------------------------------
( 33 ) 字符串的增删改查
详情请见:
-------------------------------------------------------------------------------
( 32 ) 数据的存取
详情请见:
-------------------------------------------------------------------------------
--- > > 更新 <自定义安全文本输入符> 更新 < < ---
详情请见:
-------------------------------------------------------------------------------
( 31 ) UITextField的使用
详情请见:
-------------------------------------------------------------------------------
--- > > 更新 <图片轮播(傻瓜式> 更新<< ---
更新文章: <图片轮播(傻瓜式)>:
更新内容: 新增使用注意事项
详情请见:
-------------------------------------------------------------------------------
( 30 ) UILabel的使用
详情请见:
-------------------------------------------------------------------------------
( 29 ) 更新JKSideSlipView框架
详情请见:
-------------------------------------------------------------------------------
--- > > 更新 <UITableView分割线处理及介绍>
更新文章: <UITableView分割线处理及介绍>
详情请见:
-------------------------------------------------------------------------------
( 28 ) Swift和OC文件间的相互调用
详情请见:
-------------------------------------------------------------------------------
( 27 ) xib的使用方法
详情请见:
-------------------------------------------------------------------------------
( 26 ) 仿QQ左侧抽屉效果
详情请见:
-------------------------------------------------------------------------------
2016/1/25 13:52
( 25 ) Cell的使用
详情请见:
-------------------------------------------------------------------------------
2016/1/25 13:26
( 24 ) UITableView分割线处理及介绍
详情请见:
-------------------------------------------------------------------------------
2016/1/25 09:30
( 23 ) UIViewController生命周期及方法调用顺序
详情请见:
-------------------------------------------------------------------------------
2016/1/24 14:30
( 22 ) 监听UITetField改变事件(三种方法)
详情请见:
-------------------------------------------------------------------------------
2016/1/23 13:36
( 21 ) 点击UITetField 不弹出键盘
采纳代理:<UITextFieldDelegate>
设置代理:self.textField.delegate = self;
实现代理方法:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
NSLog(@"您点击了TextField,您可以做想要响应的事件");
return NO;
}
-------------------------------------------------------------------------------
2016/1/22 01:00
( 20 ) 字典转模型(工具类)
核心代码:
数组/字典(参数见plist最外层) = [模型类 objcWithFileName:@"文件名.plist"];
详情请见:
-------------------------------------------------------------------------------
( 19 ) 显示界面的切换/控制器的跳转
详情请见:
-------------------------------------------------------------------------------
2016/1/22 22:42
--- > > 更新 <我收藏的插件分享>
更新内容: 新增SCXcodeMiniMap插件介绍
效果图:
详情请见:
-------------------------------------------------------------------------------
2016/1/22 15:40
( 18 ) 控制台输出的Unicode转汉字
详情请见:
-------------------------------------------------------------------------------
( 17 ) 获取时间
// 设置日期
- (void)loadTodayTimeInfo {
NSDate *date = [NSDate date];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
//获取时间 秒 yy年MM月dd日HH(24)时mm分ss秒(1个y显示全)
formatter.dateFormat = @"y年MM月dd日";
//转换字符串
NSString *second = [formatter stringFromDate:date];
self.todayLabel.text = second;
// 单独获取 某一项
formatter.dateFormat = @"HH";
//转换字符串
NSString *timeString = [formatter stringFromDate:date];
// 字符串 转 NSInteger
NSInteger time = [timeString integerValue];
NSLog(@"%@",time);
}
-------------------------------------------------------------------------------
2016/1/22 12:17
( 16 ) 自定义暗文显示符 (新)
效果图
文章地址:
-------------------------------------------------------------------------------
2016/1/22 9:48
( 15 ) 关闭系统键盘
代码:
/// 关闭键盘
- (void)closeKeyboard {
// 辞去 第一响应
[self.inputPasswordTextField resignFirstResponder];
// 辞去 第一响应
[self.inputIDTextField resignFirstResponder];
}
-------------------------------------------------------------------------------
2016/1/21 23:30
--- > > 更新 <我收藏的插件分享>
更新内容: 新增Miku插件介绍
详情:
-------------------------------------------------------------------------------
2016/1/21 20:03
( 14 ) 判断点击的点是否在某个范围内
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
// 获取点击的点
CGPoint currentPoint = [[touches anyObject] locationInView:self.userView];
// 判断是否在 什么什么 范围内
BOOL isInclude = CGRectContainsPoint(CGRectMake(0, 0, self.userView.size.width, self.userView.size.height), currentPoint);
if (isInclude) {
<#content#>
}
}
-------------------------------------------------------------------------------
2016/1/21 14:38
倒叙
( 13 ) UIButton自定义下划线颜色
效果图:
-------------------------------------------------------------------------------
( 12 ) UITextField占位图
-------------------------------------------------------------------------------
( 11 ) storyboard实现0.5像素
( 10 ) 图片轮播
2016/1/21 01:11
-------------------------------------------------------------------------------
( 9 ) navigationBar 中 渲染颜色
详情请点击此处
------------------------------------------------------------------------------------
( 8 ) 关闭警告 (强迫症还在等什么!)
详情请点击此处
( 7 ) Xib中跳转控制器
/// 抽取方法 跳转控制器
- (void)presentControllerWithStoryboardName:(NSString *)storyboardName {
//要加载控制器必须先获得storyboard对象
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle:nil];
// 获取 到更控制器
UIViewController *vc = [storyboard instantiateInitialViewController];
self.window.rootViewController = vc;
}
( 6 ) 一次性代码 "谁用谁知道"
一:
// 一次性代码
static int one = 1;
if (one == 1) {
<#content#>
one -= 1;
}
二:
// 一次性代码
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
<#当前线程执行#>
});
( 5 ) 让cell分割线无间距
copy进控制器即可生效
#pragma mark - 让分割线无间距方法
- (void)viewDidLayoutSubviews
{
if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[self.tableView setSeparatorInset:UIEdgeInsetsMake(0, 0, 0, 0)];
}
if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {
[self.tableView setLayoutMargins:UIEdgeInsetsMake(0, 0, 0, 0)];
}
}
- (void)tableView:(UITableView*)tableView willDisplayCell:(UITableViewCell*)cell forRowAtIndexPath:(NSIndexPath*)indexPath
{
if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
[cell setSeparatorInset:UIEdgeInsetsZero];
}
if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
[cell setLayoutMargins:UIEdgeInsetsZero];
}
}
( 4 ) 隐藏tableView多余的分割线
// 隐藏tableView分割线
self.tableView.tableFooterView = [[UIView alloc]init];
( 3 ) indexPath
在点击cell调用的方法中
indexPath.section表示组
indexPath.row 表示行
(从 0 开始)
( 2 ) cell的静态单元格
作用:
直接在storyboard中操作,
不需要实现数据源方法即可显示出数据
( 1 ) cell间灰色区域由来
转载于: