【问题标题】:UIScrollView and sliding imagesUIScrollView 和滑动图像
【发布时间】:2012-02-03 11:23:31
【问题描述】:

我有一个数组imageNames

NSArray *imageNames = [[NSArray alloc] initWithObjects:@"image1.jpg", @"image2.jpg", @"image3.jpg", nil];

我想在UIScrollView 中显示第一张图片,然后在制作水平幻灯片时更改它。

.h 代码:

@interface SlidePViewController : UIViewController <UIScrollViewDelegate>
{       
    IBOutlet UIScrollView *scrollView;  
    UIImageView *imageView; 
}

@property (nonatomic, retain) UIScrollView *scrollView;
@property (nonatomic, retain) UIImageView *imageView;

@end

我创建了这个应该完成这项工作的代码

for(NSString *imageName in imageNames){
    UIImageView *image = [[UIImageView alloc] initWithImage:[UIImage imageNamed:imageName]];
    image.frame = CGRectMake([imageNames indexOf:imageName] * SCREENWIDTH, 0, SCREENWIDTH, SCREENHEIGHT);
    [scrollView addSubview:image];
    [image release];
}

我用数字改变了 SCREENWIDTH 和 SCREENWIDTH ...

image.frame = CGRectMake([imageNames indexOf:imageName] * 100, 0, 11, 888);

错误:

二进制表达式的无效操作数('id' 和 'int')

我不确定这段代码会不会做我想做的事:/

更新 我用这个换行

image.frame = CGRectMake([imageNames indexOfObject:imageName] * 1000, 0, 1100, 888);

错误已修复,但我无法滑动,第一个图像显示在 UIScrollView 中,并且不会随着水平滑动而改变。

【问题讨论】:

  • 我认为错误不是由于设置框架
  • 您在哪一行注意到此错误?
  • 这一行 image.frame = CGRectMake([imageNames indexOf:imageName] * 100, 0, 11, 888);
  • @Mehdi 您遇到的问题是您只是将代码复制和粘贴在一起,而没有花时间弄清楚代码在做什么。这不是一个好的学习方法。您也没有显示任何与 UIScrollView 相关的代码。我建议你去阅读与 UIScrollView 相关的 Apple 文档,而不是希望有人会为你编写更多代码。

标签: iphone objective-c xcode uiscrollview


【解决方案1】:

indexOf: 方法在 NSArray 文档中不存在,您应该尝试调用:

- (NSUInteger)indexOfObject:(id)anObject

【讨论】:

    【解决方案2】:

    下面一行可能有错误。

    image.frame = CGRectMake([imageNames indexOf:imageName] * SCREENWIDTH, 0, SCREENWIDTH, SCREENHEIGHT);
    

    在上面试试image.frame = CGRectMake(320, 0, SCREENWIDTH, SCREENHEIGHT);

    如果执行没有错误,则意味着您需要更改框架。

    【讨论】:

      【解决方案3】:
      image.frame = CGRectMake([imageNames indexOfObject:imageName] * 100, 0, 11, 888);
      

      【讨论】:

        猜你喜欢
        • 2018-12-09
        • 2015-10-10
        • 2019-07-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-05
        • 2011-11-11
        相关资源
        最近更新 更多