2011-12-06 12 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

に適用する必要があります - それはすべての時間をバックにスクロールします。 contentSizeプロパティをUIScrollViewに設定してスクロール可能にする必要があります。

ユーザーがステータスバーをタップすると、前述のトップへスクロールする必要があります。しかし、私はそれがあなたの問題ではないことを理解する。

+0

私はトップへのスクロールについてのあなたの権利は私の問題ではないと思います。今は、UIButtonsでtableViewを塗りつぶし、さらにボタンが表示され、ウィンドウが表示されます(垂直に6個表示され、12個あります)。 contentSizeを設定しようとしましたが、何も変更されませんでした。 [tableView addSubView:button]を実行してボタンを追加しています。私も[tableView insertSubview:button atIndex:0]しようとしました。たぶんこれが問題です。ボタンはサブビューではなくアイテム/オブジェクトです。しかし、私はtableViewにものを追加するための他の関数を見つけることができません。 –

0

スクロールビューのバウンスプロパティを無効にする必要があります。これは、Inrterface BuilderでNOに設定してください。