1

スクロール ビューが表示されますが、どのビューも表示されません。ビューは正常に移動し、ページ コントロールは機能します。スクローラーの背景を変更すると、すべて正常に動作します。ビュー「さまざまな色」は表示されません。何が悪いのかわからない。助けてくれてありがとう

-(void)viewDidLoad {    
[super viewDidLoad];

CGRect frame = CGRectMake(0, 215, WIDTH_OF_IPHONE, HEIGHT_OF_SCROLLER);

int numOfPhotos = 6;

scrollViewer = [[UIScrollView alloc] initWithFrame:frame];
scrollViewer.contentSize = CGSizeMake((WIDTH_OF_IPHONE*numOfPhotos), HEIGHT_OF_SCROLLER);
scrollViewer.pagingEnabled = YES;
//scrollViewer.backgroundColor = [UIColor lightGrayColor];
[scrollViewer setDelegate:self];

int i = 0;

while (i < numOfPhotos){

    CGRect frameOfView = CGRectMake((i*320), 215, 320, HEIGHT_OF_SCROLLER);
    UIView *photoFrame = [[UIView alloc] initWithFrame:frameOfView];

    if (i == 0){
        photoFrame.backgroundColor = [UIColor redColor];//colorWithPatternImage:image1];
        NSLog(@"colour was selected");
    }else if (i==1){
        photoFrame.backgroundColor = [UIColor blueColor];//colorWithPatternImage:image2];
    }else if (i==2){
        photoFrame.backgroundColor = [UIColor purpleColor];//colorWithPatternImage:image3];
    }else if (i==3){
        photoFrame.backgroundColor = [UIColor orangeColor];//colorWithPatternImage:image4];
    }else if (i==4){
        photoFrame.backgroundColor = [UIColor magentaColor];//colorWithPatternImage:image5];
    }else{
        photoFrame.backgroundColor = [UIColor greenColor];//colorWithPatternImage:image6];
    }

    [scrollViewer addSubview:photoFrame];
    //[photoFrame release];

    photoFrame = NULL;
    i++;
}
pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(0, 0, WIDTH_OF_IPHONE, 15)];
pageControl.center = CGPointMake(scrollViewer.center.x, (208+HEIGHT_OF_SCROLLER));

[pageControl setNumberOfPages:numOfPhotos];

[pageControl addTarget:self action:@selector(pageSwiped:) forControlEvents:UIControlEventValueChanged];

[self.view addSubview:scrollViewer];
[self.view addSubview:pageControl];

私の.Hファイルは次のようになります

@interface HomePage : UIViewController <UIActionSheetDelegate, UIScrollViewDelegate> {

   IBOutlet UIScrollView *scrollViewer;
   UIPageControl *pageControl;
   BOOL pageControlUsed;

}
@end
4

1 に答える 1

0

スクロールビューの実際のフレームの下に配置されるため、photoFrame の y 原点を 0 に設定してみてください。

問題がない場合は、フォトフレームを NULL にしていることです。ARC を使用している場合は、ガベージ コレクターが処理するので心配する必要はありません。

于 2013-10-05T15:08:43.700 に答える