달력

10

« 2021/10 »

  •  
  •  
  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  
  •  
  •  

iOS의 버전이 올라갈때마다 이런 저런 문제들이 생기기 마련인데 이번 iOS8에서는 UIImagePickerController(이하 이미지 피커)에서 약간은 심각한(?) 문제가 발견이 되었다.. Xcode 6에서 컴파일을 하면 괜찮기는 하지만 덩치 큰 프로젝트에 Xcode 6를 쉽게 적용하기는 쉽지않고 크고 작은 이슈들이 많이 야기될 수 있기 때문에 이건 시간을 가지고 천천히 수정을 해야 할 문제기 때문에 당분간은, 특히 업데이트를 목전에 두고 있는 마플 같은 경우 이미지 피커 문제가 좀 크다.. 그렇다고 그냥 묻어둘 수도 없고..


우선 발생하는 문제를 보자면 크게 두가지이다..



하나는 위 화면처럼 이미지 피커가 모달로 뜰 때 배경이 투명하게 보이는 문제.. 모달 창이 다 뜨고 나면 그제서야 내용물이 표시된다..

뭐 이건 크리티컬한 문제는 아닌데.. 요 다음 문제는 크리티컬하다..




종종 이미지 피커 객체를 한번 만들고 다시 피커를 띄우게 되면 좀전에 만들었던 이미지 피커를 재사용하도록 코딩을 하곤 한다..

한번 객체를 만들었던걸 다시 사용하는게 속도면에서 약간 유리할 수도 있기 때문인데, 바로 이때 위 화면과 같은 맹한 상태가 되어버린다.. 화면에 아무것도 표시가 안되고 심지어는 네비바에 취소 버튼조차 표시가 안되어서 창을 닫을 수도 없는 사태가 벌어진다..

이걸 해결하기 위해서는 이미지 피커 객체를 재사용하지 말고 피커를 띄울 때 마다 새로 생성해서 띄우면 된다.. 물론 첫 화면처럼 배경이 뚫려 보이기는 하지만 일단 Xcode 5.x 버전에서는 이것 말고는 이미지를 선택할 때, UIImagePickerController가 아닌 그냥 하나 통으로 만들어서 쓰는 방법 요렇게 두가지밖에 없어 보인다..


https://github.com/donobono/DoImagePickerController

이참에 틀에 박힌 UIImagePickerController말고 요런 훌륭한 오픈소스를 사용해보는 것도 좋을 것 같다..


매번 iOS가 업그레이드될 때마다 조용히 넘어가는 경우가 없네..

애플아.. 잘좀 하자.. 응?


Posted by 도노보노

댓글을 달아 주세요