Dlaczego w tym kodzie UILabel
nie znajduje się środek view
?UILabel ustawiony na środek widoku
//create the view and make it gray
UIView *view = [[UIView alloc] init];
view.backgroundColor = [UIColor darkGrayColor];
//everything for label
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,42,21)];
//set text of label
NSString *welcomeMessage = [@"Welcome, " stringByAppendingString:@"username"];
welcomeMessage = [welcomeMessage stringByAppendingString:@"!"];
label.text = welcomeMessage;
//set color
label.backgroundColor = [UIColor darkGrayColor];
label.textColor = [UIColor whiteColor];
//properties
label.textAlignment = NSTextAlignmentCenter;
[label sizeToFit];
//add the components to the view
[view addSubview: label];
label.center = view.center;
//show the view
self.view = view;
Linia, label.center = view.center;
należy przesunąć label
do centrum view
. Ale zamiast tego przesuwa go tam, gdzie środek label
znajduje się w lewym rogu rogu view
, jak pokazano poniżej.
screenshot http://gyazo.com/2d1c064a671e32c7eb004647232fa430.png
Czy ktoś wie dlaczego?
Przede wszystkim dlaczego robisz 'self.view = widok "? Nie potrzebujesz tego, po drugie twój widok nie ma zestawu ramek. Po trzecie, użyj etykiety.center = self.view.center. – danypata
Po pierwsze, ponieważ buduję widok w aplikacji. Po drugie, jak to zrobić. Po trzecie, używam 'view.center', ponieważ tworzę nowy widok. Muszę ustawić widok na 'UIView * view' przy użyciu' self.view = view' –
Przypuszczam, że ten kod jest w '-viewDidLoad'. Dobrze? –