Einträge markiert mit 'FAQ'

iPhone OS 3.0 API Änderungen

iPhone OS 3.0 SearchBarNach dem Upgrade auf das brandneue iPhone OS 3.0 funktioniert nicht mehr jede Applikation. Seit Mai prüft Apple bereits bestehende und neu in den App-Store eingestellte Apps auf Kompatibilität. Entwickler wie wir tappen bei der Umstellung hier und da in die kleinen aufgestellten Fallen, so auch bei der neuen Reader App:

Sortiere Listen (z.B. eine Buchliste) realisiert man für den Anwender komfortabel als TableView mit oben angesetzter Suchfunktion UISearchBar. Die Eingabe eines Buchtitels filtert die passenden Werke heraus.

Hierfür müssen in der Programmierung verschiedene Eigenschaften z.B. für die Texteingabe in der Suchleiste angepasst werden. Dies geschieht mittels Zugriff auf das UITextField innerhalb des UISearchBar Objekt.

Gehen wir von einer Suchleiste mit folgender Definition aus:
searchBar = [[UISearchBar alloc]
  initWithFrame:CGRectMake(0,44, self.view.bounds.size, 48)];

Nun kann man einfach die Eigenschaften der searchBar setzen:
searchBar.tintColor = myColor;
searchBar.delegate = self;

Auf die Eigenschaften des Text-Elements geschah der Zugriff bis iPhone OS 2.2 so:

((UITextField *)[(NSArray *)[searchBar subviews]
  objectAtIndex:0 ]).enablesReturnKeyAutomatically = NO;
((UITextField *)[(NSArray *)[searchBar subviews]
  objectAtIndex:0 ]).returnKeyType = UIReturnKeyDone;
((UITextField *)[(NSArray *)[searchBar subviews]
  objectAtIndex:0 ]).delegate = self;

Seit iPhone OS Version 3.0 hat sich eine Kleinigkeit geändert die dazu führt dass die Applikationen unter der jeweils anderen mit einer Uncaught Exception "[UISearchBarBackground setEnablesReturnKeyAutomatically:]: unrecognized selector sent to instance xxx" zur Laufzeit abstürzen.

Die Lösung ich recht einfach. Das UITextField Objekt befindet sich unterhalb der SearchBar nicht mehr am Index 0, sondern muss jetzt über die 1 angesprochen werden:
((UITextField *)[(NSArray *)[searchBar subviews]
  objectAtIndex:1 ]).enablesReturnKeyAutomatically = NO;
((UITextField *)[(NSArray *)[searchBar subviews]
  objectAtIndex:1 ]).returnKeyType = UIReturnKeyDone;
((UITextField *)[(NSArray *)[searchBar subviews]
  objectAtIndex:1 ]).delegate = self;

Vielleicht hilft es dem ein- oder anderen dieses Schlagloch einfach zu vermeiden. Hilfreich bei der Problemlösung war ein Post von Dan Grigsby .

[EMWEE.de] [del.icio.us] [Reddit] [Slashdot] [Digg] [Facebook] [Technorati] [Google] [StumbleUpon] [Windows Live] [Netscape] [Yahoo]

GMX-Mails mit iPhone OS 3.0

Bislang hatte ich mit dem iPhone eher selten E-Mails gelesen. Zu schnell war eine Spam-Mail im Posteingang angeklickt, die dann mittels in HTML eingebetteter Bilder nach Hause gefunkt hat dass sie doch ein Trottel "gelesen" hat. Darüber freut sich der Spammer, weil dann kann er mir noch mehr Müll schicken…

iPhone-Einstellungen Entfernte Bilder laden Seit iPhone OS 3.0 ist es endlich möglich dies in den Einstellungen unter Mail, Kontakte, Kalender mittels Schalter Entferne Bilder laden zu unterbinden. Grund genug, die deaktivierten Mail-Accounts zu neuem Leben zu erwecken! Doch bei der Aktivierung eines GMX-Postfachs eine Überraschung: Das iPhone meldet

Emails können nicht empfangen werden. Die Verbindung zum Server "imap.gmx.net" ist fehlgeschlagen.

Die Lösung war dann aber recht schnell gefunden: Read more »

[EMWEE.de] [del.icio.us] [Reddit] [Slashdot] [Digg] [Facebook] [Technorati] [Google] [StumbleUpon] [Windows Live] [Netscape] [Yahoo]