上篇文章介绍了如何用UITableView显示表格,并讲了几种UITableViewCell的风格.不过有时候我们需要自己定义 UITableViewCell的风格,其实就是向行中添加子视图.添加子视图的方法主要有两种:使用代码以及从.xib文件加载.当然后一种方法比较直 观. 我们这次要自定义一个Cell,使得它像QQ好友列表的一行一样:左边是一张图片,图片的右边是三行标签: 当然,我们不会搞得这么复杂,只是有点意思就行. 1.运行Xcode 4.2,新建一个Single View Appli…
通过继承UITableViewCell来自定义cell 1.创建一个空的项目.命名: 2.创建一个UITableViewController 并且同时创建xib: 3.设置AppDelegate.m中window的根控制器为刚刚创建的TableViewController: [cpp] view plaincopyprint? - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDic…
在用到UITableVIew的时候,经常会自定义每行的Cell 在IOS控件UITableView详解中的下面代码修改部分代码就可以实现自定义的Cell了 [cpp] view plaincopy - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 自定义代码: [cpp] view plaincopy static NSString *Cel…
iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局 一.项目文件结构和plist文件 二.实现效果 三.代码示例 1.没有使用配套的类,而是直接使用xib文件控件tag值操作 数据模型部分: YYtg.h文件 // // YYtg.h // 01-团购数据显示(没有配套的类) // // Created by apple on 14-5-29. // Copyright (c) 2014年 itcase. All rights reserved. //…
iOS开发多线程篇—自定义NSOperation 一.实现一个简单的tableView显示效果 实现效果展示: 代码示例(使用以前在主控制器中进行业务处理的方式) 1.新建一个项目,让控制器继承自UITableViewController. // // YYViewController.h // 01-自定义Operation // // Created by apple on 14-6-26. // Copyright (c) 2014年 itcase. All rights reserved…
iOS应用的入口自定义和事件处理的自定义 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { MWindow *window = [[MWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; window.backgroundColor = [UIColor yell…
一.自定义构造方法 有时候需要快速创建对象,可以自定义构造方法 + (instancetype)shopView { return [[self alloc] init]; } - (instancetype)initWithShop:(NJShop *)shop { if (self = [super init]) { self.shop = shop; } return self; } + (instancetype)shopViewWithShop:(NJShop *)shop { ret…
在使用xib自定义view的时候,个人习惯性的直接使用xib中的约束,所以自然而然的要打开Autolayout.以前在使用的时候没有发现什么问题,最近项目中使用的时候突然发现在导航栏透明的情况下,出现实际的frame比设置的frame高度缩小64的问题,然后上网查找各种博客,最后差点被五花八门的写法带跑偏了,遂简单记录一下正确的解决方式. 自定义方法大致如下: 1.xib 和TestXibView是绑定的 2.xib中如下图:(Autolayout开启的) 3.TestXibView.m中主要代…
在开发中,经常会用到一个需要重复使用的模块,比如好友列表中每个用户的展示或每条动态,这些都是相同的模版,这样我们就可以把这个部分提取出来放到一个单独的.xib中.那么提取出的.xib如何在其他.xib中使用呢? 接下来就说一下如何在.xib中加载其他的.xib.大概结构是这样的: 创建项目,项目名称叫CompositeXib 创建MainView和ChildView,ChildView将作为子View包含到MainView中. 创建完成后是这样的: 设置ChildView的Size可以自定义,去…
当系统自带的cell无法满足我们的要求的时候,我们就可以自定义自己的cell. 先看看效果,这个效果有点重复造轮子的感觉,因为UITableView已经实现了这种布局. 打造自己的cell只需简单的3步 使用xib布局需要的控件,让该xib文件和一个继承自UITableViewCell的自定义类关联. 在代码中使用registerNib方法加载该xib文件. 把数据填充到xib 实现步骤: 建立好工程后,我们新建一个xib文件,然后从右边的控件库中把一个UITableViewCell拖到xib上…
iOS项目,根据设计图,有时需要自定义UIView的UINavigationBar的背景.可以切出来一张1像素左右的背景图片,来充当UINavigationBar的背景. 可以利用NavigationBar的- (void)setBackgroundImage:(UIImage *)backgroundImage forBarMetrics:(UIBarMetrics)barMetrics方法将图片填充NavigationBar的背景. 具体代码可参考: [self.navigationCont…
iOS开发之  Xcode6.1创建仅xib文件,无storyboard的hello world应用 由于Xcode6之后,默认创建storyboard而非xib文件,而作为初学,了解xib的加载原理很重要,所以,需要创建一个没有storyboard的项目 1. 创建一个新的工程 2. 选择仅一个视图的模板 选择 Single View Application , 点击Next 3. 删除storyboard和launchscreen.xib文件 将storyboard和launchscreen…
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30px; margin-left: -30px; cursor: pointer; position: absolute…
今天给大家介绍一下Apple开发中三种几种常用的应用程序编写方式:纯代码创建.使用storyboard/XIB.我们都知道,纯代码编写模式适合大型项目大规模使用,利于版本管理.追踪改动以及代码合并,代码重用性强,代码后期维护方便快捷.但是我们不能否认它开发周期长,代码结构复杂,自动布局AutoLayout困难等缺点, 一.Interface Builder介绍 1.概念 Interface Builder苹果平台下用于设计和测试用户界面的应用程序,简称IB.简单理解,IB就是提供可视化设计环境.…
给大家演示 应用程序下载 小项目,效果图:涉及知识点:懒加载,九宫格算法,字典转模型,自定义UIView ,xib文件的使用 首先把素材拖到Xcode项目中:简单看一下素材文件 此时大家应该首先关注.plist后缀的文件,里面存放的是我们用的数据,接下来看一下plist文件里面的数据 从这里面可以看到有12个应用程序下载,也就是12个UIView控件, 接下来,我们就加载这个plist文件,使用里面的数据.首先不是把plist文件拖拽到Xcode中就会自动使用的,而是加载plist文件,才能使用…
主要方法: //自定义推送 - (void)networkDidReceiveMessage:(NSNotification *)notification { NSDictionary * userInfo = [notification userInfo];// NSString *contentUser = [userInfo valueForKey:@"content"];//content:获取推送的内容 NSDictionary *extras = [userInfo val…
一.Xib和storyboard对比 *共同点: 1>都用来描述软件界面 2>都用Interface Builder工具来编辑 3>本质都是转换成代码去创建控件 *不同点 1>Xib是轻量级的,用来描述局部的UI界面 2>storyboard是重量级的,用来描述整个软件的多个界面,并且能展示多个界面之间的跳转关系 二.Xib的加载方法 方法1: NSArray *views = [[NSBundle mainBundle] loadNibNamed:@"xib文件名…
上篇文章介绍了如何用UITableView显示表格,并讲了几种UITableViewCell的风格.不过有时候我们需要自己定义 UITableViewCell的风格,其实就是向行中添加子视图.添加子视图的方法主要有两种:使用代码以及从.xib文件加载.当然后一种方法比较直 观. 我们这次要自定义一个Cell,使得它像QQ好友列表的一行一样:左边是一张图片,图片的右边是三行标签: 当然,我们不会搞得这么复杂,只是有点意思就行. 1.运行Xcode 4.2,新建一个Single View Appli…
一.键盘通知 当文本View(如UITextField,UITextView,UIWebView内的输入框)进入编辑模式成为first responder时,系统会自动显示键盘.成为firstresponder可能由用户点击触发,也可向文本View发送becomeFirstResponder消息触发.当文本视图退出first responder时,键盘会消失.文本View退出first responder可能由用户点击键盘上的Done或Return键结束输入触发,也可向文本View发送resig…
一:加载xib 1.分别创建xib,.h  .m文件继承自UIView. 在xib上绑定类名. 或者创建文件的时候直接勾选xib 2.在控制器中调用类方法 jyq52787网盘/ios/潭州学院/iOS-音乐播放器--视频 二:加载storyboard 1.创建一个Controller,例如:        AddOtherViewController : UIViewController 2.command+n 创建一个stroyboard,命名test 3.为storyboard,绑定类Ad…
菜单事件包括,剪切.拷贝.全选.分享...,此 demo 只有 copy.share 1.定义 field 继承与 UITextField - (BOOL)canPerformAction:(SEL)action withSender:(id)sender { if (action == @selector(copy:)) { return YES; } return NO; } - (void)copy:(id)sender { [self resignFirstResponder]; //持…
首先,在xib中约束了宽高22,但是需要代码动态重设,所以一开始如下设置,但是实际显示的仍然是22,而不是重设的值: 然后直接拿xib的将布局约束对象拖线重新通过代码重设约束值,虽然打印的结果宽高值是22,但是显示效果是33:…
先来看一个可能会遇到的问题: 如果你已经删除了xcode为你的项目自动生成的LaunchScreen.storyboard, 然后你在测试你的app的时候发现,屏幕里出现了黑色的区域,如上图(画红线的区域): 那么,你需要重新设置一下xcode里面的一些选项,并且用代码来实现启动画面的自定义. 首先 箭头所指的地方,你需要更改为你存放启动画面的那个image set. 所以你需要创建一个启动画面的Image set. 新建的方法如下(点击项目里的.xcassets文件,在image set编辑页…
大家知道怎么用代码让label中的文字换行,只需要 label.numberOfLines = 0; label.text = @"这是第一行啦啦啦啦,\n这是第二行啦啦,\n这是第三行"; 但是不想把label拖线出来设置,想懒一下在storyBoard或xib中如何实现呢! ps:label设置成自动换行的时候,高度的约束可以不设置,默认为label内文字的高度 1.设置Lines 为0 2.输入文字 : 这是第一行啦啦啦啦,\n这是第二行啦啦,\n这是第三行 现在的还是没有换行,…
平常开发中对于启动页可能会有一些特别的要求,比如在启动页加动画或加一些按键可以响应事件等,最近项目中要在启动页增加版本号,因为版本号是不断的改变,所以要动态实现把它加到启动页上:在XCode上面配置的Launch Images Source或Launch Screen FIle(IOS8以上会优先调用这个作为启动项)都是保存一张静态图片: 原理: 其实原理也是很简单,启动页还是运用Launch Images Source的内容,然后在做一个视图在最上层,视图的背景用启动项的那张图,让人误以为还在…
先上图: 如果我们要实现中间按钮自定义样式,方法应该蛮多,这里介绍一种最简单的. 1.创建类继承:UITabBarController,如下代码都是写在该类的 .m文件里 2.定义最中间的自定义样式,写在viewDidLoad里 UIButton *btn = [[UIButton alloc] init]; btn.layer.cornerRadius = 30; btn.layer.masksToBounds = YES; btn.backgroundColor = [UIColor red…
xib文件的实质是xml,描述界面对象,每个对象都有一个很重要的属性,identity inspector面板中class属性,加载xib文件的时候实际上是实例化界面对象相对应的这些class. xib文件的加载过程: 1.将xib文件从磁盘载入内存,有两种技术可以加载xib文件:NSBundle和UINib. 2.执行unarchive和initialize操作,该过程主要由NSCoding Protocol中的initWithCoder:(NSCoder *)decoder完成. 3.建立c…
一.自定义Cell 为什么需要自定义cell:系统提供的cell满足不了复杂的样式,因此:自定义Cell和自定义视图一样,自己创建一种符合我们需求的Cell并使用这个Cell.如下图所示的这些Cell都是通过自定义Cell样式实现的:…
UITableView cell自定义头文件:shopCell.h#import <UIKit/UIKit.h>@interface shopCell : UITableViewCell@property (strong, nonatomic)  UIImageView *image;@property (strong, nonatomic)  UILabel *name;@property (strong, nonatomic)  UILabel *itemshop;@property (s…
1.创建多个视图控制器,放如UITabBarController中 AViewController *aa = [[AViewController alloc] init]; UINavigationController* ayNav = [[UINavigationController alloc]initWithRootViewController:aa]; BViewController *bb = [[BViewController alloc] init]; UINavigationC…