2009-06-06 6 views
1

アップルのDocsとそのサンプルコードhttp://developer.apple.com/iphone/library/samplecode/Scrolling/index.htmlを使用してUIScrollviewを習得しようとしていますが、何か簡単に私を逃してしまいます。iPhone UIScrollView - 画像のタイトルを取得する方法

水平スクロールビューでイメージの1つを選択した場合、イメージのファイル名、または配列内のポインタを取得する方法その後、画像でさらに何かをしてください。

ページコントロールを有効にすると、ページ#を見つけてイメージにマップできると思っていました。私はページをカウントするために減速をカウントすることを考えましたが、十分に十分なフリックはそれを増加させ、偽の数字を与えるでしょう。

私が考えることができる最後のことは、contentOffSetを取得し、1,2,3を与える画像サイズで割ることです。私は配列を指すことができます(今夜試しても疲れています...私はもっ​​と多くの時間を無駄にする;-))。

他のアイデアはありますか?私は彼らが写真アルバムアプリで使うどこかの方法だと思った。

ありがとうございました!たぶん私は自分のコードを理解していないだけかもしれません。

ポール

PS:ここでは、コードは次のとおり

- (void)layoutScrollImages 

{ UIImageView *ビュー=ゼロ。 NSArray * subviews = [scrollView1サブビュー];

// reposition all image subviews in a horizontal serial fashion 
CGFloat curXLoc = 0; 
for (view in subviews) 
{ 
    if ([view isKindOfClass:[UIImageView class]] && view.tag > 0) 
    { 
     CGRect frame = view.frame; 
     frame.origin = CGPointMake(curXLoc, 0); 
     view.frame = frame; 

     curXLoc += (kScrollObjWidth); 
    } 
} 

// set the content size so it can be scrollable 
[scrollView1 setContentSize:CGSizeMake((kNumImages * kScrollObjWidth), [scrollView1 bounds].size.height)]; 

}

  • (ボイド)のviewDidLoad {self.view.backgroundColor = [UIColor viewFlipsideBackgroundColor]。

    // 1.セットアップ複数の画像のためのscrollviewとビューコントローラ // //ノートに追加します。scrollView1 setBackgroundColor [以下は、Interface Builderで行うことができますが、我々は明快 のコードでこれを示し、 :[UIColor blackColor]]; [scrollView1 setCanCancelContentTouches:NO]; scrollView1.indicatorStyle = UIScrollViewIndicatorStyleWhite; scrollView1.clipsToBounds = YES; //デフォルトはNOです。スクロールビュー内での描画を制限したい scrollView1.scrollEnabled = YES;

    // pagingEnabledプロパティデフォルトはNOです。設定すると、スクロールが各写真で停止またはスナップします。 //フリースクロ​​ールスクロールが必要な場合は、このプロパティを設定しないでください。 scrollView1.pagingEnabled = YES;

    //バンドルからすべての画像を読み込み、スクロールビューに追加します。 // NSUInteger i; (i = 1; i < = kNumImages; i ++) { NSString * imageName = [NSString stringWithFormat:@ "Card%d。PNG」、I]; UIImage *画像= [UIImage imageNamed:imagenameの]; UIImageView * ImageViewの= [[UIImageView ALLOC] initWithImage:画像];

    // setup each frame to a default height and width, it will be properly placed when we call "updateScrollList" 
    CGRect rect = imageView.frame; 
    rect.size.height = kScrollObjHeight; 
    rect.size.width = kScrollObjWidth; 
    imageView.frame = rect; 
    imageView.tag = i; // tag our images for later use when we place them in serial fashion 
    [scrollView1 addSubview:imageView]; 
    [imageView release]; 
    

    }

    [自己layoutScrollImages]。 //今

答えて

2

scrollview以内にシリアルレイアウトで写真を配置これは良い睡眠の後に簡単だった!

CGPoint p = scrollView1.contentOffset; 
NSLog(@"x = %f, y = %f", p.x, p.y); 

320(水平およびフルスクリーンの画像の場合)で除算し、1(0から開始するため)を加算するだけです。

これは他の人に役立つことを願っています!

ポール

関連する問題