В моем приложении у меня есть экран, похожий на форму отправки, которая содержит раскрывающийся список, текстовые поля и кнопки.Есть две кнопки, одна для выбора изображения из галереи, а другая для выбора изображения с камеры.Моя проблема в том, что после заполнения всех текстовых полей я выбираю изображение из галереи и после увольнения из представленного экрана галереи.Все мои розетки не видны, значит, становятся прозрачными.Это происходит только в версии iOS 12, но в версии iOS 11 работает нормально.Пожалуйста помоги.Мой экран, как показано ниже.
Перед загрузкой изображения
После загрузки изображения
Язык кодирования является объективным C.
Мои выходы указаны ниже.
@property (strong, nonatomic) IBOutlet UITextField *txtSubmit;
@property (strong, nonatomic) IBOutlet UITextField *txtVisitDate;
@property (strong, nonatomic) IBOutlet UITextField *txtCalimType;
@property (strong, nonatomic) IBOutlet UITextField *txtInvoiceAmount;
@property (strong, nonatomic) IBOutlet UITextField *txtServiceProvoider;
@property (strong, nonatomic) IBOutlet UITextField *txtReceiptsNo;
@property (strong, nonatomic) IBOutlet UITextField *txtDescription;
@property (strong, nonatomic) IBOutlet UIView *btnSnapClick; //weak
@property (strong, nonatomic) IBOutlet UIButton *btnCameraclick; //weak
@property (nonatomic, retain) UIImagePickerController *mediaPicker;
@property (strong, nonatomic) IBOutlet UIButton *btnUpload;
@property (strong, nonatomic) IBOutlet NSLayoutConstraint *CollectionContanst; //weak
@property (strong, nonatomic) IBOutlet UIButton *btnSubmitWithRadious; //weak
@property (strong, nonatomic) IBOutlet UICollectionView *collectionView;
@property (strong, nonatomic) IBOutlet UIBarButtonItem *sidebarButton; //weak
@property (strong, nonatomic) UIWindow *window;
Мой код отклонения указан ниже.
[self dismissViewControllerAnimated:YES completion:NULL];
Я получил ошибку при попытке просмотра в отладчике представления, как показано ниже.
Ошибка: невозможно записать иерархию представления.Подробности: Заголовок журнала: Ошибка выполнения выражения источника данных.Сведения журнала: (ноль)
Метод журнала: - [DBGDataSourceConnectionLibViewDebugger _executeLLDBExpression: forRequest: onPotentialThread: итерация:] _ block_invoke_2 метод: - [DBGViewDebugger updateDebugHierarchy] Пожалуйста, предупреждайте об ошибкесообщение и любую полезную информацию, которую вы можете предоставить.2018-11-16 15: 12: 32.872415 + 0530 NTUCAdeptCliniFlex [213: 3848] Ошибка: DebugHierarchyRequest - Не удалось разархивировать данные запроса с ошибкой: Ошибка Домен = NSCocoaErrorDomain Code = 3840 "Текст JSON не был запущен с массивом или объектом и параметром дляразрешить фрагменты не установлены. "UserInfo = {NSDebugDescription = Текст JSON не начинался с массива или объекта и опции, позволяющей не задавать фрагменты.}
Несмотря на то, что экран пустой, когда я щелкаю где-то, он отображается, как показано ниже.
когда я щелкнул где-то на экране
Xcode 9.2
- (void)zcImagePickerController:(ZCImagePickerController *)imagePickerController didFinishPickingMediaWithInfo:(NSArray *)info {
BOOL isValidImage = YES;
[self dismissPickerView];
for (NSDictionary *imageDic in info) {
UIImageView *imageView = [[UIImageView alloc] initWithImage:[imageDic objectForKey:UIImagePickerControllerOriginalImage]];
imageView.contentMode = UIViewContentModeScaleAspectFit;
NSData *imageData = UIImageJPEGRepresentation(imageView.image, 0.4);
double imgLength = (imageData.length);
double imgLengthKb = imgLength/1024;
if(imgLengthKb <= maxFileSize){
dispatch_async(dispatch_get_main_queue(), ^{
//update your UI stuff here.
NSString *base64 = [imageData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
int randomID = arc4random() % 900000 + 100000;
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd_MM_yyyy"];
[dateFormat setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US"]];
NSDate *currentDate = [NSDate date];
NSString *dateString = [dateFormat stringFromDate:currentDate];
NSString *fileName = [NSString stringWithFormat:@"%@%@%@%d%@", @"ios_upload_",dateString,@"_",randomID,@".jpg"];
NSDictionary *dictContact =[NSDictionary dictionaryWithObjectsAndKeys:base64,@"File64ByteStream",fileName,@"FileName", nil];
[_imageViewArray addObject:dictContact];
self.CollectionContanst.constant=128; //128
});
}else{
isValidImage = NO;
}
}
[_collectionView reloadData];
// dispatch_async(dispatch_get_main_queue(), ^{
// [_collectionView reloadData];
// });
if(isValidImage == NO){
[self showAlertonImage];
}
}
- (void)dismissPickerView {
[self dismissViewControllerAnimated:NO completion:nil];
}
Приведенный выше код используется длявыбрать изображение из галереи.
Даже я использовал отладчик иерархии представления, он выглядит пустым.Пожалуйста, проверьте вложение ниже Это изображение из иерархии представления