Frage

Ich habe ein paar Tasten zu einem UIView (via addSubview) programmatisch hinzugefügt. Allerdings scheinen sie als Overlays (so, dass ich immer die letzte Taste nur sehen). Wie kann ich unter vorhandenen Tasten neue Schaltflächen hinzufügen?

Viele Grüße

War es hilfreich?

Lösung

können Sie die Taste wie dieser Versatz

int newX = previousButton.frame.origin.x + previousButton.frame.size.width ;
int newY = previousButton.frame.origin.y ;

und entweder setzen den Rahmen für neue Schaltfläche, wenn Sie es schaffen:

[[UIButton alloc] initWithFrame:CGRectMake(newX,newY,100,100)];

oder den Rahmen später eingestellt

newButton.frame = CGRectMake(newX,newY,100,100);

Andere Tipps

den Rahmen Ursprung des UIView Stellen Sie die UIButtons an den Standorten Layout Sie möchten:

CGRect buttonFrame = button.frame;
buttonFrame.origin = CGPointMake(100.0f, 100.0f);
button.frame = buttonFrame;
view.addSubview(button);

Sie können entweder die insertSubview: atIndex Methode oder insertSubview. BelowSubview Ihrer Ansicht

UIButton *myButton = [[UIButton alloc] initWithFrame:CGRectMake(0,0,100,100)];

[myView insertSubview:myButton belowSubview:previousButton];

oder

[myView insertSubview:myButton atIndex:0];

Vielen Dank für Ihre Antworten Jungs.

Ich habe die (horizontal) ausgerichtet mit diesem Code:

if([myContainer.subviews lastObject] == nil){
        NSLog(@"NIL");
        [myContainer insertSubview:roundedButton atIndex:0];
    }else{
        [myContainer insertSubview:roundedButton belowSubview:[tagsContainer.subviews lastObject]];
    }

Es funktioniert technisch, sondern überlagert noch die Tasten. Ich habe einen Weg finden, wie man sie nicht überlagert ...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top