2012-10-25 60 views
1

我的故事如下。我在標籤欄中添加了一個按鈕,並且我已將按鈕標識設置爲「播放」,以便它看起來像播放按鈕。我使用的是標識符,因此我不必使用自己的'play.png'圖像。Xcode 4.5:我想更改導航欄按鈕'標識符'從播放到暫停

當我按下按鈕時,除了播放聲音,我希望圖像(標識符)更改爲「暫停」。我不清楚是否可以,如果是的話,如何做出這樣的改變。

我見過一些從播放到暫停等按鈕切換的例子,但他們似乎使用我想避免的本地圖像文件。

任何幫助表示讚賞。

Paul。

+1

這看起來像它會回答你的問題的http:/ /stackoverflow.com/a/4288800/385017 –

+0

此外,粘貼您嘗試過的代碼通常是一個好主意。找到問題更容易,SO上的人會更傾向於幫助您。 – ForceMagic

+0

謝謝,但不完全。正如我所提到的,我不想使用外部圖像,並且想要將UIbarbuttonitem的標識符從「播放」更改爲「暫停」。感謝關於添加代碼的提示,但我還沒有。 –

回答

2

我有同樣的問題試圖改變按鈕樣式與運行時的默認標識符,我做了谷歌研究,我認爲這是不可能的,所以我的解決方案是創建一個新的按鈕,並在運行時改變它。

- (IBAction)playButton:(UIBarButtonItem *)sender { 

if (self.scene.isPaused){ 
    [self.scene setPaused:YES]; 
    UIBarButtonItem *play = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemPlay target:self action:@selector(playButton:)]; 
    play.style = UIBarButtonItemStyleBordered; 
    self.botToolbar.items = [NSArray arrayWithObject:play]; 

} 
else{ 
    [self.scene setPaused:NO]; 
    UIBarButtonItem *pause = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemPause target:self action:@selector(playButton:)]; 
    pause.style = UIBarButtonItemStyleBordered; 
    self.botToolbar.items = [NSArray arrayWithObject:pause]; 
} 

} 

我用self.botToolbar.items因爲我有一個工具欄我加在故事板,如果你想使用NavigationController的工具欄只是改變了self.toolbarItems