Objekte bewegen (storyboard)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Objekte bewegen (storyboard)

    Hallo,
    ich bin jetzt bei meiner App schon ziemlich weit. Aber ich möchte eine neue Funktion einbauen und zwar ein Button den man bewegen kann, wenn man ihn mit dem Touch zieht. Ein bisshen habe ich es hinbekommen mit diesem Code (hier zwar mit einem ImageView, aber ich denke das ist dann ja das gleiche):


    .h file:
    IBOutlet UIImageView *object2;


    .m file:

    -(void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {

    UITouch *mytouch = [[event allTouches] anyObject];

    object2.center = [mytouch locationInView:self.view];

    }


    Aber hier ist das Problem, dass man das Objekt zwar bewegen kann, aber wenn das Objekt z.B. oben Rechts im View ist und man toucht unten links auf den View und zieht dort irgendwo hin, kommt das ImageView mit, aber da ich mehrere ImageViews (Buttons) machen will, soll man die Objekte halt NUR bewegen können, wenn man wirklich draufklickt und nicht, wenn man ganz woanders klickt... (Verständlich? ich hoffe mal...)


    Den Code habe ich hierher (hier wird es mit einer Kollision gezeigt, aber ich habe das mit der Kollision einfach weggenommen, aber das müsste eigentlich noch besser gehen, als ich es hab...)


    Viele Grüße
    Asoooooo
  • Hab ich auch mal probiert, aber dann kam eine Fehlermeldung...

    Von hier , habe ich das benutzt.

    Es kam die Fehlermeldung:
    "Expected a type" bei UIPanGestureRecognizer in der .h und in der .m file.
    "Property 'View' not found on object of type '__strong id'" in der .m file.

    Weißt du ein besseren Code? :D

    Viele Grüße
    Asoooooo
  • Hallo!
    Alles klar. Hier ist meine .h und meine .m


    //

    // ViewController.h

    // testObjects

    //

    // Created by Nils Steffien on 23.02.13.

    // Copyright (c) 2013 Nils Steffien. All rights reserved.

    //




    #import <UIKit/UIKit.h>




    @interface ViewController : UIViewController




    -(IBAction)handlePan:(UIPanGestureRecogni­zer *)recognizer;




    @end


    und meine .m:

    //

    // ViewController.m

    // testObjects

    //

    // Created by Nils Steffien on 23.02.13.

    // Copyright (c) 2013 Nils Steffien. All rights reserved.

    //




    #import "ViewController.h"




    @interface ViewController ()




    @end




    @implementation ViewController




    - (IBAction)handlePan:(UIPanGestureRecogni­zer *)recognizer { CGPoint translation = [recognizer translationInView:self.view]; recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, recognizer.view.center.y + translation.y); [recognizer setTranslation:CGPointMake(0, 0) inView:self.view];



    }




    - (void)viewDidLoad

    {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    }




    - (void)didReceiveMemoryWarning

    {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

    }




    @end


    (sry, aber ich hab vergessen, wie das mit dem Quellcode ging. Ich füge die jetzt nur so ein...)


    Viele Grüße
    Asoooooo