
iOS开发UI部分
ImYangy
我做不了十几岁的少年天才,但愿到三十多岁能成为一个优秀工程师
展开
-
iOS开发 -- UICollectionView(集合视图)
UICollectionView 是一个新型的展示数据的视图,他和TableView一样 使用起来一样 都需要设置dataSource 和 delegate 只不过collectionView对应cell的设置比较复杂 可以实现很炫的效果注意:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:原创 2015-09-21 08:34:44 · 974 阅读 · 0 评论 -
iOS开发 -- 给导航栏设置统一风格(appearance)
给导航栏 设置同一种风格 用UIAppearance 在appdelegate.m里面只要是UINavigationBar 创建的所有对象都拥有同样的设置 [[UINavigationBar appearance]setBarTintColor:[UIColor brownColor]];设置图片 [[UINavigationBar appearance]setBackgroundIma原创 2015-09-06 15:32:10 · 2110 阅读 · 0 评论 -
iOS开发 -- 点击取消红点提示
点击取消红点提示 (AppDelegate.m文件) 1:在 AppDelegate.m文件遵守 UITabBarControllerDelegate协议 2 : 设置代理 tabRootVC.delegate = self;3:实现两个方法 //设置Controller对应的标签 是否可以点击 是否可以调换位置-(BOOL)tabBarController:(UITabBarContr原创 2015-09-06 15:29:21 · 3000 阅读 · 0 评论 -
iOS开发--标签视图控制器--UITabBarController
UITabBarController也是和UINaVigationController一样是多视图控制器 ,但是他和导航视图控制器不太一样,在对视图控制器管理上 ,导航视图控制器通过push pop进行栈的管理 ,界面之间是有层级关系, 标签视图控制器 管理的视图控制器是并列存在的关系 我们通过点击不同的标签 进行不同界面的切换在根视图控制器 //配置ViewControllers-(原创 2015-09-06 15:26:54 · 580 阅读 · 0 评论 -
iOS开发--Block的使用
1:Block为匿名函数 能够实现函数回调功能可以用于界面之间的通信 同时可以进行传值2:注意:定义Block必须使用copy修饰 retain和assign会照成野指针问题3:不使用block时候需要销毁-(void)dealloc{ //释放block Block_release(_passValueBlock); [super dealloc];}4:在block原创 2015-09-06 15:22:40 · 456 阅读 · 0 评论 -
iOS开发UI -- UIAlertController(提示框)
两种提示方式 UIAlertControllerStyleActionSheet 提示从下面出来 UIAlertControllerStyleAlert 提示在中间出来- (IBAction)LoginBt:(UIButton *)sender { UIAlertController *alertVC = [UIAlertController alertControllerWithT原创 2015-09-06 15:20:41 · 562 阅读 · 0 评论 -
iOS开发UI -- 在storeBoard中通过标识符找到页面
对新建的 设置标示符 如:aa 添加点击的事件- (IBAction)DotAction:(id)sender { ColoeOneViewController *colorVC = [self.storyboard instantiateViewControllerWithIdentifier:@"aa"]; [self.navigationController pushView原创 2015-09-06 15:18:35 · 504 阅读 · 0 评论 -
iOS开发 — (UINaVigationController)导航控制器,界面传值
UINavigationController 继承于 UIViewController , 以栈的方式管理所 控制的视图控制器 , 至少要有一个被管理的视图控制器 ,这个控制器我们称作导航控制器的根视图控制器 。 任何继承自 UIViewController 的类(多态)都可以作为根控制器。 一: 工作原理: UINavigationController 通过 栈 的⽅式管理控制器的切换,原创 2015-08-25 09:17:24 · 2393 阅读 · 0 评论 -
iOS开发 -- 图片轮播(详解)
一个简单的图片轮播期小Demo,用了UIScrollView和UIPageControl的巧妙搭配. 能够实现图片的轮播,用定时器(NSTimer)控制.当按住图片的不动的时候,计时器停止,当松开图片的时候计时器又开始. 能够实现简单的多线程.当滑动其他事件的时候,轮播事件不受影响. 区别了消息机制(NSRunloop)里 默认属性NSDefaultRunLoopMode(单线程) 和 另外一个原创 2015-08-22 19:01:02 · 3009 阅读 · 0 评论 -
iOS开发 -- UISegmentedControl
UISegmentedControl 是UI中的分段控件 相当于一组button点击不同的分段 进行不同界面的切换展示 在使用上 和 UI中的其他控件 没有区别 也是分四步登陆 注册 找回密码界面code#import "RootViewController.h"#import "LoginView.h"#import "PasswordBackView.h"#import "Regis原创 2015-08-22 18:50:16 · 583 阅读 · 0 评论 -
iOS开发 -- imageView (动画) UISlider进度条(滑块)
-(void)layoutImageView{ //创建imageView对象 self.imageview = [[UIImageView alloc]initWithFrame:CGRectMake(50, 170, 275, 300)]; //设置图片 self.imageview.image = [UIImage imageNamed:@"$IY$6Q6LF原创 2015-08-22 18:48:32 · 2648 阅读 · 0 评论 -
iOS开发 -- UIpageControl
通常在Scrollview滚动的时候修改pageControl的currentPage 使⽤场景:引导页 ⾸页的轮播图等属性:: //布局pagecontrol-(void)layoutPageControl{ //创建对象 self.pageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(0, 0, 225, 3原创 2015-08-22 18:44:55 · 423 阅读 · 0 评论 -
iOS开发 -- UIScrollView属性及触发时机
聚合数据UIScrollView 是可以滚动的 view , UIView 本⾝身不能滚动,子类 UIScrollview 拓展了滚动⽅方⾯面的功能 。 UIScrollView 是所有滚动视图的基类 。 以后的 UITableView , UITextView 等视图都是继承于该类。 使⽤用场景:显⽰示不下(单张⼤大图);内容太多(图⽂文混排);滚动 头条(图⽚片); 相册等 UIScr原创 2015-08-22 18:43:42 · 993 阅读 · 0 评论 -
iOS开发 -- 事件处理(触摸,晃动)
iOS中主要包括三种事件 : 触摸事件 , 晃动事件 , 远程控制事件 1: 触摸事件 : 用户用手指触摸设备硬件 发生的事件对象 对于我们的UIView控件,都是可以对触摸事件进行响应 之前之所以没有响应 是因为我们没有实现 touchesBrgan touchesMoved touchesEnded touchesCanclled方法 方法代码: //开始触摸 当手指触摸到屏幕时候触发原创 2015-08-19 14:15:41 · 646 阅读 · 1 评论 -
iOS开发 -- 耦合 ,target/action设计模式
耦合是衡量⼀一个程序写的好坏的标准之⼀ 耦合是衡量模块与模块之间关联程度的指标 “ ⾼内聚,低耦合 ” 是⾯面向对象编程的核心思想 target/action 设计模式 使⽤用target…action 实现解耦 降低耦合度内三: .h文件 //1: 声明两个实例变量 分别为记录执行者(target),方法(action)@interface TouchView : UIView原创 2015-08-19 14:12:51 · 660 阅读 · 0 评论 -
iOS开发 -- delegate 设计模式
当一个类的某些功能需要被别⼈来实现,但是既不明确是些什么 功能,⼜不明确谁来实现这些功能的时候,委托模式就可以派上⽤场。 delegate 设计模式目的是为了降低类之间的耦合性delegate 是用来解耦的,它不再简简单单让目标去执行一个动作使用场景 控件有一些列时间点,控制器可以实现这个代理方法,以便在适当 的时机做适当的事 .h文件@class TouchView;设置代理@protoco原创 2015-08-19 14:08:08 · 462 阅读 · 0 评论 -
iOS开发 -- 更改placeholder的字体颜色、大小
self.User = [[LTView alloc]initWithFrame:CGRectMake(10, 100, 295, 40)]; _User.textFiled.placeholder = @"Please Input Your Name";核心代码 [_User.textFiled setValue:[UIColor grayColor] forKeyPath原创 2015-08-18 11:02:56 · 860 阅读 · 0 评论 -
iOS开发 -- loadView方法
在ViewController 新建一个View 重写系统的loadView方法就行 原来的View就会被覆盖-(void)loadView{ //[super loadView]; //创建登陆视图 LoginView *loginView = [[LoginView alloc]initWithFrame:CGRectMake(0, 0, 50, 667)];原创 2015-08-18 09:32:13 · 462 阅读 · 0 评论 -
iOS开发 -- UIButton
UIButton : 是iOS中用于响应用户点击事件的空间 他和UILable类似 只不过多了事件的处理功能, 在使用上和UILable差别不大 (1) 创建空间对象 UIButtonTypeCustom 可以让button上的图片显示原来的颜色 UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];2 配置属性原创 2015-08-18 09:05:57 · 763 阅读 · 0 评论 -
iOS开发 -- 屏幕旋转
//设置 当前视图控制器 支持旋转的方向-(BOOL)shouldAutorotate{ return YES;}//设置当前视图控制器 支持旋转的方向-(NSUInteger)supportedInterfaceOrientations{ return UIInterfaceOrientationMaskAll;}代码设置 屏幕旋转并且控制View上视图在横屏和竖屏状态居中重原创 2015-08-18 09:03:35 · 886 阅读 · 0 评论 -
iOS开发 -- "AppDelegate.m"文件 程序启动流程
1: - (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions { ….. } 当程序准备就绪 将要运行时候 我们一般用来进行window的创建以及视图控件等等配置 这时候启动这个方法2: - (void)applicationWil原创 2015-08-18 08:58:22 · 629 阅读 · 0 评论 -
iOS开发 -- UITextField
UITextField(输⼊入框):是控制⽂本输⼊入和显示的控件。在App中UITextField 出现频率也⽐较高。 UITextField和UILabel相⽐,UILabel主要⽤用于⽂字显⽰,不能编辑,UITextField允许⽤户编辑文字(输入)。属性: 1:文本显示 text 要显⽰的⽂本内容 textField.text = @“lanoukeji”; textColo原创 2015-08-14 14:40:28 · 591 阅读 · 0 评论 -
iOS开发 -- iPhone手机屏幕尺寸
1: 获取屏幕尺寸方法:NSStringFromCGRect(self.window.frame) 第一个大括号的0 0 代表原点 也就是左上角的点 iphone4s 屏幕{0, 0}, {320, 480} iphone5 屏幕{0, 0}, {320, 568} iphone5s 屏幕{0, 0}, {320, 568} iphone6 屏幕{0, 0}, {375, 667}原创 2015-08-13 21:49:15 · 837 阅读 · 0 评论 -
iOS开发 -- UILable详解
UILable 是显⽰文本的控件 也表示屏幕上的一个矩形区域 和UIView 相比仅仅多了文字处理的功能 在使用上没有差别重要属性: 1:text 要显⽰示的⽂本内容 label.text = @“ 用户名 ”; 2:textColor 文本内容的颜⾊ label.textColor = [UIColor redColor]; 3:textAlignment 文本的对齐⽅式(⽔平⽅向) l原创 2015-08-13 21:44:31 · 433 阅读 · 0 评论 -
iOS开发 -- UIView详解
UIView : 代表着屏幕上一块矩形区域 在我们iOS开发的应用程序中 几乎所有的能够看到的都是UIView及其子类UIView 的使用包括四步: 1: 创建UIView 对象 UIView *yellowView = [[UIView alloc]initWithFrame:CGRectMake(100, 200, 100, 200)]; 2: 配置属性 yellowView.back原创 2015-08-13 21:41:55 · 467 阅读 · 0 评论 -
UITextField 详解
//初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)]; //设置边框样式,只有设置了才会显示边框样式 text.borderStyle = UITextBorderStyleRoundedRect; typedef转载 2015-08-13 19:22:15 · 333 阅读 · 0 评论 -
iOS开发 常见的错误与警告
1. error: 'xxx' undeclared(first use in this function) 还没有定义(在此函数中第一次使用)。注:使用某一个变量时,如果使用前还没有定义,会出现该错误。在oc以及c语言中,使用变量前必须先定义它。这个错误经常出现在忘记进行变量定义的情况下。但是,慢慢拿习惯后,这种错误会出现得很少。反而经常出此种错误的原因是变量名拼写错误,即出现原创 2015-06-12 21:06:51 · 1602 阅读 · 0 评论 -
iOS开发 之iOS沙盒(sandbox)机制和文件操作(一)
1、iOS沙盒机制 iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等。 1.1、每个应用程序都有自己的存储空间 1.2、应用程序不能翻过自己的围墙去访问别的存储空间的内容 1.3、应用程序请求的数据都要通过权限检测,假如不符合条件的话,不会被放行。转载 2015-06-01 20:41:40 · 528 阅读 · 0 评论 -
iOS开发 SQLite的创建数据库,表,插入查看数据
iOS sqlite数据库操作。步骤是:先加入sqlite开发库libsqlite3.dylib,新建或打开数据库,创建数据表,插入数据,查询数据并打印1、新建项目sqliteDemo,添加使用sqlite的库libsqlite3.dylib2、sqlite 的方法sqlite3 *db, 数据库句柄,跟文件句柄FILE很类似sqlit转载 2015-05-31 10:34:25 · 538 阅读 · 0 评论 -
iOS开发 键盘处理 (隐藏,自动转到下个文本框,轻触背景隐藏)
一、点击“Return”键 隐藏自身软键盘 当对于有多个UITextField控件都想通过点击“Return”来隐藏自身软键盘的情况,这时的最好办法是使用Did End on Exit事件。在点击软键盘右下角的“Return”按钮后,会触发该事件。 该事件有一个sender参数表示当前文本框,这样便可以编写一个通用的事件处理方法(.m文件)——- (IBAct原创 2015-05-26 19:43:16 · 1214 阅读 · 0 评论 -
去掉Xcode工程中的某种类型的警告 Implicit conversion loses integer precision: 'NSInteger' (aka 'long') to 'int32
问题描述 在我们的项目中,通常使用了大量的第三方代码,这些代码可能很复杂,我们不敢改动他们,可是作者已经停止更新了,当sdk升级或者是编译器升级后,这些遗留的代码可能会出现许许多多的警告,那么我们有没有办法去掉这些烦人的警告,不然一个工程几百个警告,你看着怎么都不爽吧.我们怎么去掉警告呢1.最直接,最一劳永逸,最安全的方式,直接找到警告的那段代码,改为不警告.这个方式,最安全.转载 2015-05-26 11:51:56 · 587 阅读 · 0 评论 -
main.m 文件解释
main.m文件代码#import #import "AppDelegate.h"int main(int argc, char * argv[]) { @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])原创 2015-05-22 17:58:59 · 1657 阅读 · 0 评论 -
iOS6中UIViewController被弃用的方法(: first deprecated in iOS 6.0)
deprecated 表示已不被建议使用,可能随时取消它;建议采用新的来替代。1:"modalViewController" 属性 is deprecated : first deprecated in iOS 6.0采用 presentedViewController 2:"dismissModalViewControllerAnimated" is dep原创 2015-05-22 12:37:43 · 1098 阅读 · 0 评论 -
iOS开发UI篇—常见的项目文件介绍
一、项目文件结构示意图 二、文件介绍1.products文件夹:主要用于mac电脑开发的可执行文件,ios开发用不到这个文件2.frameworks文件夹主要用来放依赖的框架3.test文件夹是用来做单元测试的4.常用的文件夹(项目名称文件夹)(1)XXXinfo.plist文件(在该项目中为 01-常见文件-Info.plist)1)简单说明是配置文件,转载 2015-05-21 10:11:58 · 470 阅读 · 0 评论 -
关于iOS程序员面试的技巧
我是一名程序员,做iOS软件开发,公司究竟需要一个怎样的iOS开发人员,面试的时候究竟会主要问哪些问题,今天做个小小的总结,希望能够帮助到大家。这些也都是在网站查看资料做的总结,有些并非原创,但是确实有很多的知识点值得大家去学习(都是为了学习)原创 2015-04-15 21:38:02 · 1643 阅读 · 1 评论 -
iOS开发 json在iOS上的使用
在iPhone上访问网络内容是很必须的,而一些数据就需要以某种形式储存在web服务器上。比如一个app的目录,内容,索引等等。而xml和json,plist都是比较方便的方式。-XML在iPhone上是非常好用的,但是对复杂的数据结构使用上就不那么方便了,具体可以参阅苹果的“基于事件的XML”和“基于树的XML”编程向导-plist是再方便不过了,不过我看最多也就是一个NSDictiona转载 2015-04-15 17:30:17 · 683 阅读 · 0 评论 -
iOS开发 iOS的内存管理方式
本博客内容并非都是本人所写,有一部分参考书本及其他网站。 一切为了学习。参考文档:来自apple开发者官网Objective-C提供了三种内存管理方式:manual retain-release(MRR,手动管理),automatic reference counting(ARC,自动引用计数),garbage collection(垃圾回收)。iOS不支持垃圾回收;ARC翻译 2015-04-14 15:44:12 · 467 阅读 · 0 评论