8.UIsearchbar放到Navigationbar 上(意思是建个View作为titleview)

    //此处调用的是第三方封装的SearchBar,也可以自定义。
self.searchBarWithDelegate = [[INSSearchBar alloc] initWithFrame:CGRectMake(, , 44.0, 44.0)];
self.searchBarWithDelegate.delegate = self; UIView *searchView = [[UIView alloc]initWithFrame:CGRectMake(, , , )];
searchView.backgroundColor = [UIColor clearColor];
[searchView addSubview:self.searchBarWithDelegate]; UILabel *descriptionLabel2 = [[UILabel alloc] initWithFrame:CGRectMake(45.0, , , )];
descriptionLabel2.textColor = [UIColor whiteColor];
descriptionLabel2.font = [UIFont fontWithName:@"AvenirNext-Regular" size:18.0];
descriptionLabel2.text = @"找点东西";
[searchView addSubview:descriptionLabel2]; self.navigationItem.titleView = searchView;

我决定倒着写了。。。

7.给collectioncell加边框 或者给任何view加边框的方法

- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self)
{
// 初始化时加载collectionCell.xib文件
NSArray *arrayOfViews = [[NSBundle mainBundle] loadNibNamed:@"ClassesViewCell" owner:self options:nil];
// 如果路径不存在,return nil
if (arrayOfViews.count < )
{
return nil;
}
// 如果xib中view不属于UICollectionViewCell类,return nil
if (![[arrayOfViews objectAtIndex:] isKindOfClass:[UICollectionViewCell class]])
{
return nil;
}
// 加载nib self = [arrayOfViews objectAtIndex:];
CGFloat borderWidth = 2.0f;
self.layer.borderWidth=borderWidth;
self.layer.borderColor=[UIColor colorWithWhite:0.5f alpha:1.0f].CGColor;
}
return self;
}

这几天做前端得出个经验:

  第一个:Fation的设计实在不好做出来,需要有“机智”的头脑用现有的规则去搭建……比如侧滑这种,苹果没什么框架,开发者硬生生做出了个业界标准来。。。比如tablecell也没有间隔的API,但还是做的出一样的效果。。

  第二个:现在加入了iPhone6和6P之后,整天他妈的要约束来约束去……我要吐了(安卓党肯定表示呵呵)……做iOS前端的工资是不是涨了

1.TableViewCell之间有间隔的方法:使用SectionHeader作为间隔,取消SectionHeader在Navbar下的粘滞效果:

自定义SectionHeader

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

{

    UIView *sectionheader=[[UIView alloc]initWithFrame:CGRectMake(, ,CGRectGetWidth(self.view.bounds), )];

    return sectionheader;

}

2.TableView隐藏没有数据的CELL,然后加个有线的背景:(不知道有没有更好的方法)

    self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
//另外修改样式tableview样式为grouped

3.TableCell在Xib的布局大小会被AutoLayout搞坏。。如图片大小会被Autolayout,想要固定可以使用继承直接写在TableCell.m

(感觉直接XIB里加约束比较靠谱)

-(void)layoutSubviews
{
[super layoutSubviews];
self.imgview.bounds=CGRectMake(,,,);
self.imgview.frame=CGRectMake(,,,);
self.imgview.contentMode = UIViewContentModeScaleAspectFill;
}

4.快速取得界面宽度

