Цель этого приложения - извлечь данные, выбранные в UITableCell
, и передать их новому контроллеру представления.Все хорошо, пока пользователь не выберет ячейку.Контроллер следующего вида загружен, но экран черный.На этом экране у меня есть UIImageView
и UILabel
.У меня UINavigationController
настроен в раскадровке.Я пытаюсь получить изображение и текст, выделенные на первом экране, соответствующими объектами на следующем экране.Я получил данные из базы данных и загрузил их на первый экран.
Вот мой код на моем storedetail.h
, который является подклассом для UIViewController
,
@property (nonatomic, copy) UIImage *storeImage;
@property (nonatomic, copy) UILabel *storeCode;
Вот мой код, где я вызываю контроллер nextview, который является ShowStores.m
, который является подклассом кода заголовка UITableView
,
,
#import "ShowStores.h"
#import "StoreDetail.h"
кода, куда я загружаю следующеепосмотреть, когда пользователь выбирает ячейку,
(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
[tableView deselectRowAtIndexPath:indexPath animated:NO];
StoreDetail *storedetail = [[StoreDetail alloc] init];
storedetail.storeImage = cell.imageView.image;
storedetail.storeCode = cell.textLabel;
storedetail.storeCode.text = cell.textLabel.text;
[self.navigationController pushViewController:storedetail animated:YES];
}
Я отладил ее, а cell.textLabel.text
и cell.imageView.image
не равны нулю или нулю.Второй вид загружается, но черный.Я установил кнопку «Назад» на втором экране, который возвращает пользователя к первому виду, и это прекрасно работает.