#uitableview #xamarin.ios
Вопрос:
У меня есть ячейка tableview, в которой есть текстовое поле с кнопкой для добавления комментария, я добавляю способ прикрепить изображение к комментарию, а вместе с ним миниатюру выбранного изображения.
Элемент управления imagview по умолчанию скрыт, а ограничение по высоте равно нулю, так как скрытие не удаляет пространство, занимаемое imageview.
когда я устанавливаю ограничение по высоте на нужный размер, tableViewCell начинает просто работать неправильно, и текстовое поле теперь исчезло, а какой-то другой текст выталкивается вверх.
Вот как я возвращаю изображение в видимость:
var imageManager = new PHCachingImageManager(); var requestOptions = new PHImageRequestOptions { ResizeMode = PHImageRequestOptionsResizeMode.Exact, DeliveryMode = PHImageRequestOptionsDeliveryMode.Opportunistic }; imageManager.RequestImageForAsset(PreviewPhoto, new CGSize(64, 64), PHImageContentMode.AspectFit, requestOptions, (image, info) =gt; { ivPreviewHeight.Constant = 64; ivPreview.Image = image; ivPreview.Hidden = false; btnRemoveImage.Hidden = false; });
вот мои противопоказания для просмотра изображений:
- Ведущее пространство для просмотра -gt; 45
- Верхний пробел для btnComment -gt; 10
- Нижнее пространство для txtComment -gt; 10
Если я не буду возиться с ограничением высоты, это нормально, но тогда у меня будет большое пустое место, которое выглядит плохо, есть ли хороший способ справиться с этим, чтобы iOS не сошла с ума?
Комментарии:
1. Вам нужно знать все ограничения , которые вы установили для просмотра изображений, вы когда-нибудь пробовали
Frame
вместо этого жесткий кодconstraint
?2. обновлено, чтобы показать мои противопоказания для просмотра изображений. Нет, я никогда не программирую жестко, так как это просто звучит как кошмар, учитывая, насколько сложны мои клетки
3. Вы также регулировали высоту строки при отображении изображения ? И, если возможно, не могли бы вы предоставить снимок экрана фактического и ожидаемого поведения?
4. нет, я установил ограничения таким образом, чтобы ячейка могла изменять размер самостоятельно
5. обновлено, чтобы показать, что происходит