Ошибка с UIImageView - PullRequest
       25

Ошибка с UIImageView

0 голосов
/ 19 сентября 2009

У меня ошибка компилятора, и я просто не могу понять, что не так. Я новичок в этом, поэтому изо всех сил пытаюсь расшифровать ошибку.

В моем .h у меня есть ...

@interface LongViewController : UIViewController {

    IBOutlet UIImageView *loadImageInto;
    IBOutlet UIImageView *loadedInto;
}

-(void)fadeIt:(UIImageView*)imgNamed;

И по моему .м ...

-(void)fadeIt:(UIImageView*)imgNamed
{
    if(longSize1.alpha == 0.0){
        loadImageInto = longSize1;
        loadedInto = longSize2;
    }
    if(longSize2.alpha == 0.0){
        loadImageInto = longSize2;
        loadedInto = longSize1;
    }

    loadImageInto.image = [UIImage imageNamed:imgNamed];
}

Предупреждение, которое я получаю, находится на последней строке:

warning passing argument 1 of 'imageNamed' from distinct objective-c type

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

Любая помощь будет высоко ценится!

Ответы [ 3 ]

1 голос
/ 22 января 2010

UIImage imageNamed: принимает строку NSString *, которая является именем загружаемого изображения. Похоже, что ваша переменная imgNamed имеет неправильный тип (не NSString *).

0 голосов
/ 01 января 2013

Вы передаете UIImageView методу в качестве параметра и затем используете это значение в методе [UIImage imageNamed:]. Метод imageNamed: принимает в качестве параметра NSString, а не UIImageView. Так что либо вам нужно вместо этого передать имя изображения как NSString, либо использовать значение UIImageView в качестве UIImageView. Не видя оставшуюся часть кода и то, как был создан этот UIImageView, трудно судить о лучшем способе, но по внешнему виду можно просто написать loadImageInto = imgNamed. Там вы один UIImageView к другому. Однако я сомневаюсь, что это действительно сработает. Поэтому я бы предложил либо передать значение NSString, либо опубликовать больше кода.

0 голосов
/ 22 января 2010

вы можете попробовать

loadImageInto = imgNamed ;
...