Hey, ich bin jetzt schon ca. 5,5h bei diesem kleinen Code und komme nicht weiter.
Ich muss eine App machen, welche fünf Fotos anzeigt. Wobei aber immer nur die mittlere angezeigt werden soll und die anderen vier, die sind welche im Speicher gehalten werden dürfen.
Wenn ich dann weiterwische soll ein Foto entfernt werden und auf der anderen Seite ein neues hinzugefügt werden.
Damit werden aber nur blue und NYC geladen, der dritte Schirm ist leer.
Des weiteren verstehe ich nicht weshalb auf der linken Seite blue ist und in der Mitte NYC, dabei sollte es red;blue;NYC angezeigt werden.
Ich dachte, ich könnte die Reihenfolge der Views mit origin festlegen, was aber anscheinend nicht so passt.
Wenn ich ganz oben statt origin 0 den CGRectGetWidth(rootPane.frame) nehme ist der einzige Unterschied, dass links und rechts die Bilder angezeigt werden aber dafür nicht in der Mitte.
Kann mir bitte jemand Helfen?
Ich muss eine App machen, welche fünf Fotos anzeigt. Wobei aber immer nur die mittlere angezeigt werden soll und die anderen vier, die sind welche im Speicher gehalten werden dürfen.
Wenn ich dann weiterwische soll ein Foto entfernt werden und auf der anderen Seite ein neues hinzugefügt werden.
Code:
- (void)viewDidLoad
{
[super viewDidLoad];
CGRect frameRect = [[UIScreen mainScreen] bounds]; //size of one frame
UIScrollView *rootPane = [[UIScrollView alloc] initWithFrame:frameRect];
rootPane.contentSize=CGSizeMake(frameRect.size.width* imageCount,frameRect.size.height ); //the "rootPane" which holds all other ScrollViews
UIScrollView *singleScrollView = [[UIScrollView alloc] initWithFrame:frameRect]; //The Scrollview the Images are shown on
singleScrollView.minimumZoomScale=0.3;
singleScrollView.maximumZoomScale=1.7;
frameRect.origin.x+=0;
UIImageView *prevImage = [[UIImageView alloc] initWithFrame:frameRect];
[singleScrollView addSubview:prevImage];
[rootPane addSubview:singleScrollView];
prevImage.frame=singleScrollView.bounds;
frameRect.origin.x+=CGRectGetWidth(rootPane.frame);
UIImageView *currImage = [[UIImageView alloc] initWithFrame:frameRect];
[singleScrollView addSubview:currImage];
singleScrollView = [[UIScrollView alloc] initWithFrame:frameRect];
[rootPane addSubview:singleScrollView];
currImage.frame=singleScrollView.bounds;
frameRect.origin.x+=CGRectGetWidth(rootPane.frame);
UIImageView *nextImage = [[UIImageView alloc] initWithFrame:frameRect];
[singleScrollView addSubview:nextImage];
singleScrollView = [[UIScrollView alloc] initWithFrame:frameRect];
[rootPane addSubview:singleScrollView];
nextImage.frame=singleScrollView.bounds;
[rootPane setContentOffset:CGPointMake(CGRectGetWidth(rootPane.frame),0)];
rootPane.pagingEnabled=true;
rootPane.backgroundColor=[UIColor blackColor];
rootPane.userInteractionEnabled=true;
currImage.image =[UIImage imageNamed:@"blue.jpg"];
prevImage.image =[UIImage imageNamed:@"red.jpg"];
nextImage.image =[UIImage imageNamed:@"NYC.jpg"];
[ self.view addSubview:rootPane];
Damit werden aber nur blue und NYC geladen, der dritte Schirm ist leer.
Des weiteren verstehe ich nicht weshalb auf der linken Seite blue ist und in der Mitte NYC, dabei sollte es red;blue;NYC angezeigt werden.
Ich dachte, ich könnte die Reihenfolge der Views mit origin festlegen, was aber anscheinend nicht so passt.
Wenn ich ganz oben statt origin 0 den CGRectGetWidth(rootPane.frame) nehme ist der einzige Unterschied, dass links und rechts die Bilder angezeigt werden aber dafür nicht in der Mitte.
Kann mir bitte jemand Helfen?