私はUIPageViewController
を覚えようとしていましたが、解決できなかった問題にヒットしました。 これは私が実行しようとしましたものです:UIPageViewControllerのTextViewsを持つViewController
- ステップ:
- 私は単に2つのビューコントローラと ストーリーボードでのページビューコントローラを作成しました。
- 次に、File Ownerに
PageViewController
〜 のコードを追加して、dataSource
とdelegate
として動作します。 - 私が走ったとき、物事はうまくいった。
- ボタンとテキストフィールドを2番目のビューコントローラに追加しました。
- 私はうまくいきました。
- 2番目のビューコントローラにテキストビューを追加して実行しました。テキスト・ビューの中に何かを書き込もうとしたとき、ページ・コントロールがジッタをつけて最初のビュー・コントローラに移動しました。
誰もが今までにこれを経験していますか?
@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
ページビューコントローラの遅延で私のiPhone 4ビーターに取り組んでいますあなたはどちらかスワイプまたは1つのエッジ付近でタップすることで、ページをめくることができます。私はあなたが左のタップジェスチャー認識装置に当たっていると推測しています。 – rdelmar
私はそうは思わない。添付のプロジェクトをご覧くださいhttps://dl.dropbox.com/u/62559842/PageViewcontrollerTest.zip – Bavan
ええ、あなたが意味するものを参照してください。それはスクロール遷移を使用することと関係がある。カールするように変更すると、正常に動作します。 – rdelmar