1
我需要持有一些空值的plist中的數組(即不是每一個選擇都會有聲音),我已經創建如下:隱藏/顯示基於信息的按鈕中的plist
<dict>
<key>WalkingAudio</key>
<array>
<string>NULL</string>
<string>classical.mp3</string>
<string>NULL</string>
</array>
我碰到這樣做出的選擇的信息:
//awakeFromNib
NSString *myPlist = [[NSBundle mainBundle] pathForResource:@"MyPlist" ofType:@"plist"];
NSDictionary *rootDictionary = [[NSDictionary alloc] initWithContentsOfFile:myPlist];
self.walkingAudio = [rootDictionary objectForKey:@"WalkingAudio"];
//didSlectItemAtIndex
walkingAudioChosen = [NSString stringWithFormat:@"%@", [self.walkingAudio objectAtIndex:self.carousel.currentItemIndex]];
我需要的是一個按鈕,將成爲下一個視圖控制器上可見,只有當有音頻可用,如果沒有音頻可用仍然隱藏。什麼是最有意義的我是在prepareForSegue方法的if-else語句如下:
if (walkingAudio == NULL) {
dvc.playButton.hidden=YES;
} else {
dvc.playButton.hidden=NO;
}
但它總是顯示按鈕和播放音頻的一部分,然後崩潰。我錯過了什麼?
爲了增加@Wain例如,你也可以擺脫'如果... else'通過編碼'dvc.playButton.hidden =([walkingAudioChosen isEqualToString:@「NULL」]);' – Flexicoder
只是改變我的代碼,以反映你的建議,但我仍然有同樣的問題。我在下一個視圖控制器上有按鈕效果(即陰影等)。我是否也需要將這些條件放入? – Melissa
明白!對於任何有相同問題的人,我在視圖控制器中使用了if-else語句,其中按鈕位於我爲該按鈕創建的陰影效果周圍,並且它工作正常。這兩個答案都非常有幫助 - 非常感謝你! – Melissa