2014-04-16 2 views
1

앱을 만들고 있는데 이용 약관 페이지를 추가하고 싶기 때문에 한 화면에 많은 텍스트를 스크롤 할 수있는 창을 갖고 싶습니다. 내가 본 두 클래스는 UIScrollView와 UITextView입니다. UIScrollView는 스크롤하기가 쉽지만 각 레이블을 수동으로 만들지 않고 서식을 지정하고 적절한 위치에보기에 추가하지 않고도 필요한 모든 서식있는 텍스트를 추가하는 방법을 잘 모르겠습니다. 나는 UITextView (non-editable, non-selectable)를 만들었는데, 필자가 필요로하는 속성을 가진 텍스트로 만들었지 만 창 경계를 넘어서 스크롤 할 수 없었다. (즉, 아래쪽으로 스크롤 할 수 없었다. 테두리의 크기를 변경하고 프레임을 화면 자체보다 훨씬 크게 변경 한 후에도).iOS7 앱의 한 화면에 많은 양의 서식있는 텍스트를 표시하는 가장 좋은 방법은 무엇입니까?

_scrollView.scrollEnabled = YES; 
_scrollView.contentSize = CGSizeMake(320, 2000); 
[_textView removeFromSuperview]; 
[_scrollView addSubview:_textView]; 

을하지만 텍스트 뷰는 스크롤 뷰에 등장하지 : 나는 또한 (텍스트 뷰에 스크롤 해제 후) 이런 일에, 둘의 합병을 시도했다. 많은 사람들이 설명하는 페이지와 비슷한 페이지를 가지고 있기 때문에 이것이 다른 사람들이 겪은 문제라고 확신합니다. 누군가가 UIScrollView를 사용하지 않고 수동으로 추가 할 텍스트의 각 부분에 대한 레이블을 만들지 않고이를 수행 할 수있는 방법을 찾을 수 있기를 바랍니다.

+0

더 많은 개인적인 취향. 나는 항상 UITextView를 자체적으로 사용했지만 스크롤러가 내장되어있다. – logixologist

+0

"화면의 아래쪽 경계까지 스크롤 할 수 없었습니다."나는 그것이 무엇을 의미하는지조차 알지 못합니다. UITextView는 사용자가 모든 텍스트를 볼 수 있도록 스크롤합니다. 뭐가 문제 야? – matt

+0

@matt 그게 내가 생각한거야,하지만 기본적으로 화면 하단에 충돌했을 때 단순히 스크롤을 멈 춥니 다. 이 텍스트는 여기서 분명히 계속 이어지지 만 스크롤바는 전체 화면의 크기이며 더 멀리 가게하지 않을 것입니다. –

답변

2

UITextViewUIScrollView에서 상속됩니다. 배수보기를 추가하지 않으려면 UIScrollView 안에 UITextView을 가질 필요가 없습니다. contentSize이 텍스트의 크기에 따라 자동으로 설정됩니다

UITextView *myTextView = [[UITextView alloc] initWithFrame:self.view.bounds]; 
myTextView.text = @"some large text"; 
myTextView.font = [UIFont fontWithName:@"Arial" size:20]; 
myTextView.scrollEnabled = YES; 
myTextView.editable = NO; 
[self.view addSubview:myTextView]; 

속성 :

이 같은 UIViewController에서 전체 화면을 소요 UITextView를 만들 수 있습니다. [myTextView sizeToFit] 메서드를 사용하여 UITextView의 텍스트 크기에 맞게 크기를 조정할 수도 있습니다.

0

세 번째 방법은 내부 html 페이지/파일로 UIWebview를로드하는 것입니다.

UITextview에 대해 - 화면/self.view의 경계 내에 맞도록 프레임 크기를 설정하십시오. 프레임 크기가 screen/view.frame보다 큰 경우 스크롤 할 수없는 등의 문제가 발생합니다. 텍스트 뷰에 관한 한 전체 텍스트가 이미 표시되어 있기 때문에 프레임의보기에 표시되지 않는 부분에만 표시되기 때문입니다. UITextview는 내용 크기가 자동으로 설정된 scrollview처럼 동작하므로 모든 텍스트가 스크롤하여 표시되어야합니다.

UIScrollviews - UITextview 토론과 마찬가지로 화면/self.view 범위 내에서 프레임 크기를 설정해야합니다. 콘텐츠 크기는 가장 큰 개체 (프레임 단위)를 수용 할만큼 충분히 커야합니다. 프레임보다 큰 UITextview를 UIScrollview 내부에 배치하려는 아이디어는 정상이며 작동해야합니다. 단순히 scrollview의 하위 뷰로 textview를 추가하십시오.

관련 문제