/ / Jak wyśrodkować dowolny widok podrzędny poziomo w nadrzędnym UIView, ale nie pionowo? - ios, cel-c

Jak wyśrodkować dowolny widok podrzędny w rodzimym UIView, ale nie w pionie? - ios, cel-c

Jak wyśrodkować dowolny widok cząstkowy w jego macierzystym widoku interfejsu użytkownika tylko poziomo, a nie pionowo. próbowałem child.center = parent.center ale umieszcza widok mojego dziecka na środku widoku rodzica zarówno w poziomie, jak i w pionie. Jak mogę wyrównać go do środka w poziomie? Dzięki

Odpowiedzi:

26 dla odpowiedzi nr 1

Zmiana tylko takiego centrum może pomóc

child.center = CGPointMake(CGRectGetMidX(parentView.bounds), child.center.y);

2 dla odpowiedzi nr 2

Nie możesz modyfikować x własność UIViewController"s center bezpośrednio, ale możesz wykonać następujące czynności:

CGPoint center = child.center;
center.x = parent.center.x;
child.center = center;

1 dla odpowiedzi nr 3

Spróbuj tego,

subview.frame = CGRectMake(((parentView.frame.size.width/2)-(subview.frame.size.width/2)),subview.frame.origin.y,subview.frame.size.width,subview.frame.size.height);

0 dla odpowiedzi nr 4

Musiałem wyśrodkować w poziomie (ale nie pionowo) UIImageView dla każdego rozmiaru urządzenia, więc użyłem tego, który działał dobrze:

CGRect screenRect = [[UIScreen mainScreen] bounds];
[self.myImageView setCenter:CGPointMake(CGRectGetMidX(screenRect), self.myImageView.frame.origin.y + self.myImageView.frame.size.height/2)];