Niestandardowe wyrównanie UIBarButtonItem z iOS7
Mam więc ten sam problem, którego doświadcza wielu innych podczas tworzenia UIBarButtonItem z UIButtonem jako widokiem niestandardowym.
Zasadniczo przycisk ma około 10 pikseli w lewo lub w prawo. Gdy używam zwykłego BarButtonItem bez widoku niestandardowego, tak się nie dzieje.
Ten post zapewnia częściowe rozwiązanie:Przycisk UIBarBut z widokiem niestandardowym
Oto mój kod utworzony przez podklasę UIButton (jak podano w innym poście)
- (UIEdgeInsets)alignmentRectInsets {
UIEdgeInsets insets;
if ([self isLeftButton]) {
insets = UIEdgeInsetsMake(0, 9.0f, 0, 0);
}
else { // IF ITS A RIGHT BUTTON
insets = UIEdgeInsetsMake(0, 0, 0, 9.0f);
}
return insets;
}
- (BOOL)isLeftButton {
return self.frame.origin.x < (self.superview.frame.size.width / 2);
}
Działa to świetnie, ale gdy włączyłem kontroler widoku z kontrolera nawigacyjnego z powrotem do tego głównego widoku, przycisk jest nadal niepoprawnie ustawiony przez około 0,3 sekundy, a następnie wskakuje do prawidłowej wstawki.
To jest OGROMNY wzrok i nie mam pojęcia, jak powstrzymać go przed takim zatrzaśnięciem. jakieś pomysły? Dzięki!