ios - Programmatisch codierter UIButton wird nicht in meiner Ansicht angezeigt

7

.

Hallo,

Ich versuche, ein UIButton und andere Elemente programmgesteuert meinem UIViewController hinzuzufügen, und von dem, was ich in anderen SO-Fragen gelesen und gesehen habe, sollte ich mit diesem Code auf der richtigen Spur sein:

%Vor%

Nun wird dieser Code in die viewDidLoad Methode eingefügt und erscheint nicht, was mich zu der Frage führt - Was mache ich falsch?

Wenn ich die Farbe des Hintergrunds ändern und die viewDidLoad einfügen will, funktioniert es gut.

Prost Jeff

    
Jeff Kranenburg 25.05.2012, 00:47
quelle

6 Antworten

23

Ich denke, Sie können die Schaltfläche korrekt einfügen, aber kann es einfach nicht sehen, weil es keinen Hintergrund hat und der Text nicht angezeigt wird.

Versuchen Sie es mit einer gerundeten Taste , um zu sehen, ob dies angezeigt wird. Setze den Text korrekt. Ich entferne auch die Einstellung der Schriftart, nur wenn es ein Problem mit der Schriftart gibt.

%Vor%

Update: UIButtonTypeRoundedRect wurde veraltet.

    
Jeffery Thomas 25.05.2012, 00:59
quelle
4

Sie haben die Schaltfläche mit der statischen Methode buttonWithType erstellt. Auch hier haben Sie Speicher für diese Schaltfläche zugewiesen.

%Vor%     
Babuli 04.01.2013 05:35
quelle
3

Sie setzen den Schaltflächentitel falsch ein. Verwenden Sie:

%Vor%

Auch wie andere gesagt haben, müssen Sie Ihren Knopf nicht dreimal initialisieren. Entfernen Sie die 2. und 3. Zeile.

    
Mark Leonard 25.05.2012 00:56
quelle
1

Sie können dispatch_after verwenden, um später einen Block aufzurufen. Wenn also die erste Ansicht geladen ist, dauert es innerhalb von 0,1 Sekunden und dann sind alle Schaltflächen sichtbar. Xcode, geben Sie dispatch_after ein und drücken Sie die Eingabetaste, um den folgenden Code zu vervollständigen:

Versuchen Sie Folgendes:

%Vor%     
Nirav Ghori 05.06.2015 13:10
quelle
0

Abgesehen von den in den Kommentaren genannten Punkten

UIButtonTypeCustom, erstellt eine leere Schaltfläche.

Verwenden Sie dies, wenn Sie ein Bild als Schaltfläche verwenden möchten, aber beachten Sie, dass Sie mit setImage den Titel der Schaltfläche überschreiben. Sie müssen also ein Hintergrundbild festlegen.

Ihr Button ist tatsächlich da, er erscheint einfach nicht, um dort zu sein

Also

Verwenden Sie UIButtonTypeRoundRect (es könnte etwas anders sein)

oder wenn Sie ein Bild als Schaltfläche möchten.

Verwende UIButtonTypeCustom Rufen Sie setBackgroundImage: und dann setTitle:forState:

auf     
CStreel 25.05.2012 00:58
quelle
0

Sie müssen den Button-Typ RoundedRect verwenden, dann können wir die Hintergrundfarbe sehen

%Vor%

Ich hoffe, es wird helfen!

    
Madhava Reddy 15.05.2015 10:38
quelle

Tags und Links