Невозможно получить точное значение тега UIView - PullRequest
0 голосов
/ 19 апреля 2011

Я пытаюсь сравнить тег просмотра с другим тегом, используя следующий код

for(UIView *subView in cardsContainerView.subviews){

    NSNumber *viewTag = [NSNumber numberWithInt:subView.tag];
    NSLog(@"The subView tag is %d",viewTag);
    if([[dataDict valueForKey:@"savedPositions"]containsObject:viewTag]){
        [tempArray addObject:viewTag];
        [self rearrangeView:subView and:subView];
    }

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

89212864.

Может кто-нибудь помочь мне узнать причину такого поведения, пожалуйста?

Ответы [ 2 ]

1 голос
/ 19 апреля 2011
for(UIView *subView in cardsContainerView.subviews){

    NSNumber *viewTag = [NSNumber numberWithInt:subView.tag];
    NSLog(@"The subView tag is %d",[viewTag intValue]);
    if([[dataDict valueForKey:@"savedPositions"]containsObject:viewTag]){
        [tempArray addObject:viewTag];
        [self rearrangeView:subView and:subView];
    }

Попробуйте это

0 голосов
/ 19 апреля 2011

viewTag - это объект, если вы просто передадите его в NSLog, он выведет вам идентификатор экземпляра (в контексте целого числа), что дает вам странный результат.Вы должны спросить viewTag для его целого значения:

NSLog(@"The subView tag is %d", [viewTag intValue]);
...