ios - Programmgesteuert codiert UIButton zeigt nicht auf mein Blick
.
Hallo,
Ich versuche, fügen Sie einen UIButton und andere Artikel in meinen UIViewController programmatisch und von dem, was ich gelesen und gesehen in der anderen SO Fragen, die ich sollte auf der rechten Spur mit diesem code:
- (void)viewDidLoad
{
[super viewDidLoad];
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];
backButton = [[UIButton alloc] init];
backButton = [UIButton buttonWithType:UIButtonTypeCustom];
backButton.frame = CGRectMake(10, 25, 150, 75);
backButton.titleLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size:15];
backButton.titleLabel.text = @"Back";
[self.view addSubview:backButton];
//Do any additional setup after loading the view.
}
Nun, der code befindet sich in der viewDidLoad-Methode und es wird nicht angezeigt, das führt mich zu der Frage - Was mache ich falsch?
Wann ich es will-ändern Sie die Farbe der hintergrund und legen Sie in der viewDidLoad-es funktioniert gut.
Cheers Jeff
- kann u senden Sie Ihre viewDidLoad-code
- Ich habe aktualisiert, den code zu zeigen, die die volle Methode - ich bin nur üben, so ist es ziemlich leer:-)
- Als seitliche Anmerkung, die Sie erstellen drei Instanzen des button. Zwei sind unnötig.
- Yup ich sehe, dass jetzt vielen Dank dafür:-)
- Haben Sie versucht, die Einstellung der Hintergrundfarbe der Schaltfläche, um etwas anderes als die hintergrund-Farbe der Haupt-anzeigen und anzeigen, wenn der button auftaucht? Vielleicht ist es auf dem Bildschirm, die Sie gerade nicht sehen können es aus irgendeinem Grund-Sie haben nicht ein Bild-set für Sie, nachdem alle. (Sind schon seltsamere Dinge passiert.)
- Ja das klappte Dank:-) Wenn Sie nichts dagegen haben, posten Sie als Antwort, ich kann es akzeptieren:-)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, man kann das einfügen der Schaltfläche korrekt, aber können es nur nicht sehen, weil es hat keinen hintergrund und der text nicht angezeigt.
Versuchen Sie es mit einem
rounded rect buttonsystem-Taste, nur um zu sehen, ob das macht es zu zeigen. Legen Sie den text richtig. Werde ich auch entfernen, die Einstellung der schriftart, nur sofern es ein problem mit der schriftart.Update:
UIButtonTypeRoundedRect
wurde als veraltet markiert.Sind Sie die Taste Titel falsch. Verwendung:
Auch wie andere haben gesagt, Sie brauchen nicht zu starten-Taste drei mal. Entfernen Sie den 2nd-und 3rd-Linien.
Ihnen erstellten button mit der statischen Methode buttonWithType ,hast du Wieder Speicher zugewiesen, die für diese Schaltfläche.
Können Sie dispatch_after zu nennen, die einen block höher. so, hier erste Ansicht geladen sind, dauert es innerhalb von 0,1 sec und dann alle button sind sichtbar Im Blick. Xcode, beginnen Sie mit der Eingabe dispatch_after und drücken Sie die EINGABETASTE, um AutoVervollständigen zu dem folgenden:
Versuchen Sie dies:
Abgesehen von den Fragen, die darauf hingewiesen, in den Kommentaren
UIButtonTypeCustom, erzeugt eine leere Schaltfläche.
Verwenden Sie dies, wenn Sie möchten, verwenden Sie ein Bild als Schaltfläche, aber halten Sie im Verstand mit setImage: überschreibt den Titel der Schaltfläche. So werden Sie benötigen, um ein Hintergrundbild.
Dein button ist tatsächlich da, dass es einfach nicht "angezeigt" zu werden, es
So
Verwenden
UIButtonTypeRoundRect
(es könnte etwas anders sein)oder wenn Sie wollen ein Bild als Schaltfläche.
Verwenden
UIButtonTypeCustom
Rufen Sie
setBackgroundImage:
dann rufen SiesetTitle:forState:
Verwenden Sie die Schaltfläche Typ ist RoundedRect dann können wir sehen, die Hintergrundfarbe
Hoffe, es wird helfen !