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