iOS:翻页效果
//
// main.m
// Hello
//
// Created by lishujun on 14-8-28.
// Copyright (c) 2014年 lishujun. All rights reserved.
// // 翻页太快会有问题,未解决
//Unbalanced calls to begin/end appearance transitions for <ContentViewControler: 0x8f3d570>. #import <UIKit/UIKit.h> // -----------------------------内容视图控制器-----------------------------
@interface ContentViewControler : UIViewController
@property (nonatomic,strong) UILabel *label;
@property NSString *message;
@end @implementation ContentViewControler
@synthesize label ;
@synthesize message = _message; -(id)initWithMessage:(NSString *)aMessage
{
_message = aMessage;
return self;
} -(void) viewDidLoad
{
//[super viewDidLoad]; //创建label对象
label = [[UILabel alloc]initWithFrame:CGRectMake(0.0, 0.0, 320.0, 30.0)];
label.text = _message;
label.center = self.view.center;
label.textAlignment = UITextAlignmentCenter;
label.backgroundColor = [UIColor clearColor];
label.textColor = [UIColor redColor]; //在视图上添加label
[self.view addSubview:label];
self.view.backgroundColor = [UIColor lightGrayColor];
} -(void) updateMessage:(NSString*)aMessage
{
_message = aMessage;
label.text = _message;
}
@end // -----------------------------视图控制器对象-----------------------------
@interface MyPageViewController : UIViewController <UIPageViewControllerDataSource>
{
int pageIndex;
}
@property (strong, nonatomic) UIPageViewController *pageViewControler;
@property (strong, nonatomic) NSArray *array;
@end @implementation MyPageViewController @synthesize pageViewControler = _pageViewControler;
@synthesize array = _array; -(void) viewDidLoad
{
[super viewDidLoad]; self.view.frame = CGRectMake(0.0f, 0.0f, 320.0f, 440.0f); ContentViewControler *content1 = [[ContentViewControler alloc]initWithMessage:@"Hello"];
ContentViewControler *content2 = [[ContentViewControler alloc]initWithMessage:@""];
NSArray *array = @[content1];
NSLog(@"%@",content1);
_array = [[NSArray alloc]initWithObjects:content1, content2, nil]; _pageViewControler = [[UIPageViewController alloc]
initWithTransitionStyle: UIPageViewControllerTransitionStylePageCurl
navigationOrientation: UIPageViewControllerNavigationOrientationHorizontal
options: nil]; [_pageViewControler setViewControllers:array
direction:UIPageViewControllerNavigationDirectionForward
animated:YES
completion:NULL]; _pageViewControler.dataSource = self; [self addChildViewController:_pageViewControler];
[self.view addSubview:_pageViewControler.view]; pageIndex = ;
} //--------------- data source 方法 ----------------- - (UIViewController *)
pageViewController:(UIPageViewController *)pageViewController
viewControllerBeforeViewController:(UIViewController *)viewController
{
ContentViewControler *aViewController = (ContentViewControler*)[self changeViewControler:viewController];
[aViewController updateMessage:@"i'm lishujun too"];
return aViewController;
} - (UIViewController *)
pageViewController:(UIPageViewController *)pageViewController
viewControllerAfterViewController:(UIViewController *)viewController
{
ContentViewControler *aViewController = (ContentViewControler*)[self changeViewControler:viewController];
[aViewController updateMessage:@"i'm lishujun"];
return aViewController;
} // --- 自定义方法,在只有两个元素的数组里切换元素---
-(UIViewController *) changeViewControler:(UIViewController*)viewController
{
int index = [_array indexOfObject:viewController];
switch(index)
{
case :
return _array[];
case :
return _array[];
}
return nil;
}
@end // -----------------------------委托对象-------------------------------
@interface HelloWorldAppDelegate : NSObject <UIApplicationDelegate>
{
IBOutlet UIWindow *window;
} @property (nonatomic, retain) UIWindow *window;
@property (nonatomic, retain) MyPageViewController *viewController;
@property (nonatomic, retain) UINavigationController *nav;
@end @implementation HelloWorldAppDelegate @synthesize window;
@synthesize viewController; -(void) applicationDidFinishLaunching:(UIApplication *)application
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen]bounds]];
self.viewController = [[MyPageViewController alloc]init];
//self.window.rootViewController = self.viewController; self.nav = [[UINavigationController alloc]initWithRootViewController: viewController];
[self.nav setNavigationBarHidden:YES]; //隐藏导航栏,位于视图顶部
[self.nav setToolbarHidden:YES]; //隐藏工具栏,位于视图底部 self.window.rootViewController = self.nav; [self.window makeKeyAndVisible];
} @end // -----------------------------程序入口-----------------------------
int main(int argc, char * argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, @"HelloWorldAppDelegate");
}
}
iOS:翻页效果的更多相关文章
- iOS:横向使用iPhone默认的翻页效果
大致思路使用两层辅助UIView的旋转来实现添加后的View的横向翻页效果 CATransform3D transformA = CATransform3DRotate(CATransform3DId ...
- 关于Page翻页效果, PageViewConrtoller
Page View Controllers你使用一个page view controller用page by page的方式来展示内容.一个page view controller管理一个self-c ...
- webapp应用--模拟电子书翻页效果
前言: 现在移动互联网发展火热,手机上网的用户越来越多,甚至大有超过pc访问的趋势.所以,用web程序做出仿原生效果的移动应用,也变得越来越流行了.这种程序也就是我们常说的单页应用程序,它也有一个英文 ...
- 采用cocos2d-x lua 的listview 实现pageview的翻页效果之上下翻页效果
--翻页滚动效果local function fnScrollViewScrolling( sender,eventType) -- body if eventType == 10 the ...
- css实现翻页效果
如图,鼠标移动到图上,实现右上角翻页的效果,本例主要border边框的设置. 一.基本概念 <html> <head> <style> #demo{ width:0 ...
- turn.js 图书翻页效果
今天用turn.js 做图书的翻页效果遇到问题: 图片路径总是出错 调了一天,总算调出来了 我用的thinkphp,其他的不知道是不是一样 三 个地方要改动: 1.后台查出地址 注意的地方:1.地址要 ...
- (旧)子数涵数·PS ——翻页效果
一.首先在网络上下载一张图片,作为素材.这是我下载的素材,至于为什么选择这张照片呢,当然不是因为自己的一些羞羞的念头啦. 二.打开Photoshop,我使用的版本是CS3(因为CS3所占的磁盘空间较小 ...
- ajax翻页效果模仿yii框架
ajax翻页效果,模仿yii框架. 复制代码代码如下: <!DOCTYPE html> <html> <head> <title>ajax分页_w ...
- 纯css3写的仿真图书翻页效果
对css3研究越深入,越觉得惊艳.css3说不上是万能的,但是它能实现的效果也超出了我的想象.它的高效率和动画效果的流畅性很多情况下能替代js的作用.个人习惯css3能实现的效果就不会用js,虽然在国 ...
随机推荐
- CSS3之设计动态立体盒子
CSS3设计3D效果图 使用到CSS3中的变形.缩放.倾斜. 只写了兼容Gecto的.发张图片鼓励自己 <!DOCTYPE html> <html> <head> ...
- UVA Mapping the Swaps
题目例如以下: Mapping the Swaps Sorting an array can be done by swapping certain pairs of adjacent entrie ...
- mongodb 学习笔记 09 -- shard分片
概述 shard 分片 就是 把不同的数据分在不同的server 模型 当中: 用户对mongodb的操作都是向mongs请求的 configsvr 用于保存,某条数据保存在哪个sha ...
- UIImage载入图片的几种方式及差别
用UIImage载入图像的方法非常多.最经常使用的是几种: 1.使用imageNamed函数载入: <span style="font-size:14px;">[UI ...
- careercup-数组和字符串1.6
1.6 给定一幅由N*N矩阵表示的如下,其中每个像素的大小为4个字节,编写一个方法,将图像旋转90度.不占用额外内存空间能否做到? 类似leetcode:Rotate Image 思路: 我们这里以逆 ...
- fork和exec函数
#include<unistd.h> pid_t fork(void); 返回:在子进程中为0,在父进程中为子进程IO,若出错则为- fork最困难之处在于调用它一次,它却返回两次.它在调 ...
- 字符串匹配算法-BM
在用于查找子字符串的算法中,BM(Boyer-Moore)算法是当前有效且应用比较广泛的一种算法,各种文本编辑器的“查找”功能(Ctrl+F),大多采用Boyer-Moore算法.比我们学习的KMP算 ...
- windows 下rabbitmq 安装---转载
原文地址:http://blog.sina.com.cn/s/blog_7cc0c8cc0101mb4a.html 1.下载并安装erlang,http://www.erlang.org/downlo ...
- windows 进程间通讯方法
Windows平台为我们提供了多种进程间通信的机制,主要包括:注册表方式.共享文件方式.共享内存方式.共享数据段.映射文件方式.管道方式. 剪贴板方式.消息方式.其中注册表方式需要增加注册表表项,而注 ...
- PS之火焰铁锈字
效果图 素材一:将下图在PS中打开,选择菜单:编辑>定义图案,命名后关闭图案 素材二 1.新建如下画布 2.将素材二拖入新建好的画布(使用移动工具) 3.先将文字图层复制4次(ctrl+J)并且 ...