UIImageView.hidden = NO; но изображение не видно? - PullRequest
0 голосов
/ 07 сентября 2011

SomeImage - это UIImageView *, глобально объявленный

-(void)InMethodCalledFromViewDidLoad
{
    SomeImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"SomeImage.png"]];
SomeImage.frame = CGRectMake(0, 640, 1024,110);
[self.view addSubview:SomeImage];
    SomeImage.hidden = YES;
    [self OneMoreMethod];
}


-(void)OneMoreMethod{
SomeImage.hidden = NO;//image becomes visible

[self SecondMethod];
/*but now from this point onwards even if SomeImage.hidden changed to NO then only nummerical value of SomeImage.hidden changes but image itself stays hidden doesnt become visible at all */
 }


 -(void)SecondMethod

 {

int tmp = 0;
NSArray* PosAndSizeArrForCurrSlot = [[PosAndSizeArr objectAtIndex:SlotId] componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@" "]];
for(NSString* values in PosAndSizeArrForCurrSlot)
  PositionAndSize[tmp++]  = [values intValue];

}

Я не могу понять, почему SomeImage не отображается даже после установки свойства hiiden в NO после вызова SecondMethod.

Ответы [ 3 ]

1 голос
/ 07 сентября 2011

Это может быть "духовный" ответ, но, кажется, всегда кусает меня в зад, связано ли ваше изображение с вашим .xib?Если розетка не установлена, изменения не будут получены.

1 голос
/ 07 сентября 2011

На каком устройстве вы пытаетесь отобразить изображение?

SomeImage.frame = CGRectMake(0, 640, 1024,110);

Скорее всего, попытается отобразить изображение за пределами видимой области вашего устройства.Также вам следует обратиться к этому руководству: http://google -styleguide.googlecode.com / svn / trunk / objcguide.xml

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

0 голосов
/ 14 марта 2012

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

-(void)OneMoreMethod{
   //SomeImage.hidden = NO;//image becomes visible
   NSLog(@"before SecondMethod");    
   [self SecondMethod];
   NSLog(@"after SecondMethod");    
   SomeImage.hidden = NO;//image becomes visible
   NSLog(@"after hidden = No");
}

Я предполагаю, что естьнекоторые сбой в [self SecondMethod], затем никогда не прибывает SomeImage.hidden = NO;

...