2011-12-06 2 views
3

저는 iOS 개발에 익숙하지 않으므로 누군가에게 쉬운 질문 일 수 있습니다. 나는 scrollview (다른 방법, UIScrollView, UITableView, UITableViewController 시도)를 만들 때마다 맨 아래로 스크롤 할 때마다 맨 위로 자동으로 스크롤됩니다. 왜 이런 일이 생길까요?iOS 스크롤 뷰 사용 안 함 자동 스크롤 위로

나는 "scrollsToTop"이 어떤 사람을 맨 위로 스크롤하는 것을 듣고 있지만 NO로 설정되어 있으므로 그렇게해서는 안된다는 것을 이해합니다. "pagingEnabled"는 YES 및 NO로 테스트되었지만 영향을 미치지는 않습니다.

UITableViewDelegate를 구현하고 scrollViewShouldSrollToTop 함수를 재정의하고 NO를 반환하지만 tableView의 대리자로 설정되어 있어도 함수가 호출되지 않습니다.

@interface Scroller : NSObject<UITableViewDelegate> 

@implementation 
- (BOOL)scrollViewShouldScrollToTop:(UIScrollView)scrollView {return NO;} 

// Did finish launching application 
tableView = [[UITableView alloc] initWithFrame:tableRect style:UITableViewStyleGrouped]; 
self->tableView.pagingEnabled = NO; 
tableView.scrollsToTop = NO; 
[tableView setScrollsToTop:NO]; 
static Scroller s = [[Scroller alloc] init]; 
tableView.delegate = s; 

서식을 염려하지 마십시오. 그것은 모두 엉망입니다. tableView는 응용 프로그램 대리인에 속하며 ..didFinishLaunchingWithOptions : ... 함수에서 호출됩니다. Scroll 함수 "scrollViewShouldScrollToTop"에 중단 점이 있지만 결코 충돌하지 않습니다.

+0

언제 다시 스크롤합니까? 지체가 있습니까? 아니면 즉시 되돌아옵니다? –

+0

즉시 튀어 나옵니다. 내가 스크린을 놓을 때, 그것은 바로 위로 튀어 오른다. –

답변

1

UITableView 대신 UIScrollView를 사용하고 contentSize를보기 프레임보다 큰 값으로 설정 한 다음 작동합니다. 여전히 UITableView 문제가 무엇인지 모르겠다.

4

상단 바 (검은 색 막대)를 탭하면 자동으로 상단으로 스크롤 될 수 있습니다. 충분하지 않은 항목이있는 경우 UITableView의 모든 높이를 채우기 위해

[yourScrollView].scrollsToTop = NO;

이이 tableView 또는 scrollView

+0

죄송합니다, 저를 위해 작동하지 않습니다. NO로 설정되지만 아무 것도 변경되지 않습니다. 또한 self -> [myScrollView] .scrollsToTop = NO 및 [[myScrollView] setScrollsToTop : NO]를 시도했습니다. 대표단과 뭔가가있을 수 있습니까? 대리자 속성에는 아무 것도 할당되지 않습니다. –

+1

일부 코드 나 스크린 샷을 보여줄 수 있습니까? 어두운 방에서 땡땡이에 다트를 던지기가 어렵습니다 ... –

+0

전체 앱에서이 기능을 사용 중지 할 수있는 방법이 있습니까? –

0

에 적용해야 - - 어떤 경우에는 해당 기능을 사용하지 시도 할 수 있습니다 그것은 때마다 다시 스크롤 . UIScrollView의 contentSize 속성을 스크롤 할 수 있도록 설정해야합니다.

사용자가 상태 표시 줄을 탭하면 이전에 스크롤해야합니다. 그러나 나는 그것이 당신의 문제가 아니라는 것을 이해합니다.

+0

맨 위로 스크롤하는 것에 대한 귀하의 권리는 제 문제가 아니라고 생각합니다. 지금은 UIButtons로 tableView를 채우고 윈도우가 보여줄 수있는 버튼이 더 있습니다 (수직으로 6 개 보여주고 12 개가 있습니다). contentSize 설정을 시도했지만 아무 것도 변경하지 않았습니다. [tableView addSubView : button]을 수행하여 버튼을 추가합니다. 나는 또한 [tableView insertSubview : button atIndex : 0]을 시도했다. 어쩌면 이것이 문제 일 수 있습니다. 버튼은 하위보기가 아니라 항목/객체입니까? 하지만 tableView 물건을 추가하는 다른 기능을 찾을 수 없습니다. –

0

스크롤 뷰의 튀는 속성을 비활성화해야 Inrterface builder에서 NO로 설정해야합니다.

관련 문제