2010-04-13 7 views
8

To może być trochę wybredne, ale w ustawieniach iPada SplitViewController są 2 widoki. Każdy widok ma bardzo małe czarne zaokrąglenie narożnika. (Prawdopodobnie to samo dotyczy również aplikacji na iPhone'a).Zestaw SDK iPhoneOS - Usuń narożnik zaokrąglenia z widoków (problem z iPadem)

To zaokrąglenie jest widoczne na obrazku poniżej. Chciałbym usunąć czarne zaokrąglenie, więc interfejs użytkownika nie dostanie tych dwóch małych nierówności wzdłuż dna. Czy ktoś to zrobił, czy wie jak? - Jest to z pewnością możliwe.

Mam nadzieję, że ktoś już to widział.

Dzięki

Image Link Mirror

alt text http://img19.imageshack.us/img19/7297/screenshot20100413at102.png

+0

Czy to w dolnej części okna? Może to rzeczywiście być zrobione przez obcinanie. –

Odpowiedz

13

Dodaj poniższe linie do delegata aplikacji:

- (void) fixRoundedSplitViewCorner 
{ 
    [self explode:[[UIApplication sharedApplication] keyWindow] level:0]; 
} 

- (void) explode:(id)aView level:(int)level 
{ 
if ([aView isKindOfClass:[UIImageView class]]) { 
    UIImageView* roundedCornerImage = (UIImageView*)aView; 
    roundedCornerImage.hidden = YES; 
} 
if (level < 2) { 
    for (UIView *subview in [aView subviews]) { 
    [self explode:subview level:(level + 1)]; 
    } 
} 
} 

W swojej DetailViewController z UISplitViewController dodać:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 
{ 
[yourAppDelegate performSelector:@selector(fixRoundedSplitViewCorner) withObject:NULL afterDelay:0]; 
} 
+0

Tak, to wygląda na odlot! Fantastyczne dzięki. Kod wykonuje się tylko wtedy, gdy wciskam tablecell w MasterViewController, lub chyba odświeżam DetailViewController. Próbowałem wywoływać fixRoundedSplitViewCorner z każdego viewDidLoad, ale nie mogę go uruchomić do pierwszego obciążenia. Czy możesz podać ostatni element układanki? Powyższy kod jest fantastyczny do tej pory! – oberbaum

+0

Wystarczy wywołać fixRoundedSplitViewCorner, gdy urządzenie zostanie obrócone. Dodaj właściwość didRotateFromInterfaceOrientation, jak opisano powyżej, i będzie działać również przy uruchamianiu aplikacji. – abs

+1

Wygląda na to, że nic nie robi dla mnie (iOS5). – raidfive

1

Prawdopodobnie będziesz musiał zastąpić drawRect w widoku i zwrócić go sobie bez zaokrąglania.

Powiązane problemy