2016-04-05 6 views
3

Ich habe eine UIScrollview mit großem Inhalt in horizontaler. Jetzt möchte ich ein UIImageView bis zum Ende des UIScrollView ziehen. Dafür benutze ich den folgenden Code.Kann UIImageView nicht bis zum Ende des UIScrollview ziehen?

- (void) setUpLeftGesture{ 

    _leftControlImageView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 0, 80, 25)]; 
    [_leftControlImageView setBackgroundColor:[UIColor yellowColor]]; 
    [_leftControlImageView setImage:[UIImage imageNamed:@"marker_left_normal"]]; 
    //add gesture events 
    UIPanGestureRecognizer *panGestureRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handleLeftSelector:)]; 
    [_leftControlImageView addGestureRecognizer:panGestureRecognizer]; 
    [_leftControlImageView setUserInteractionEnabled:YES]; 
    [scrollView addSubview:_leftControlImageView]; 

} 

-(void)handleLeftSelector:(UIPanGestureRecognizer *)panGestureRecognizer{ 

    CGPoint point = [panGestureRecognizer locationInView:self]; 
    _leftControlImageView.center = point; 
} 

Wenn ich den obigen Code ausführen ich die _leftControlImageView ziehen (meine UIImageView) bewegt sich innerhalb der Bildschirmgröße in Ordnung.

Wenn ich versuche, bis zum Ende von UIScrollView zu ziehen, wird die UIImageView nicht gezogen. Ich komme wieder auf die vorherige Position zurück. Ich habe keine Ahnung, warum es passiert ist.

Vielen Dank im Voraus. Kann jemand bitte irgendwelche Vorschläge machen, um eine Ansicht bis zum Ende der UIScrollview zu ziehen.

Antwort

1

Wenn Sie eine Ansicht bis zum Ende von UIScrollView ziehen möchten. Bitte stellen Sie sicher, dass Ihre Ansicht (CustomView) auf UIScrollView erweitert ist oder nicht. Ich denke, UIPanGestureRecognizer wird es uns ermöglichen, Drag and Drop innerhalb seiner Superklasse durchzuführen.

Ändern Sie also Ihre Super-Klasse von UIView zu UIScrollView, so wie dies.

@interface CustomView : UIView 

zu

@interface CustomView : UIScrollView 

Damit können Sie eine UIView bis zum Ende des UIScrollView ziehen.

0

Fügen Sie in Ihrer Inhaltsansicht imageview nicht in scrollview hinzu.