Develop
2014.03.27 13:36
[ios] iOS 7 이상 UIBarButtonItem 여백
Views 4105 Comment 0
Attachment '3' |
---|
iOS 7 이후부터 UINavigationController의 UINavigationBar에 Custom UIBarButtonItem를 사용하면 여백이 생기는 현상이 발생함.
아래 그림처럼..
# iOS 6 일때
# iOS 7 일때는 아래처럼 왼쪽에 여백이 생김
이런 문제를 아래 코드를 이용해 해결할 수 있음.
# UIButton (Alignment)
- (UIEdgeInsets)alignmentRectInsets { UIEdgeInsets insets; if (SYSTEM_VERSION_LESS_THAN(@"7.0")) { if ([self isLeftButton]) { insets = UIEdgeInsetsMake(0, 9.0f, 0, 0); } else { insets = UIEdgeInsetsMake(0, 0, 0, 9.0f); } } else { insets = UIEdgeInsetsZero; } return insets; } - (BOOL)isLeftButton { //return self.frame.origin.x) < (self.superview.frame.size.width / 2); CGFloat mid = self.frame.origin.x - self.frame.size.width/2; return mid < (self.superview.frame.size.width / 2); }
위의 코드를 수정해서 완성본을 업로드 해두었음..
- 압축 파일 내용
ver1 : 생성자에서 UIButton의 좌우 위치를 지정함 (레거시 코드에 적용시 alloc init 부분 수정 발생)
ver2 : 생성자 없이 UIButton 자신의 좌표로 좌우를 판단해서 알아서 적용 (레거시 코드 바로 적용)
[출처] http://stackoverflow.com/questions/18861201/uibarbuttonitem-with-custom-view-not-properly-aligned-on-ios-7-when-used-as-left
No. | Category | Subject | Author | Date | Views |
---|---|---|---|---|---|
421 | Develop | [c] 근의 공식으로 2차방정식 풀기.. | hooni | 2003.04.23 | 7827 |
420 | Develop | [c] 이진트리(binary tree) 샘플소스 (삽입, 삭제, 운행) | hooni | 2003.04.23 | 7847 |
419 | Develop | [mysql] 양력, 음력 DB데이터 | hooni | 2013.04.23 | 7848 |
418 | Develop | [jsp] HelloServlet 출력문 | hooni | 2003.04.23 | 7853 |
417 | Develop | [c] fgets() 함수 사용하기.. | hooni | 2003.04.23 | 7857 |
416 | Develop | [c] i2osp 임시로.. ㅋㅋ | hooni | 2003.04.23 | 7862 |
415 | Develop | [java] RGB 색상 조절 버튼.. 스윙(swing) | hooni | 2013.04.23 | 7871 |
414 | Develop | [linux] 프로세스 관련 시스템콜 | hooni | 2003.04.23 | 7876 |
413 | Develop | [c] 소수 구하기 #1 (한정된 숫자 내에 있는 소수 걸러내기) | hooni | 2003.04.23 | 7884 |
412 | Develop | [c] OpenGL 색 입방체의 회전(입체) | hooni | 2003.04.23 | 7901 |
411 | Develop | [java] 마우스 버튼 테스트.. swing.. | hooni | 2013.04.23 | 7909 |
410 | Develop | [c] UCP/TCP 채팅 소스 - 정리해야 함.. | hooni | 2003.04.23 | 7947 |