Trzeba rzucić nadawcę jako UIButton:
-(IBAction)buttonPressed:(id)sender{
UIButton *button = (UIButton *)sender;
NSLog(@"%d", [button tag]);
}
Edit: Jeśli chodzi o komunikat „nierozpoznany selektor” ...
Na podstawie komunikatu o błędzie, że nie jest w stanie wywołać metodę buttonPressed w pierwsze miejsce. Zauważ w komunikacie o błędzie, że szuka "buttonPressed" (bez dwukropka na końcu), ale metoda nazywa się "buttonPressed:". Jeśli ustawiasz cel przycisku w kodzie, upewnij się, że selektor jest ustawiony na buttonPress: zamiast tylko buttonPressed. Jeśli ustawiasz cel w IB, xib może nie być zsynchronizowany z kodem.
Twój oryginalny kod "[tag nadawcy]" również powinien działać, ale aby uzyskać dostęp do właściwości specyficznych dla przycisku, musisz go przesłać do UIButton.
ciągle wywala ... :( –
2010-03-17 16: 07: 35.322 Pamięć [37490: 207] *** - [MemoryViewController buttonPressed]: nierozpoznany selektor wysyłane do instancji 0x3b08cb0 2010-03-17 16: 07: 35.324 Pamięć [37490: 207] *** Kończenie aplikacji z powodu nieprzechwyconego wyjątku "NSInvalidArgumentException", powód: "*** - [przycisk MemoryViewController naciśnięty]: nierozpoznany selektor wysłany do instancji 0x3b08cb0 ' stack ... –
Powinien działać przycisk [button] Proszę zobaczyć zmiany w odpowiedzi – DyingCactus