CGRectGetWidth(self.view.bounds)

 5.navigationbar颜色设置:(透明度要不透明才是原色,不然有变,参考http://www.cocoachina.com/industry/20131024/7233.html)

正确的函数是:

    [self.navigationController.navigationBar setBarTintColor:[UIColor brownColor]];

 6.设置tab bar颜色 可以写在appdelegate里(http://www.ui.cn/project.php?id=39325)

    [self.tabBar setTintColor:[UIColor whiteColor]];//设置提示色
[self.tabBar setBarTintColor:[UIColor brownColor]];//设置背景色 有个bar!

[iOS UI设计笔记整理汇总]的更多相关文章

  1. Android 高级UI设计笔记07:RecyclerView 的详解

    1. 使用RecyclerView       在 Android 应用程序中列表是一个非常重要的控件,适用场合非常多,如新闻列表.应用列表.消息列表等等,但是从Android 一出生到现在并没有非常 ...

  2. 【转】App开发者必备的运营、原型、UI设计工具整理

    一.运营类 1. APPVIEW,网址:http://lab.hakim.se/appview/ 帮助iOS 应用开发者追踪所有地区App Store最近的用户评论,可以按时间.评分.地区排序,缺点是 ...

  3. App开发者必备的运营、原型、UI设计工具整理

    移动应用开发者们,Attention please!在接下来的内容里,我们将介绍一些能够提高你们的应用的知名度和品质水平的工具. 仔细看看,下面这些工具你们都知道吗,用过吗?如果你还不知道,或许可以尝 ...

  4. 100个iOS开发/设计面试题汇总

    常见问题 你昨天/这周学习了什么? 你为什么热衷于软件开发? 你对哪一种控制系统比较熟悉? 是否参与过GitHub项目? 是否参与过GitHub或其他同类型网站的iOS开源项目? 请描述一下你的iOS ...

  5. 2019新版UI设计面试题汇总(附答案)

    问题一.Android手机的常用设计尺寸有_________.怎么适配ios和安卓. 答案:安卓320 X 480是常规模拟器.但现在的开发都是用360x640做一倍率.480 X 800(1.5倍率 ...

  6. IOS UI 设计 技术

    AutoLayout AutoLayout是一种基于约束的,描述性的布局系统. 程序员—-(cgrect)—>frame(center+bounds)    =====>   程序员—(N ...

  7. 100个iOS开发/设计面试题汇总,你将如何作答?

    原文: http://www.csdn.net/article/2015-01-19/2823604-ios-interview-questions 常见问题 你昨天/这周学习了什么? 你为什么热衷于 ...

  8. Android 高级UI设计笔记06:仿微信图片选择器(转载)

    仿微信图片选择器: 一.项目整体分析: 1. Android加载图片的3个目标: (1)尽可能的去避免内存溢出. a. 根据图片的显示大小去压缩图片 b. 使用缓存对我们图片进行管理(LruCache ...

  9. Android 高级UI设计笔记21:Android SegmentView(分段选择控件)

    1. 分段控制(SegmentView) 首先我们先看看什么是SegmentView的效果,如下: 分段控制这个View控件是ios7的分段控制,和QQ消息页面顶部的效果一样,android没有这个控 ...

随机推荐

  1. 扩展欧几里得算法(extgcd)

    相信大家对欧几里得算法,即辗转相除法不陌生吧. 代码如下: int gcd(int a, int b){ return !b ? gcd(b, a % b) : a; } 而扩展欧几里得算法,顾名思义 ...

  2. Google Zxing 二维码生成与解析

    生成二维码的开源项目可谓是琳琅满目,SwetakeQRCode.BarCode4j.Zxing...... 前端有JQuery-qrcode,同样能实现生成二维码. 选择Zxing的原因可能是对 Go ...

  3. JSP 4个域对象-9个内置对象-11个EL隐式对象

    一. 四大域对象 1. PageContext :页面范围的数据 2. ServletRequest:请求范围的数据 3. HttpSession:会话范围的数据 4. ServletContext: ...

  4. C# WinForm捕获全局异常

    网上找的C# WinForm全局异常捕获方法,代码如下: static class Program { /// <summary> /// 应用程序的主入口点. /// </summ ...

  5. Excel——将内容导出

    using (FileStream fsRead = File.OpenRead("111.xls")) { IWorkbook wk = new HSSFWorkbook(fsR ...

  6. 查询和修改(Queries and Mutations)

    On this page, you'll learn in detail about how to query a GraphQL server. 在这个页面,你将会学习更多的关于如何查询GraphQ ...

  7. dmesg 显示内核消息

    显示内核消息 dmesg [options] dmesg 可以用来显示存储在内核环缓冲区中的消息 系统启动时,内核会用硬件和模块初始化的相关消息填充其环缓冲区.内核环缓冲区中的消息常常用于诊断系统问题 ...

  8. [转]Hibernate与Jpa的关系,终于弄懂

    原文地址:http://blog.sina.com.cn/s/blog_5f1619e80100yoxz.html 我知道Jpa是一种规范,而Hibernate是它的一种实现.除了Hibernate, ...

  9. 对象关系映射ORM

    对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换.从效 ...

  10. Android快速开发框架LoonAndroid (转)

    1.源码简介: 主要有以下模块: (1) 自动注入框架(只需要继承框架内的application既可) (2) 图片加载框架(多重缓存,自动回收,最大限度保证内存的安全性) (3) 网络请求模块(继承 ...