我是iphone开发的新手,在AwesomeMenu的didSelectIndex方法中实现if语句时遇到了麻烦。该方法触发并返回所选索引的值,但当我试图在该方法的条件语句中使用该索引时,它不会响应。例如,我的日志只打印“选择索引: 0",而不打印”索引0“。至少可以说,这是非常令人沮丧的。任何帮助都是非常感谢的。
我的代码:
- (void)AwesomeMenu:(AwesomeMenu *)menu didSelectIndex:(NSInteger)idx{
if (idx==0) {
NSLog(@"Index 0"); //Doesn't print
}else if(idx==1){
NSLog(@"Index 1"); //Doesn't print
}else{
NSLog(@"Else Block test"); //Doesn't print
}
NSLog(@"Select the index : %d",idx); //<--This Works.
}发布于 2013-03-14 07:17:11
委派的设置不正确。
Awesome的样板代码包括被调用的NSLog语句。上面的代码很好用。您只是没有将菜单的代理设置为适当的对象。因此,你上面的代码永远不会运行。
如果您在这方面需要帮助,请发布演示如何初始化AwesomeMenu的代码。
在任何情况下,在您的整个项目中搜索短语“选择索引”,您将找到实际执行的委托方法,而不是您当前的代码。
发布于 2013-03-14 07:10:02
您可以尝试:
NSInteger i = 2;
NSInteger j = 2;
if (i == j) {
NSLog(@"equal")
}发布于 2013-03-14 07:11:20
您的If - else语句没有问题。仔细检查你的(NSInteger)idx。
它工作正常
[self AwesomeMenu:nil didSelectIndex:1];
- (void)AwesomeMenu:(id )menu didSelectIndex:(NSInteger)idx{
if (idx==0) {
NSLog(@"Index 0"); //Doesn't work
}else if(idx==1){
NSLog(@"Index 1"); //Doesn't work
}
NSLog(@"Select the index : %d",idx); //<--This Works.
}输出
Index 1
Select the index : 1https://stackoverflow.com/questions/15398131
复制相似问题