iphone中的枚举不起作用

iphone中的枚举不起作用,iphone,enums,Iphone,Enums,我正在开发一个iphone应用程序,其中我有3个类=>main类、abc类和pqr类。在主视图上,我有一个imageview,我正在其上显示图像。当用户触摸主视图上的图像中心时,将推送新视图(取决于下面提到的条件) a) 如果用户来自abc视图,则 不会推送新视图 b) 如果用户来自pqr视图,则我 必须推送新视图 我的问题是如何检测用户从哪个视图进入主视图 我创建了一个类,其中.h文件中有以下代码 typedef enum { abcViewSelected,

我正在开发一个iphone应用程序,其中我有3个类=>main类、abc类和pqr类。在主视图上,我有一个imageview,我正在其上显示图像。当用户触摸主视图上的图像中心时,将推送新视图(取决于下面提到的条件)

a) 如果用户来自abc视图,则 不会推送新视图

b) 如果用户来自pqr视图,则我 必须推送新视图

我的问题是如何检测用户从哪个视图进入主视图

我创建了一个类,其中.h文件中有以下代码

typedef enum {
        abcViewSelected,
        pqrViewSelected
} SelectedViewType;

@interface Enumeration : NSObject {
    SelectedViewType selectedViewType;
}

@property(nonatomic) SelectedViewType selectedViewType;
在。我有一个文件

@synthesize selectedViewType;
当用户从abcView和pqrView中选择表格单元格时,我按下didSelectRowAtIndexPath中的主视图并设置视图类型,如下所示:-

enumObj.selectedViewType = abcViewSelected;

enumObj.selectedViewType = pqrViewSelected;
在main view的touchStart方法中,我正在比较通过编写本文选择哪个视图

if(enum.selectedViewType == pqrViewSelected) => push new view 
否则什么也不做

但这并不令人担忧&在任何情况下,新的观点都不会被推动。我已经导入了所有需要的头文件


请帮助我……提前谢谢。

问题一定出在这行:

if(enum.selectedViewType = pqrViewSelected)
这里不比较当前类型值,而是将pqrViewSelected指定给它(您使用的是“=”而不是“=”)。尝试将该行更改为:

if(pqrViewSelected == enum.selectedViewType){
    // push view
}

请注意,将常量表达式作为比较中的第一个参数会导致不可能错误地使用赋值(“=”)而不是比较(“=”)。

如果您在问题中键入的是正确的,则您使用的是
=
而不是
=
进行比较(另外,它应该是
enumObj.selectedViewType
)对不起,朋友们,它是“==”而不是“=”。有问题的是我的打字错误。但它仍然不起作用。如果你有任何其他的解决方案,欢迎。谢谢@Vladimir:如果我使用ur代码(pqrViewSelected==enum.selectedViewType),那么在任何情况下都不会推送新视图。我用了“==”。请帮助我的朋友。提前感谢您的案例中的“枚举”是什么?你有没有试着调试你的程序,看看实际值,找出它们可能出了什么问题……我试着调试。我将两条NSLog语句放在下面的NSLog中(@“在if循环之前”);如果(enum.selectedView==pqrVIewSelected){//pushview};NSLog(@“在if循环之后”);当我在控制台中运行时,我会打印“after if loop”。它不执行if循环。