IOS UI 第四篇:基本UI
ViewController 应用
secondViewController *secVC = [[secondViewController alloc] initWithNibName:@"secondViewController" bundle:nil];
NSLog(@"success ");
}];
}
[self dismissViewControllerAnimated:YES completion:^{
NSLog(@"dismiss");
}];
}
[super viewWillAppear:animated];
NSLog(@"view will appear");
}
-(void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];
NSLog(@"view did appear");
}
-(void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
NSLog(@"view will disappear");
}
-(void)viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
NSLog(@"view did disappear");
}
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_3_2
UIModalPresentationPageSheet,
UIModalPresentationFormSheet,
UIModalPresentationCurrentContext,
#endif
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_7_0
UIModalPresentationCustom,
UIModalPresentationNone = -1,


@interface Xib_1 : UIViewController
@property (nonatomic, weak) UserModel *model;
-(void)sentRegistMessage:(UserModel *)user;
@end
Xib_2 *xib2 = [[Xib_2 alloc] initWithNibName:@"Xib_2" bundle:nil];
xib2.parentVC = self;
xib2.modalTransitionStyle = UIModalPresentationPageSheet;
[self presentViewController:xib2 animated:YES completion:^{
}];
}
self.Label_1.text = [NSString stringWithFormat:@"恭喜,注册成功,用户名:%@,密码:%@,请牢记,谢谢合作。", user.name, user.pass];
self.Label_1.numberOfLines = 0;
}
@property (nonatomic, weak) Xib_1 *parentVC;
@end
UserModel *model = [[UserModel alloc] init];
model.name = _nameLabel.text;
model.pass = _passLabel.text;
[self.parentVC sentRegistMessage:model];
[self dismissViewControllerAnimated:YES completion:^{
}];
}
@property (nonatomic, copy)NSString *name;
@property (nonatomic, copy)NSString *pass;
@end
UIView *redView;
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
//动画
redView=[[UIView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];
redView.backgroundColor=[UIColor redColor];
[self.window addSubview:redView];
UIButton *button=[UIButton buttonWithType:UIButtonTypeCustom];
[button setTitle:@"开始动画" forState:UIControlStateNormal];
[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[button addTarget:self action:@selector(startAnim:) forControlEvents:UIControlEventTouchUpInside];
button.frame=CGRectMake(100, 400, 100, 44);
[self.window addSubview:button];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
-(void)startAnim:(id)sender{
[UIView animateWithDuration:1 animations:^{
redView.frame=CGRectMake(100, 300, 150, 150);//大小位置
redView.transform=CGAffineTransformMakeRotation(M_PI_4);//角度
} completion:^(BOOL finished) {
if (finished) {
[UIView animateWithDuration:2 animations:^{
redView.transform=CGAffineTransformIdentity;//把变形还原
redView.frame=CGRectMake(100, 100, 100, 100);
}];
}
}];
}

{
[super viewDidLoad];
[self begin];
// Do any additional setup after loading the view from its nib.
}
-(void)begin
{
imageView_3 = [[UIImageView alloc] initWithFrame:CGRectMake(30, 50, 100, 150)];
imageView_2 = [[UIImageView alloc] initWithFrame:CGRectMake(200, 50, 100, 150)];
imageView_1 = [[UIImageView alloc] initWithFrame:CGRectMake(80, 110, 140, 200)];
imageView_1.image = [UIImage imageNamed:[NSString stringWithFormat:@"1.jpg"]];
imageView_2.image = [UIImage imageNamed:[NSString stringWithFormat:@"2.jpg"]];
imageView_3.image = [UIImage imageNamed:[NSString stringWithFormat:@"3.jpg"]];
[_Subview addSubview:imageView_1];
[_Subview addSubview:imageView_2];
[_Subview addSubview:imageView_3];
[_Subview bringSubviewToFront:imageView_1];
}
- (IBAction)PrePress:(id)sender {
[UIView animateWithDuration:1 animations:^{
[_Subview sendSubviewToBack:imageView_3];
imageView_1.frame = CGRectMake(30, 50, 100, 150);
imageView_2.frame = CGRectMake(80, 110, 140, 200);
imageView_3.frame = CGRectMake(200, 50, 100, 150);
}completion:^(BOOL finished) {
//imageView_2.frame = CGRectMake(30, 50, 100, 150);
[_Subview bringSubviewToFront:imageView_2];
UIImageView *tmp;
tmp = imageView_1;
imageView_1 = imageView_2;
imageView_2 = imageView_3;
imageView_3 = tmp;
}];
}
- (IBAction)NextPress:(id)sender {
[UIView animateWithDuration:1 animations:^{
[_Subview sendSubviewToBack:imageView_2];
imageView_1.frame = CGRectMake(200, 50, 100, 150);
imageView_2.frame = CGRectMake(30, 50, 100, 150);
imageView_3.frame = CGRectMake(80, 110, 140, 200);
}completion:^(BOOL finished) {
imageView_2.frame = CGRectMake(30, 50, 100, 150);
[_Subview bringSubviewToFront:imageView_3];
UIImageView *tmp;
tmp = imageView_1;
imageView_1 = imageView_3;
imageView_3 = imageView_2;
imageView_2 = tmp;
}];
}
IOS UI 第四篇:基本UI的更多相关文章
- 环信 之 iOS 客户端集成四:集成UI
在Podfile文件里加入 pod 'EaseUI', :git => 'https://github.com/easemob/easeui-ios-cocoapods.git' 然后在终端中的 ...
- 环信 之 iOS 客户端集成四:集成UI 之 会话列表
1. 初始化 EaseConversationListViewController *chatListVC = [[EaseConversationListViewController alloc] ...
- IOS设计模式第四篇之装饰设计模式的类别设计模式
装饰设计模式 装饰设计模式动态的添加行为和责任向一个对象而不修改他的任何代码.他是你子类化修改类的行为用通过另一个对象的包装的代替方法. 在Objective-c里面有很多这种设计模式的实现,像cat ...
- UGUI的优点新UI系统四 开源
UGUI的优点新UI系统四 开源 新UI系统是开源的,所以开发者可以看到新UI系统实现的源码,并加以修改和使用. 开源授权协议——MIT/X11 Unity所搭载的新UI系统,是在开源授权协议MIT/ ...
- iOS进阶指南试读之UI篇
iOS进阶指南试读之UI篇 UI篇 UI是一个iOS开发工程师的基本功.怎么说?UI本质上就是你调用苹果提供给你的API来完成设计师的设计.所以,想提升UI的功力也很简单,没事就看看UIKit里的各个 ...
- 四核驱动的三维导航—淘宝新UI(设计篇)
前面有一篇博客说到了淘宝UWP的"四核驱动的三维导航—淘宝新UI(需求分析篇)",花了两周的时间实现了这个框架,然后又陆陆续续用了三周的时间完善它. 多窗口导航,与传统的导航方式的 ...
- IOS UI 第八篇:基本UI
实现图片的滚动,并且自动停止在每张图片上 - (void)viewDidLoad{ [super viewDidLoad]; UIScrollView *scrollView = [[U ...
- Android异步处理系列文章四篇之一使用Thread+Handler实现非UI线程更新UI界面
目录: Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面Android异步处理二:使用AsyncTask异步更新UI界面Android异步处理三:Handler+L ...
- 游戏模块分析总结(2)之UI、操作篇
转自:http://www.gameres.com/309812.html 游戏模块分析总结(2)之UI.操作篇 发布者: wuye | 发布时间: 2014-12-12 15:03| 评论数: 0 ...
随机推荐
- linux 下 apache启动、停止、重启命令
原文:linux 下 apache启动.停止.重启命令 基本的操作方法: 本文假设你的apahce安装目录为/usr/local/apache2,这些方法适合任何情况 apahce启动命令: 推荐/u ...
- OBIEE SampleAppv406 自己主动启动配置
SampleApp 一个简短的引论: SampleApp这是一个一站式服务,几乎证明OBIEE不管顶的特征可想而知. 它安装了大量的应用(数据库,OBIEE,的Endeca.TimesTen的.Ess ...
- WebApi的一种集成测试写法(in-memory)
WebApi的一种集成测试写法(in-memory) 大家是如何对webApi写测试的呢? 1.利用Fiddler直接做请求,观察response的内容. 2.利用Httpclient做请求,断言 ...
- IOS 警告 收集
Semantic Warnings Warning Message -WCFString-literal input conversion stopped due to an input byte t ...
- ASP.NET——两个下拉框来实现动态联动
介绍: 在网页中.我们常常会遇到下图中的情况.首先在下拉框中选择所在的省.选择之后,第二个下拉框会自己主动载入出该省中的市.这样设计极大的方便了用户的查找.那这是怎样实现的呢? 1.建立数据库 &qu ...
- Linux/Unix
Linux/Unix 新手和专家教程 你正在找一些高质量的Linux 和 UNIX 的教程吗?如果是,这篇文章会告诉你到哪去找到这些教程.这里我们将给出超过30个相当的不错的 Linux 和 UNIX ...
- js 正则学习小记之NFA引擎
原文:js 正则学习小记之NFA引擎 之前一直认为自己正则还不错,在看 次碳酸钴,Barret Lee 等大神都把正则玩的出神入化后发现我只是个战五渣. 求抱大腿,求大神调教. 之前大致有个印象,正 ...
- js中arguments
arguments 每天一对象,JS天天见,今天我们来看看arguments对象及属性.arguments对象不能显式创建,arguments对象只有函数开始时才可用.函数的 arguments 对象 ...
- Mac在结构quick cocos2d-x编译环境
关于 Quick 很多其它的使用说明可參考安装文件夹下的 README 文件. Quick-Coco2d-x开发工具 普通情况下,我们通常都会採用Cocos Code IDE作为开发工具来高速开发游戏 ...
- MyEclipse使用总结——MyEclipse文件查找技巧
原文:MyEclipse使用总结--MyEclipse文件查找技巧 一.查找文件 使用快捷键[ctrl+shift+R]弹出弹出文件查找框,如下图所示: 二.查找包含某个字符串的文件 使用快捷键[ct ...