UITextView
은 superView
을 채우고 UIView
은 UIViewController
인스턴스 내에 있습니다.xcode/iOS :보기를 채우려면 자동 크기 지정 - 명시 적 프레임 크기는 필수입니까?
UITextView
은 autoresizingMask
및 autoresizesSubviews
이라는 API 지정 속성을 사용하여이 작업을 단독으로 수행 할 수없는 것으로 보입니다. 여기에 표시된대로 설정하면 아무런 효과가 없습니다. superView
이 화면을 채우더라도 UITextView
은 작게 유지됩니다. 내가보기 컨트롤러 내에서 내 자신의 뷰를 인스턴스화하는 경우
// use existing instantiated view inside view controller;
// ensure autosizing enabled
self.view.autoresizesSubviews = YES;
self.view.autoresizingMask = UIViewAutoresizingFlexibleHeight|
UIViewAutoresizingFlexibleWidth;
// create textview
textView = [[[UITextView alloc] autorelease] initWithFrame:CGRectMake(0, 0, 1, 1)];
// enable textview autoresizing
[textView setAutoresizingMask:UIViewAutoresizingFlexibleWidth|
UIViewAutoresizingFlexibleHeight];
// add textview to view
[self.view addSubview:textView];
그러나, 그 '.view'속성을 교체 한 후 예상대로 모든 것이 작동하고, 텍스트 뷰는 수퍼 채우고 : 나는 '
// reinstantiate view inside view controller
self.view = [[UIView alloc]init];
// create textview
textView = [[[UITextView alloc] autorelease] initWithFrame:CGRectMake(0, 0, 1, 1)];
// enable textview autoresizing
[textView setAutoresizingMask:UIViewAutoresizingFlexibleWidth|
UIViewAutoresizingFlexibleHeight];
// add textview to view
[self.view addSubview:textView];
을 이러한 initialisers/모든 방법 안에 모두 코드 덩어리를 시도하고, 같은 상황이 모든 경우에 발생했습니다 :
-(id)init;
-(id)initWithFrame:(CGRect)frame;
-(void)viewDidLoad;
나는 실현 그의 '.view'을 재차 생성은 추한 사람입니다. 내가 뭘 잘못하고 있는지 설명 할 수 있습니까? 나는 내 UIViewController
에 초기 프레임 설정 코드를 넣고 UITextView
의 크기를 한 번 조정 한 다음에 autoresizing
을 원하는대로 작동시킴으로써이 문제를 극복 할 수 있다고 생각했습니다.
-(void)viewDidLoad {
textView.frame = self.view.frame;
}
이 ...하지만 겉으로 view.frame가이 단계에서 설정되어 있지 않은, 그렇게 다시 한 번 텍스트 뷰는 작은 남아, 그 '크기는'값이 정의되어 있지 않습니다.
내가 원하는 것을 달성하는 올바른 방법은 무엇입니까? 수퍼 뷰를 채우기 위해 전체 화면 크기를 명시 적으로 UITextView:initWithFrame
으로 지정해야합니까?
제공 할 수있는 조언에 감사드립니다.
는'init' 전에없는'autorelease'를 수행합니다. 정확한 순서는'... alloc] init] autorelease]'입니다. 'UIView'는 괜찮지 만'autorelease'와'init'을 잘못된 순서로 사용하면'NSString'과 다른 클래스 클러스터가 새어 나올 것입니다. 정말로 당신의 진짜 질문을 도울 수 없기 때문에 유감스럽게 생각합니다. – Yuji
감사합니다. Yuji, 나는 팁을 감사합니다 - 내가 몰랐던 것을! – KomodoDave