iOS 8下使用xib/storybord AutoLayout导致的分割线问题
/***
iOS8 分割线问题 在xib/storyboard下面解决方案
http://qiita.com/yimajo/items/10f16629200f1beb7852
http://www.cocoachina.com/ios/20141026/10045.html
http://www.2cto.com/kf/201411/349631.html
http://dev.classmethod.jp/smartphone/iphone/ios-8-uitableview-layoutmargins/
http://demo.netfoucs.com/growinggiant/article/details/42002871
*/
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self.view setLayoutMargins:UIEdgeInsetsZero];
// if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
//
// [self.tableView setSeparatorInset:UIEdgeInsetsZero];
//
// }
//
// if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {
//
// [self.tableView setLayoutMargins:UIEdgeInsetsMake(0, 0, 0, 0)];
//
// }
// [self.tableView setSeparatorInset:UIEdgeInsetsMake(0,0,0,0)];
}
-(void)viewDidLayoutSubviews
{
[super viewDidLayoutSubviews];
if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[self.tableView setSeparatorInset:UIEdgeInsetsZero];
}
if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {
// [self.tableView setLayoutMargins:UIEdgeInsetsZero];
[self.view setLayoutMargins:UIEdgeInsetsZero];
}
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return ;
}
-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *ID = @"TableViewCell";
UITableViewCell*cell = [tableView dequeueReusableCellWithIdentifier:ID];
if (cell==nil) {
UINib *nib = [UINib nibWithNibName:@"TableViewCell" bundle:nil];
[tableView registerNib:nib forCellReuseIdentifier:ID];
return [[nib instantiateWithOwner:nil options:nil]lastObject];
}
// cell.preservesSuperviewLayoutMargins = NO;
// if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
// cell.separatorInset = UIEdgeInsetsZero;
// }
//
// if([cell respondsToSelector:@selector(setPreservesSuperviewLayoutMargins:)]) {
// cell.preservesSuperviewLayoutMargins = false;
// }
//
// if( [cell respondsToSelector:@selector(setLayoutMargins:)]) {
// cell.layoutMargins = UIEdgeInsetsZero;
// [self.view setLayoutMargins:UIEdgeInsetsZero];
// }
return cell;
}
//然后在UITableView的代理方法中加入以下代码
//- (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];
//
// }
//
//}
iOS 8下使用xib/storybord AutoLayout导致的分割线问题的更多相关文章
- iOS回顾笔记(06) -- AutoLayout从入门到精通
iOS回顾笔记(06) -- AutoLayout从入门到精通 随着iOS设备屏幕尺寸的增多,当下无论是纯代码开发还是Xib/StoryBoard开发,自动布局已经是必备的开发技能了. 我使用自动布局 ...
- iOS开发通过代码方式使用AutoLayout (NSLayoutConstraint + Masonry)
iOS开发通过代码方式使用AutoLayout (NSLayoutConstraint + Masonry) 随着iPhone6/6+设备的上市,如何让手头上的APP适配多种机型多种屏幕尺寸变得尤为迫 ...
- 微信团队分享:iOS版微信是如何防止特殊字符导致的炸群、APP崩溃的?
本文来自微信开发团队yanyang的技术分享. 1.引言 相信大家都遇到过一段特殊文本可以让iOS设备所有app闪退的经历.前段时间大年初一,又出现某个印度语字符引起iOS11系统奔溃,所幸iOS版微 ...
- IOS 开发下拉刷新和上拉加载更多
IOS 开发下拉刷新和上拉加载更多 简介 1.常用的下拉刷新的实现方式 (1)UIRefreshControl (2)EGOTTableViewrefresh (3)AH3DPullRefresh ( ...
- nginx负载下站点错误响应会导致其他节点重复响应问题的解决过程
目录 前言 问题来了 问题又来了 问题分析 困惑 转机 后续 前言: 这是我上周工作过程中的一次解决问题的过程.解决的是nginx负载下站点错误响应导致其他节点重复响应. 我在整理这个记叙文时,在给这 ...
- iOS开发UI篇—xib的简单使用
iOS开发UI篇—xib的简单使用 一.简单介绍 xib和storyboard的比较,一个轻量级一个重量级. 共同点: 都用来描述软件界面 都用Interface Builder工具来编辑 不同点: ...
- iOS开发拓展篇—xib中关于拖拽手势的潜在错误
iOS开发拓展篇—xib中关于拖拽手势的潜在错误 一.错误说明 自定义一个用来封装工具条的类 搭建xib,并添加一个拖拽的手势. 主控制器的代码:加载工具条 封装工具条以及手势拖拽的监听事件 此时运行 ...
- Swift技术之如何在iOS 8下使用Swift设计一个自定义的输入法 (主要是NSLayoutConstraint 的使用)
当前位置: > Swift新手入门 > Swift技术之如何在iOS 8下使用Swift设计一个自定义的输入法 时间:2014-09-10 16:49来源:未知 作者:啊成 举报 点击:5 ...
- 李洪强iOS开发之后使用XIB实现横向滚动的UIScrollView
李洪强iOS开发之后使用XIB实现横向滚动的UIScrollView 11111222
随机推荐
- spring-security4.1.2的学习
spring security教程 spring security是什么? Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了 ...
- Centos7上安装dnf-plugins-core
为了在Centos上使用dnf copr命令,需要安装dnf-plugins-core,找了很长时间,包括试了源码编译安装都不行,最后找到了方法,执行下面的命令就可以了. 需要root权限 wget ...
- ASP.NET Misconfiguration: Request Validation Disabled
Abstract: Use the ASP.NET validation framework to prevent vulnerabilities that result from unchecked ...
- 安装Eclipse及相关Plugin
Eclipse: 此处选用基于Eclipse的开发工具:STS 官方网站:https://spring.io/tools/sts Plugins: Open Explorer文件浏览插件it open ...
- maven依赖关系中Scope的作用
目前<scope>可以使用5个值: (1) compile (编译) compile是默认的范围:如果没有提供一个范围,那该依赖的范围就是编译范围.编译范围依赖在所有的classpat ...
- LIKE模糊查询的通配符
LIKE模糊查询的通配符 通配符 说明 示例 % 包含零个或多个字符的任意字符串. WHERE title LIKE '%computer%' 将查找在书名中任意位置包含单词 "comput ...
- sga_target大于sga_max_size数据库无法启动
环境:oracle 11g 单机 操作过程:由于修改SGA的大小,只修sga_max_size,没有修改sga_target,改导sga_max_size大于sga_target的大小,使得数据库无法 ...
- 使用Docker Image跑Gitlab
下载gitlab docker镜像 docker pull gitlab/gitlab-ce:latest 启动gitlab服务 sudo docker run --detach \ --hostna ...
- #define 小知识
#define N 15 #define M 2+N #define W 2*M 问3*W的结果是多少? 结果为27: 知识点:define只能进行非常简单的运算,简单来说就是仅仅是将自身的值代入,而 ...
- mysql基础用法
<1>内置函数: locate('aa', '字段名');查询aa在字段中是否存在,返回1或0 replace('字段名','需替换的字符','替换后的字符') <2>函数: ...