Изображения не отображаются, когда архитектура установлена на 64 бит
Для перевода моего приложения в 64-битное я изменил настройку сборки Architectures на:
ARCHS = "$ (ARCHS_STANDARD_INCLUDING_64_BIT)";
Приложение работает нормально, за исключением того, что некоторые изображения не отображаются (пусто). Почему это случилось? какие-нибудь подсказки?
3 ответа
Ответ лежит здесь:
https://devforums.apple.com/message/922989
Я нашел причину. В viewController, который еще не был выделен, но включен в приложение, было реализовано следующее (в.m-файле выше реализации viewController):
@implementation UIImageView (UIScrollView)
- (void)setAlpha:(float)alpha {
..........(no difference if here is some code or not) ...............
[super setAlpha:alpha];
}
@end
Помещение выше в комментарии решило проблему, хотя кнопка, которая не отображала изображение, не была в просмотре прокрутки.
Обновите структуру данных, используемую в коде, в соответствии с 64 битами, например, замените Float
с CGFloat
,(если не работает, то также изменить int
введите с NSInteger
)
Смотрите здесь для более подробной информации
В моем случае замени Float
с CGFloat
и решить мою проблему (самый простой способ заменить float
в CGFloat
)
#define float CGFloat
Запишите в файл.pch и проверьте, работает он или нет.
Спасибо
Это исправило мою проблему, чтобы изменить
- (void)setAlpha:(float)alpha {
чтобы:
- (void) setAlpha:(CGFloat)alpha {