2012-10-06 3 views
3

현재 iOS 6.0을 사용하고 있습니다.어떻게 스토리 보드로 UIView init의 크기를 설정할 수 있습니까?

사용자 정의 UIView에 특정 크기가 있어야합니다. 프로그래밍 방식으로 뷰를 초기화하고 추가하면 괜찮습니다. 그러나 스토리 보드에서보기의 크기를 설정할 수있는 위치를 찾을 수 없습니다.

스토리 보드에서 크기를 설정하는 것은 스토리 보드가 비어 있다고 생각하고 크기를 0으로 설정했기 때문에 작동하지 않습니다. 나중에 크기가 _applyISEngineLayoutValue으로 덮어 쓰여 지므로 크기를 viewDidLoad 또는 viewDidAppear으로 설정하면 작동하지 않습니다.

답변

1

인터페이스 작성기에서 할 수 있습니다.

enter image description here

:

enter image description here

는 그런 다음 유틸리티 메뉴의 상단에 통치자처럼 보이는 버튼을 선택할 수 있습니다 : 유틸리티 메뉴를 당신이 당신의 전망이 스토리 보드를 열고 열

해당 메뉴에서보기의 크기와 확대 방법을 설정할 수 있습니다.

또한

, 당신은 클래스 관리자에 클래스 '보기를 잘 살고 있는지 확인하십시오

enter image description here

이미지 토큰을 this site에서. 마지막으로

, 당신은 initWithFrameinitWithCoder 방법 오버라이드 (override) 확인 : 저도 같은 문제에 직면하고있다

- (id)initWithFrame:(CGRect)frame { 
    return [super initWithFrame:frame]; 
} 

//Needs to be overrided when you set your size in interface builder 
- (id)initWithCoder:(NSCoder *)aDecoder { 
    return [self initWithFrame:[self frame]]; 
} 
+0

로 설정되어 있는지 확인합니다. – user1724886

+0

내 편집에 표시된 것처럼 관리자에서 수업을 설정 했습니까? –

+0

그래서, MyView : drawView 메서드로 UIView를 만들고, 원을 그리십시오. 그런 다음 스토리 보드를 사용하여 MyView에 UIView를 배치하고 클래스를 MyView로 설정 한 다음 크기를 800 * 600으로 설정합니다. 화면의 원이 표시되지만보기의 크기가 0이기 때문에 아무 것도 없습니다. – user1724886

1

을, 나는 짧은 대답은 생각 : 당신의 프레임 또는 경계에 의존 할 수 없다 스토리 보드를 사용할 때보기의 init 메소드.

segue로 뷰를 초기화하면 .xib 파일에서 뷰 객체를 비 직렬화하므로 다른 초기화 메소드보다는 initWithCoder : 메소드를 호출합니다. 스토리 보드가 나오기 전에 프레임과 경계는 initWithCoder :가 호출 될 때 설정되지만 스토리 보드의 경우 더 이상 나타나지 않습니다. iOS 코드는 나중에 해당 값을 설정합니다. I (예를 들어 하나 개의 크기를 지원하는 전문보기) 미리보기의 크기를 알고 있다면 난 내 자신의 설정

  1. :

    나는 상황에 따라 몇 가지 해결 방법을 사용했습니다 프레임에서 initWithCoder : 메소드를 호출하십시오.

  2. 뷰의 크기를 모르는 경우 뷰의 layoutSubviews 메서드가 호출 될 때까지 크기 관련 항목의 초기화를 연기합니다.

  3. 더 편리하면 때때로 뷰의 ViewController에서 크기 지정 초기화를 명시 적으로 수행합니다. (예쁘지는 않지만 가끔 쉽고 빠르다. 자랑스럽지 않다.)

+0

나는 네가 머리에 못을 박 았다고 생각한다. Andrew - 스토리 보드 환경에서 "평범하지 않다"고 생각한다. 애플은 아주 늦게 설정 한 것 같다. – Fattie

+1

아! 작동 원리는 다음과 같습니다. http://stackoverflow.com/a/5837133/294884 – Fattie

0

난 당신과 같은 문제가, 내가보기를 선택하고 다음과 같이 "시뮬레이션 지표"로 설정, 속성 관리자로 전환 할 때, 나는 크기 관리자에서보기의 크기를 조정할 수 있습니다. 내가 말했듯이

확실히 그 크기는 상관없이 나는 관리자에서 설정 한 것, 크기가 0으로 설정되지 않습니다 "자유형"또는 "없음"

Simulated Metrics

관련 문제