Можно ли разработать собственное представление для представления Retake/UsePhoto?
Вот экран необходимого компонента:
https://i.sstatic.net/ jtGZ7fhF.png
Этот предварительный просмотр появляется сразу после того, как фотография была сделана. Я могу либо отказаться от фотографии, либо использовать сделанную мной фотографию.
Мне нужно изменить дизайн этой: заменить кнопки другими кнопками, добавить текстовое поле. Как это сделать, используя стандартный код?
Вот мой код:
struct ImagePicker: UIViewControllerRepresentable {
@Environment(\.presentationMode) private var presentationMode
@Binding var state: PhotoViewModel.ImageState
@Binding var selectedImage: UIImage?
let sourceType: UIImagePickerController.SourceType
init(selectedImage: Binding, sourceType: UIImagePickerController.SourceType) {
self._state = .constant(.none)
self._selectedImage = selectedImage
self.sourceType = sourceType
}
init(state: Binding, sourceType: UIImagePickerController.SourceType) {
self._selectedImage = .constant(nil)
self._state = state
self.sourceType = sourceType
}
func makeUIViewController(context: Context) -> UIImagePickerController {
let picker = UIImagePickerController()
picker.sourceType = sourceType
if sourceType == .camera {
picker.cameraDevice = .rear
}
picker.delegate = context.coordinator
picker.allowsEditing = false
return picker
}
func updateUIViewController(_ uiViewController: UIImagePickerController, context: Context) {}
func makeCoordinator() -> Coordinator {
Coordinator(self)
}
class Coordinator: NSObject, UINavigationControllerDelegate, UIImagePickerControllerDelegate {
let parent: ImagePicker
init(_ parent: ImagePicker) {
self.parent = parent
}
func imagePickerController(
_ picker: UIImagePickerController,
didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey: Any]
) {
if let uiImage = info[UIImagePickerController.InfoKey.originalImage] as? UIImage {
parent.state = .picked(uiImage)
parent.selectedImage = uiImage
parent.presentationMode.wrappedValue.dismiss()
}
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... ng-a-photo
Есть ли способ создать собственный предварительный просмотр после съемки фотографии? ⇐ IOS
Программируем под IOS
1737241881
Anonymous
Можно ли разработать собственное представление для представления Retake/UsePhoto?
Вот экран необходимого компонента:
https://i.sstatic.net/ jtGZ7fhF.png
Этот предварительный просмотр появляется сразу после того, как фотография была сделана. Я могу либо отказаться от фотографии, либо использовать сделанную мной фотографию.
Мне нужно изменить дизайн этой: заменить кнопки другими кнопками, добавить текстовое поле. Как это сделать, используя стандартный код?
Вот мой код:
struct ImagePicker: UIViewControllerRepresentable {
@Environment(\.presentationMode) private var presentationMode
@Binding var state: PhotoViewModel.ImageState
@Binding var selectedImage: UIImage?
let sourceType: UIImagePickerController.SourceType
init(selectedImage: Binding, sourceType: UIImagePickerController.SourceType) {
self._state = .constant(.none)
self._selectedImage = selectedImage
self.sourceType = sourceType
}
init(state: Binding, sourceType: UIImagePickerController.SourceType) {
self._selectedImage = .constant(nil)
self._state = state
self.sourceType = sourceType
}
func makeUIViewController(context: Context) -> UIImagePickerController {
let picker = UIImagePickerController()
picker.sourceType = sourceType
if sourceType == .camera {
picker.cameraDevice = .rear
}
picker.delegate = context.coordinator
picker.allowsEditing = false
return picker
}
func updateUIViewController(_ uiViewController: UIImagePickerController, context: Context) {}
func makeCoordinator() -> Coordinator {
Coordinator(self)
}
class Coordinator: NSObject, UINavigationControllerDelegate, UIImagePickerControllerDelegate {
let parent: ImagePicker
init(_ parent: ImagePicker) {
self.parent = parent
}
func imagePickerController(
_ picker: UIImagePickerController,
didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey: Any]
) {
if let uiImage = info[UIImagePickerController.InfoKey.originalImage] as? UIImage {
parent.state = .picked(uiImage)
parent.selectedImage = uiImage
parent.presentationMode.wrappedValue.dismiss()
}
}
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79368110/is-there-any-way-to-develop-a-custom-preview-after-taking-a-photo[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия