IOS开发-UI入门篇

对于IOS开发,下面是个人简单的见解,希望对你们有帮助

1、前期iOS-UI开发我们最好进行手动管理内存,这样可以更好的了解系统的管理机制,所以以下是介绍怎么在MRC环境下创建(Xcode关掉ARC的步骤);

(1)打开Xcode选中当前工程:

(2)选中Build Settings:

(3)在输入框内输入count:

(4)选择Objective-C Automatic Reference Counting  将其设置为  NO:

(5)AppDelegate.h文件中将:@property (assign, nonatomic) UIWindow *window;改成@property (retain, nonatomic) UIWindow *window;

(6)AppDelegate.m文件中重写:- (void)dealloc  {  [_window release];  [super dealloc];  }

2、在开发当中我们会用到模拟器下面我们来看一下模拟器添加步骤(Xcode环境下);

(1)打开Xcode选择Window下的Devices:

(2)点击“+”在弹出来的选择框里对 Simulator Name 进行选择:

下面是一些简单的练习:我们可以跟着敲一下,加深了解

练习一:建立一个Empty Application项目,并将window的背景颜色改为红色;

※代码(左)、模拟器运行效果(右)

练习二:在练习一的基础上创建两个视图1.一个背景颜色设置为黄色(yellowView),一个背景颜色设置为绿色(greenView);2.将视图添加到window上面;

※代码(左)、模拟器运行效果(右)

练习三:在练习二的基础上,将greenView添加到yellowView上,分析结果;

※代码(左)、模拟器运行效果(右)

练习四:在练习三的基础上,修改greenView的center,分析结果;

※代码(左)、模拟器运行效果(右)

练习五:新建一个工程,创建5个视图(aView、bView、cView、dView、eView)

1、 window用addSubview:方法先后添加aView和bView;

2、window用insertSubview:atIndex:方法把cView添加到aView和bView之间;

3、window用insertSubview:aboveSubview:方法把dView添加到aView的上面;

4、window用insertSubview:belowSubview:方法把eView添加到bView的下面;

※代码(左)、模拟器运行效果(右)

练习六:新建一个工程,创建一个view添加到window上面;

1、测试hidden属性;

2、测试alpha属性;

3、测试superview和subviews属性;

4、测试tag属性和viewWithTag:方法;

※代码(左)、模拟器运行效果(右)

时间: 2024-10-10 10:42:39

IOS开发-UI入门篇的相关文章

IOS开发——UI进阶篇(十五)Quartz2D介绍

一.Quartz2D简介 1.什么是Quartz2DQuartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作绘制图形 : 线条\三角形\矩形\圆\弧等绘制文字绘制\生成图片(图像)读取\生成PDF截图\裁剪图片自定义UI控件 2.Quartz2D实例Quartz 2D能做很多强大的事情,例如 裁剪图片 涂鸦\画板 手势解锁 报表:折线图\饼状图\柱状图 二.自定义view 1.Quartz2D在iOS开发中的价值为了便于搭建美观的UI界面,iOS提供了UI

IOS开发——UI进阶篇(十七)CALayer,核心动画基本使用

一.CALayer简介 1.CALayer在iOS中,文本输入框.一个图标等等,这些都是UIView你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层 在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层 @property(nonatomic,readonly,retain) CALayer *layer; 当UIView需

iOS开发——UI进阶篇(十九)UISearchBar控件简介

最近用到搜索功能.总结一下 搜索,无疑可以使用UISearchBar控件! 那就先了解一下UISearchBar控件吧! UISearchBar控件就是要为你完成搜索功能的一个专用控件.它集成了很多你意想不到的功能和特点! 首先,还是来普及一下UISearchBar控件API相关的属性和方法吧! UISearchBar属性相关 _searchBar = [[UISearchBar alloc] initWithFrame:CGRectZero];// 初始化,不解释 [self.searchBa

IOS开发——UI进阶篇(七)程序启动原理

一.Info.plist常见的设置 1.建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除 在旧版本Xcode创建的工程中,这个配置文件的名字就叫“Info.plist” 项目中其他Plist文件不能带有“Info”这个字眼,不然会被错认为是传说中非常重要的“Info.plist” 项目中还有一个InfoPlist.strings的文件,跟Info.plist文件的本地化相关 2.常见属性

IOS开发——UI进阶篇(十二)事件处理,触摸事件,UITouch,UIEvent,响应者链条,手势识别

触摸事件 在用户使用app过程中,会产生各种各样的事件 一.iOS中的事件可以分为3大类型 触摸事件加速计事件远程控制事件 响应者对象在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事件.我们称之为“响应者对象” UIApplication.UIViewController.UIView都继承自UIResponder,因此它们都是响应者对象,都能够接收并处理事件 二.UIResponder UIResponder内部提供了以下方法来处理事件触摸事件- (v

IOS开发——UI进阶篇(十一)应用沙盒,归档,解档,偏好设置,plist存储,NSData,自定义对象归档解档

1.iOS应用数据存储的常用方式XML属性列表(plist)归档Preference(偏好设置)NSKeyedArchiver归档(NSCoding)SQLite3 Core Data 2.应用沙盒每个iOS应用都有自己的应用沙盒(应用沙盒就是文件系统目录),与其他文件系统隔离.应用必须待在自己的沙盒里,其他应用不能访问该沙盒应用沙盒的文件系统目录,如下图所示(假设应用的名称叫Layer)模拟器应用沙盒的根路径在: (apple是用户名, 8.0是模拟器版本)/Users/apple/Libra

IOS开发——UI进阶篇—UITableView,索引条,汽车数据展示案例

一.什么是UITableView 在iOS中,要实现展示列表数据,最常用的做法就是使用UITableViewUITableView继承自UIScrollView,因此支持垂直滚动,而且性能极佳 UITableView的两种样式UITableViewStylePlainUITableViewStyleGrouped 二.如何展示数据 UITableView需要一个数据源(dataSource)来显示数据 UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等 没有设置数据源的

IOS开发——UI进阶篇(十六)Quartz2D实战小例子

一.画线 只有在drawRect中才能获取到跟view相关联的上下文 - (void)drawRect:(CGRect)rect {} 一条线 // 1.获取跟当前View相关联的layer上下文(画板) // 总结:目前获取的所有上下文都是以UIGraphics开头 // CGContextRef:上下文类型 // CG:CoreGraphics Ref:引用 CGContextRef ctx = UIGraphicsGetCurrentContext(); // 2.绘制内容,拼接路径 //

IOS开发——UI进阶篇(十)导航控制器、plist存储、微博详情页

一.导航控制器出栈 1.initWithRootViewController本质 UIViewController *vc = [[OneViewController alloc] init]; // 创建导航控制器 // 导航控制器必须要有一个根控制器 UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc]; // 会调用push方法 // initWithRoot