2012-06-26 2 views
8

보기에 UITextView가 있으며보기 컨트롤러가 모달 스타일로 표시됩니다. 내 viewDidLoad 메서드에서이 UITextView 텍스트를 설정하지만 텍스트가 표시되지 않습니다. 아래 이미지 오류를 보여줍니다. 텍스트 색상은 검정색입니다..UITextView의 텍스트가 보이지 않으나 점유 된 공백을 올바르게 표시하지 않습니다.

이상한 일은 텍스트보기에서 길게 탭하거나 키보드에서 [돌아 가기]를 탭하면 텍스트가 보입니다. 내가 알기로는이 오류는 단지 내가 설정 한 텍스트가 UITextView 프레임 너비보다 길고 마지막 단어가 긴 URL과 같이 깨지지 않았을 때 이 발생했다는 것입니다..

나는 문제가 어쩌면 단어가 제대로 작동하지 둘러싸 기 생각합니다.

미리 감사드립니다. 다음과 같은

enter image description here

코드 :

UITextView *myTextView = [[UITextView alloc]initWithFrame:CGRectMake(10, 10, 520, 220)]; 
myTextView.textColor = [UIColor blackColor];  
myTextView.font = [UIFont systemFontOfSize:20]; 
myTextView.layer.cornerRadius = 5; 
myTextView.delegate = self; 
myTextView.text = @"long text should some like http://stackoverflow.com/posts/11200726/edit"; 

[self.view addSubview:myTextView]; 
[myTextView release]; 

RESOVLED. viewDidLoad 메서드에서 다음 코드를 추가하십시오.

CGRect tempFrame = myTextView.frame; 
[myTextView setFrame:CGRectZero]; 
[myTextView setFrame:tempFrame]; 
+0

UITextView 코드를 표시 할 수 있습니까? 감사. – pasawaya

+0

코드를 추가했습니다. 그냥/init을 할당 한 다음 설정하고 해제하십시오. 여기에는 다른 것들이 없습니다. –

+0

수정 내용이 적용됩니다. 짧은 텍스트에도 동일한 문제가 있었으므로이 문제는 단어 줄 바꿈과 관련이 없다고 생각합니다. FYI [myTextView setNeedsDisplay] 또는 [myTextView setNeedsLayout] 호출은 해결되지 않지만 프레임을 변경하면 해결됩니다. –

답변

0

텍스트 색상이 검정색입니까? 또한 이미지가 뷰 계층 구조의 textView 뒤에 있는지 확인하십시오. TextView는 자동으로 단어 줄 바꿈을 처리합니다.

+0

예, 검은 색입니다. 여기에 이미지가 없습니다. –

0

이 경우 modelViewController가 표시되기 전에 viewDidLoad가 호출되는 것 같습니다.

  • modalViewController가 표시된 후에 텍스트를 설정하십시오.
  • 또한 작동하지 않으면 모델을 표시 한 후 텍스트를 명시 적으로 설정하는 메소드를 호출하십시오.
+0

viewDidAppear에서 텍스트를 설정하려고했지만 작동하지 않습니다. –

0

보기 계층 구조를 확인하십시오. 해당 뷰 위에 다른 textView를 추가했을 수 있습니다.

0

textView의 배경색을 변경해보십시오. 거기에 UITextView가 추가되어 나타나야합니다. 그리고 UITextView 위에 다른 뷰를 하위 뷰로 추가하지 않도록하십시오. textColor가 검은 색이면 표시해야합니다. 속성을 변경하지 않으면 자동으로 wordwrap이 수행됩니다. 추가 된 경우 XIB의 속성 설정을 확인하고 프로그래밍 방식으로 추가하는 경우 plz가 코드를 표시합니다.

self.view 

최고

self.view = [[[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds] autorelease]; 

에서이 코드 줄을 추가 시도하고 도움이되지 않을 경우,이 코드 라인을

myTextView.layer.cornerRadius = 5; 
+0

코드를 추가했습니다. 그냥/init을 할당 한 다음 설정하고 해제하십시오. 여기에는 다른 것들이 없습니다. –

0

나는 문제에서 생각 , 자신의 클래스에, MyUITextView : UITextView라고합시다.

하는

함께 오프 스크린 초기화 [MyUITextView ALLOC] initWithFrame : CGRectZero를] MyUITextView에서

메소드

을 대체

- (무효) willMoveToWindow (UIWindow *) newWindow

에서 self.frame을 적절한 값으로 설정하십시오.

이것은 나를 위해 일했습니다!

5

서브 클래스 UITextView를 제거하려고 :

+0

같은 문제가 있습니까? 어쩌면, 그냥 프레임을 재설정, 나는 이것을 시도합니다. 감사. –

+1

그냥 viewDidLoad 메서드에서 프레임을 다시 설정합니다. 텍스트 뷰를 서브 클래스 화하지 않습니다. 그리고, 그것은 작동합니다! 감사! –

관련 문제