Перечисление в iphone не работает - PullRequest
0 голосов
/ 09 февраля 2011

Я занимаюсь разработкой приложения для iphone, в котором у меня есть 3 класса => основной класс, класс abc, класс pqr. На главном экране у меня есть imageview, на котором я показываю изображение. когда пользователь коснется центра изображения на главном экране, будет выдвинут новый вид (в зависимости от условия, указанного ниже)

a) если пользователь пришел из abc view , то новый вид не будет выдвинут

b) если пользователь пришел с pqr view , тогда я должен открыть новый вид .

Моя проблема заключается в том, как определить, с какого вида пользователь пришел на основной вид.

Я создаю 1 класс, в котором у меня есть следующий код в файле .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;

В методе touchBegan основного вида я сравниваю, какой вид выбран, написав это

if(enum.selectedViewType == pqrViewSelected) => push new view 

иначе ничего не делать.

Но это не сравнение, и ни в коем случае не выдвигается новый взгляд. Я импортировал все необходимые файлы заголовков везде.

Плз, помогите мне .... Заранее спасибо.

1 Ответ

1 голос
/ 09 февраля 2011

Проблема должна быть в этой строке:

if(enum.selectedViewType = pqrViewSelected)

Здесь вы не сравниваете текущее значение типа, а скорее назначаете ему pqrViewSelected (вместо '==' у вас есть '=').Попробуйте изменить эту строку на:

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

Обратите внимание, что постоянное выражение в качестве первого параметра сравнения делает невозможным ошибочное использование присваивания ('=') вместо сравнения ('==').

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...