[转]IOS Segment页面之间view的切换
有三个view,分别为view1、view2、view3,通过UISegmentedControl进行三个view的切换。
- @interface UIViewDemoViewController : UIViewController {
- IBOutlet UIView *view1;
- IBOutlet UIView *view2;
- IBOutlet UIView *view3;
- }
- - (IBAction)switchViews:(id)sender;
- @end
在Interface Builder中分别建立三个view,关联到各自的输出口,每个view上的UISegmentedControl关联到switchViews:操作。
- - (void)viewDidLoad {
- [super viewDidLoad];
- [self.view addSubview:view1];
- [self.view addSubview:view2];
- [self.view addSubview:view3];
- }
- - (IBAction)switchViews:(id)sender{
- UISegmentedControl *segmentedControl = sender;
- [[NSNotificationCenter defaultCenter] postNotificationName:@"switchViews" object:[NSNumber numberWithInteger:[segmentedControl selectedSegmentIndex]]];
- }
接着,为UISegmentedControl控件建立一个处理类。
- @interface SegmentedControl : UISegmentedControl {
- IBOutlet UIView *view1;
- IBOutlet UIView *view2;
- IBOutlet UIView *view3;
- IBOutlet UIViewDemoViewController* viewController;
- }
- @end
将UISegmentedControl控件的Class改为刚创建的处理类:SegmentedControl,然后,将UISegmentedControl控件关联到四个输出口:view分别关联到刚创建的三个view上,viewController关联到File's Owner上。
- - (void)awakeFromNib{
- [[NSNotificationCenter defaultCenter] addObserver:self
- selector:@selector(switchViews:)
- name:@"switchViews"
- object:nil];
- }
- - (void)switchViews:(NSNotification*)notification{
- NSNumber *viewNumber = [notification object];
- NSInteger i = [viewNumber integerValue];
- [self setSelectedSegmentIndex:i];
- UIView *chosenView = nil;
- switch (i) {
- case 0:
- chosenView = view1;
- break;
- case 1:
- chosenView = view2;
- break;
- case 2:
- chosenView = view3;
- break;
- default:
- break;
- }
- if (chosenView) {
- [[viewController view] bringSubviewToFront:chosenView];
- }
- }
- - (void)dealloc{
- [super dealloc];
- [[NSNotificationCenter defaultCenter] removeObserver:self];
- }
代码可以到视图切换的动画效果进行下载。
[转]IOS Segment页面之间view的切换的更多相关文章
- IOS—通过ChildViewController实现view的切换
IOS-通过ChildViewController实现view的切换 在以前,一个UIViewController的View可能有很多小的子view.这些子view很多时候被盖在最后,我们在最外层Vi ...
- IOS中两个view的切换
在ios中,rootview为PassWordViewController,secondview为SecondViewController,实现在rootview中听过一个跳转按钮实现跳转到secon ...
- ios中两个view动画切换
@interface ViewController () @property(nonatomic,retain)UIView *redview; @property(nonatomic,retain) ...
- IOS关于UIViewController之间的切换
IOS关于UIViewController之间的切换 1.NavigationController切换UIViewController的两种方式 方法一右侧进入 1 SecondViewControl ...
- IOS 页面之间的传值(主讲delegate)
IOS的Delegate,通俗一点说就是页面之间的传值. 总结一下现在知道的IOS页面之间传值的方式有三种 1.使用NSNotification发送通知的传值 主要是通过NSNotificationC ...
- 在uwp仿IOS的页面切换效果
有时候我们需要编写一些迎合IOS用户使用习惯的uwp应用,我在这里整理一下仿IOS页面切换效果的代码. 先分析IOS的页面切换.用户使用左右滑动方式进行前进和后退,播放类似于FlipView的切换动画 ...
- Vue路由实现之通过URL中的hash(#号)来实现不同页面之间的切换(图表展示、案例分析、附源码详解)
前言 本篇随笔主要写了Vue框架中路由的基本概念.路由对象属性.vue-router插件的基本使用效果展示.案例分析.原理图解.附源码地址获取. 作为自己对Vue路由进行页面跳转效果知识的总结与笔记. ...
- Visual Studio跨平台开发实战(3) - Xamarin iOS多页面应用程式开发
原文 Visual Studio跨平台开发实战(3) - Xamarin iOS多页面应用程式开发 前言 在前一篇教学中, 我们学会如何使用Visual Studio 搭配Xcode 进行iOS基本控 ...
- (转)iOS应用程序生命周期(前后台切换,应用的各种状态)详解
原文:http://blog.csdn.net/totogo2010/article/details/8048652 iOS应用程序生命周期(前后台切换,应用的各种状态)详解 分类: ...
随机推荐
- 核心基础以及Fragment与Activity传递数据完整示例
MainActivity如下: package cc.testsimplefragment0; import android.os.Bundle; import android.app.Activit ...
- js apply 和call的区别
function Person(name, profession) { this.name = name; this.profession = profession; this.speak = fun ...
- Oracle操作数据库oracleHelper
1 Oracle OracleHelper //============================================================================ ...
- java web简易网上书店项目系列,使用MVC模式(servlet+jstl+dbutils),开篇
一. 针对很多java web初学者入门困难的问题,笔者利用一个小型web项目,一步一步的展示java web开发方法,每一个章节引入一些java web开发的重点知识,让同学们可以将java web ...
- Codeigniter使用phpexcel
1. 去 http://phpexcel.codeplex.com/ 下载phpexcel源码,解压缩后把phpexcel/Classes里的PHPExcel文件夹和PHPExcel.php复制到CI ...
- 安卓2D游戏开发设置
http://www.cnblogs.com/xiaominghimi/archive/2010/12/23/1921402.html
- Qt中如果通过QStyle自定义能够跨平台的界面控件
我们经常会碰到需要定制界面控件的要求.如果只是在一个平台上,比如说你的控件只需要在Windows上显示,那很好办,Hard code 你的look and feel就可以了.但是如果界面需要在不同平台 ...
- POJ 1700 经典过河问题(贪心)
POJ题目链接:http://poj.org/problem?id=1700 N个人过河,船每次最多只能坐两个人,船载每个人过河的所需时间不同,问最快的过河时间. 思路: 当n=1,2,3时所需要的最 ...
- Matlab单元(Cell)数据的应用
MATLAB里面的cell有的翻译为单元有的翻译为细胞型数据.它是MATLAB的一种特殊数据类型,可以将它看作是一种无所不包的广义矩阵.组成cell的元素可以是任何一种数据类型的常数或者常量,每一个元 ...
- jquery.cookie用法详细解析,封装的操作cookie的库有jquery.cookie.js
jquery.cookie用法详细解析 需要注意存入cookie前,对数据进行序列化, 得到后在反序列化: 熟练运用:JSON.stringify();和JSON.parse(): 通常分为如下几个步 ...