TextViews我努力学习UIPageViewController
S和打击,我解决不了的问题。 这就是我试图做的:ViewControllers在UIPageViewController
- 步骤:
- 我只是创造了2个视图控制器和 故事板页面视图控制器。
- 然后,我向文件所有者
PageViewController
添加了一些代码至 表现为自身的dataSource
和delegate
。 - 当我跑步时,事情运作良好。
- 我在第二个视图控制器中添加了一些按钮和文本字段。
- 我跑了,效果很好。
- 现在我添加了一个文本视图到第二个视图控制器并运行。当我试图在文本视图内写入内容时,页面控件抖动并移动到第一个视图控制器。
有没有人有过这样的经历?
@interface AMPageViewController : UIPageViewController <UIPageViewControllerDataSource, UIPageViewControllerDelegate>
@end
实施:
#import "AMPageViewController.h"
@interface AMPageViewController()
{
UIViewController *mainController;
UIViewController* socController;
}
@end
@implementation AMPageViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard"
bundle: nil];
mainController = (UIViewController*)[mainStoryboard instantiateViewControllerWithIdentifier: @"First"];
socController = (UIViewController*)[mainStoryboard instantiateViewControllerWithIdentifier: @"Second"];
[self setViewControllers:@[mainController]
direction:UIPageViewControllerNavigationDirectionForward
animated:NO
completion:nil];
self.dataSource = self;
self.delegate = self;
// Do any additional setup after loading the view.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController
{
if (viewController == socController)
return mainController;
else return nil;
}
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController
{
if (viewController == mainController)
return socController;
else return nil;
}
- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController
{
return 2;
}
- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController
{
return 0;
}
@end
If you want to download and try the project
页面视图控制器的延迟让您无论是滑动或轻敲接近一个边缘翻开新的一页。我猜你正在击中左侧的那个轻击手势识别器。 – rdelmar 2013-02-21 03:58:24
我不这么认为。请看附件项目https://dl.dropbox.com/u/62559842/PageViewcontrollerTest.zip – Bavan 2013-02-21 04:19:15
是的,我明白你的意思了。它与使用滚动转换有关。如果将其更改为卷曲,则表现正常。 – rdelmar 2013-02-21 04:47:53