UIViewController
はUIImageView
、UIImage
の配列を持っています。どのように画像を次の配列位置に変更するために、スライドフィーチャーを右または左に作成できますか?UIViewControllerから右または左にスライドしてUIImageViewから画像を変更する方法
5
A
答えて
8
一般的なアプローチは、ページングが有効になっているイメージの1つのサイズであるUIScrollViewです。
はサブビューとして画像を追加して、このようなコンテンツのサイズを設定...NSArray *images;
CGSize imageSize;
self.scrollView.frame = CGRectMake(10,10,imageSize.width,imageSize.height);
self.scrollView.contentSize = CGSizeMake(imageSize.width * images.count, imageSize.height);
self.scrollView.pagingEnabled = YES;
CGFloat xPos = 0.0;
for (UIImage *image in images) {
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
imageView.frame = CGRectMake(xPos, 0.0, imageSize.width, imageSize.width);
[self.scrollView addSubview:imageView];
xPos += imageSize.width;
// assuming ARC, otherwise release imageView
}
また、あなたが望む効果の内容によってなど、指標をスクロール、バウンスをオフにすることがあります。 UIScrollViewのとUIPageControlを使用することにより
1
あなたは、単にスワイプ方向がUIImage配列と遊ぶのがあなたの前方と後方を扱うためのUISwipeGestureRecognizer
swipeGesture = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(detectSwipe:)];
[swipeGesture setNumberOfTouchesRequired:1];
[swipeGesture setDirection:UISwipeGestureRecognizerDirectionDown | UISwipeGestureRecognizerDirectionUp];
[appView addGestureRecognizer:swipeGesture];
このような方法
detectSwipe
宣言を左または右にされて得ることができます。あなたもチェックすることができます
Apple's SimpleGestureRecognizers Demo
それはあなたを助けることを願っています!
2
、ドラッグ&N both.Set
のIBoutLet- (void)viewDidLoad
{
[super viewDidLoad];
// 1
imageArray = [NSArray arrayWithObjects:
[UIImage imageNamed:@"image2.jpg"],
[UIImage imageNamed:@"man-actor-Ashton-Kutcher-Wallpaper.jpg"],
[UIImage imageNamed:@"image1.jpg"],
[UIImage imageNamed:@"man-curl.jpg"],
[UIImage imageNamed:@"man-in-suit.jpg"],
nil];
for (int i = 0; i < imageArray.count; i++) {
CGRect frame;
frame.origin.x = self.scrollView.frame.size.width * i;
frame.origin.y = 0;
frame.size = self.scrollView.frame.size;
UIImageView *subview = [[UIImageView alloc] initWithFrame:frame];
subview.image = [imageArray objectAtIndex:i];
subview.contentMode = UIViewContentModeScaleAspectFit;
[self.scrollView addSubview:subview];
}
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * imageArray.count, self.scrollView.frame.size.height);
pageControl.numberOfPages = imageArray.count;
}
- (void)scrollViewDidScroll:(UIScrollView *)sender {
// Update the page when more than 50% of the previous/next page is visible
CGFloat pageWidth = self.scrollView.frame.size.width;
int page = floor((self.scrollView.contentOffset.x - pageWidth/2)/pageWidth) + 1;
self.pageControl.currentPage = page;
}
関連する問題
- 1. 画像を左から右にスライド
- 2. スライド画像を左から右
- 3. 画像を左右にスライド
- 4. jqueryを使用して左から右または左から右に画像をスライドさせるにはどうすればよいですか?
- 5. フクロウカルーセルを左から右にスライドさせる方法は?
- 6. Oracleのテキストを右から左に変更する方法は?
- 7. divを右から左にスライド
- 8. jQueryを使用してスライドを右から左へスライド
- 9. 左から右へ画像を表示
- 10. 画像CSSで右から左へスクロール
- 11. 画像の色が左から右に滑らかに変化する
- 12. アニメーションをスライドさせて、Androidで右から左に表示する方法
- 13. Jquery Image右から左へスライド
- 14. Androidを行う方法 - 引き出しを左から右にスライドする..?
- 15. ヒストグラムを左から右に変更
- 16. jQuery:コンテンツを右から左にスライドさせますか?
- 17. jQuery左から右にスライドします。CSS
- 18. iPadで左から右へスライドするような画像をHTMLで読み込む方法
- 19. ObjectAnimationを使用して画像を左から右へ移動
- 20. mootools左から右からサイズを変更できます。
- 21. アクションバーの方向を右から左に変更する
- 22. matplotlib画像を左から右に表示する(matlabモンタージュ)
- 23. jQueryアニメーション - 画像を左から右に表示する
- 24. スライド(アニメーションを使用して右から左へのdiv)
- 25. 右から左にではなく、下から上へUIViewControllerを閉じる
- 26. 棒グラフの右から左への方向を変更する方法は?
- 27. スウィフトを使用して右から左、左から右にカスタムビューをアニメーション化する方法
- 28. VI(VIM):右から左へ削除/変更しますか?
- 29. rootViewControllerを変更するときに右アニメーションからスライド
- 30. 私は画像をスライドしたい、画像はjsonから来ている
を作成し、彼らは重複していないことを確認しUIScrollViewのとUIPageControlをドロップ私は、私が正しくあなたの提案を以下のいた場合確かに、それをしようとしませんでしたそれは動作しません、スクロールビューは空白のままです。多分、私はオブジェクト、イベントがどのように動作するのか理解できないために何かを見逃しています...ありがとう – Sweet
この回答は私の問題を解決したリンクに私を導いた:http://www.iosdevnotes.com/2011/03/uiscrollview-ページング/。おかげでダン、私はそれを投票し、答えとしてマーク – Sweet