2012-04-26 10 views
0

私はちょうどScrollViewでボタンタグ1〜5をつかむしたい、他のデータは、あなたが0、右より大きいタグの付いたボタンをしたいisKindOfClassグラブタグ

(void)layoutScrollImages 
{ 
    UIImageView *view = nil; 
    NSArray *subviews = [weekscroll subviews]; 

    CGFloat curXLoc = 0; 
    for (view in subviews) 
    { 
     if ([view isKindOfClass:[UIImageView class]] && view.tag > 0) 
     { 
      NSLog(@"%d",view.tag); 
      CGRect frame = view.frame; 
      frame.origin = CGPointMake(curXLoc, 0); 
      view.frame = frame; 
      curXLoc += (wScrollObjWidth); 
     } 
    } 
    NSLog(@"subviews = %@",subviews); 
    [weekscroll setContentSize:CGSizeMake((wNumImages * wScrollObjWidth), [weekscroll bounds].size.height)]; 
} 

    subviews = (
    "<UIImageView: 0x1ba330; frame = (313 61; 7 5); alpha = 0; opaque = NO; autoresize = TM; userInteractionEnabled = NO; layer = <CALayer: 0x1bac00>>", 
    "<UIImageView: 0x1bc900; frame = (315 59; 5 7); alpha = 0; opaque = NO; autoresize = LM; userInteractionEnabled = NO; layer = <CALayer: 0x1bdde0>>", 
    "<UIButton: 0x1bd380; frame = (0 1; 50 66); opaque = NO; layer = <CALayer: 0x1bd410>>", 
    "<UIButton: 0x1bd690; frame = (50 0; 50 66); opaque = NO; layer = <CALayer: 0x1bd720>>", 
    "<UIButton: 0x1bd9a0; frame = (100 0; 50 66); opaque = NO; layer = <CALayer: 0x1bda30>>", 
    "<UIButton: 0x1bc570; frame = (150 0; 50 66); opaque = NO; layer = <CALayer: 0x1bc600>>", 
    "<UIButton: 0x1beaa0; frame = (300 0; 50 66); opaque = NO; tag = 1; layer = <CALayer: 0x1beb30>>", 
    "<UIButton: 0x1bff40; frame = (350 0; 50 66); opaque = NO; tag = 2; layer = <CALayer: 0x1c0920>>", 
    "<UIButton: 0x1c0e60; frame = (400 0; 50 66); opaque = NO; tag = 3; layer = <CALayer: 0x1c0ef0>>", 
    "<UIButton: 0x1c1430; frame = (450 0; 50 66); opaque = NO; tag = 4; layer = <CALayer: 0x1c14c0>>", 
    "<UIButton: 0x1c1a00; frame = (500 0; 50 66); opaque = NO; tag = 5; layer = <CALayer: 0x1c1a90>>", 

    "<UIButton: 0x1cb340; frame = (1800 0; 50 66); opaque = NO; layer = <CALayer: 0x1cb3d0>>", 
" 
)UIImageView: 0x1ba330; frame = (313 61; 7 5); alpha = 0; opaque = NO; autoresize = TM; userInteractionEnabled = NO; layer = 
+0

私は、実際の問題が何であるかを得ることはありません。あなたはもっと具体的になりますか? – adig

+0

NSArray * subviews = [weekscrollサブビュー];私はちょうどボタンのタグをつかみたい –

+0

私はサブビュー情報を印刷している –

答えて

1

、唯一UIButtonsタグを持っているし、サンプルコードで使用すると、UIImageViewに取り組んでいるので、あたりとして与えられたコードを使用しますあなたの要件。

私はあなたのコードを以下のように変更しました。ちょっとチェックしてください。

for (id objView in subviews) 
{ 
    if ([objView isKindOfClass:[UIImageView class]]) 
    { 
     UIImageView *imgView = (UIImageView*) objView; 
     if (imgView.tag > 0) 
     { 
      NSLog(@"%d",imgView.tag); 
      CGRect frame = imgView.frame; 
      frame.origin = CGPointMake(curXLoc, 0); 
      imgView.frame = frame; 
      curXLoc += (wScrollObjWidth); 
     } 
    } 
} 

それともだけUIButtonsをつかむしたい場合は、

for (UIButton *btnView in subviews) 
{ 
    if ([btnView isKindOfClass:[UIButton class]] && btnView.tag > 0) 
    { 
     NSLog(@"%d",btnView.tag); 
     CGRect frame = btnView.frame; 
     frame.origin = CGPointMake(curXLoc, 0); 
     btnView.frame = frame; 
     curXLoc += (wScrollObjWidth); 
    } 
} 
0

を把握する必要はありません...そして、なぜあなたはしています[UIImageViewクラス]をチェックしています..?

0より大きいタグが付けられたボタンを見つけるためにあなたの条件は次のようになります。印刷ログを1として

if ([aView isKindOfClass:[UIButton class] && (aView.tag > 0)]) { 
} 
+0

私は初心者です、あなたの助言をいただきありがとうございます。私はちょうどScrollViewのボタンタグを1から5をつかみたい –

関連する問題