Frage

Ich habe ein neues Navigations basiertes iPhone-App erstellt. Ich habe dies auf die RootViewController.

- (void)viewDidLoad {
    [super viewDidLoad];
    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] init];
self.navigationItem.leftBarButtonItem = addButton;
self.navigationItem.leftBarButtonItem.enabled = YES;
}

Keine linke Taste zeigt jedoch. Gibt es etwas, das ich zu tun?

War es hilfreich?

Lösung

Sie definieren nicht, was die Taste tatsächlich der Fall ist. Dies ist eine Zeile aus meiner App:

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(cancelEdit:)];

cancelEdit: der Wähler, ist in der aktuellen Klasse (Selbst-) und ist wie folgt definiert:

- (void) cancelEdit: (id) sender;

Andere Tipps

Es ist eigentlich eine andere Antwort, die hier nicht aufgeführt ist, kann aber in vielen Fällen sehr nützlich sein. Wenn Sie wollen nicht UINavigationController verwenden , dann ist self.navigationItem keine Option für Sie.

UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"imageName"] style:UIBarButtonItemStyleBordered target:self action:@selector(action:)];
UINavigationItem *navigationItem = [[UINavigationItem alloc] initWithTitle:@"Bar Title"];
navigationItem.leftBarButtonItem = barButton;
[navigationBar pushNavigationItem:navigationItem animated:NO];

Vielleicht möchten Sie, dass, wenn leichte UIViewController mit Bar Erstellen und Tasten, aber keine Navigation Kopf wollen.

Auf dieser Frage:

  

Awesome, danke. Wo finden Sie die   verschiedene Selektoren zur Verfügung? Der Arzt   ist darüber sehr vage. I definiert ein   Instanzmethode und setzen, die als   Selektor aber es wurde nie ausgeführt.   Ich möchte in einer Detailansicht gleiten, wenn   die Schaltfläche geklickt wird. - 4thSpace Februar   19 um 16:19 Uhr

Ich gehe an die Stelle, wo ich mehr Informationen benötigen, und drücken Sie die Escape-Taste (Esc). Also, in diesem Beispiel:

...(beginning of line)... @selector(Place Cursor Here, press Esc) ...

Eine Liste der verfügbaren Selektoren erscheint. Für Microsoft-Programmierer ist dies wie Intellisense, aber man muss es mit Esc stellen (es scheint einfach nicht automatisch wie in Visual Studio). Praktisch gesprochen, tut XCode die meisten schaffen, was auch immer Sie versuchen, zu erstellen, wenn Sie mit der Eingabe beginnen, und es hilft wirklich, wenn Sie die Tab-Taste, herauszufinden, dein Freund. (Na ja ... es ist mein Freund ... das einsame Leben mit ich habe)

Nun, wenn Sie Ihre eigenen Wähler benötigen, können Sie Ihr Etikett in dort platzieren ( mySelector : zum Beispiel), dann weiter nach unten in Ihrem Code, bauen es:

- (IBAction)mySelector:(id)sender {
NSLog(@"You touched me THERE!");
}

Auch im Header (H) Datei, sollten Sie einen entsprechend setzen:

-(IBAction) mySelector:(id)sender;

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top