2

UIScrollViewが特定のポイントにプルダウンされたときにアクションを実行しようとしています。これは私が今持っているものです:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    if (scrollView.contentOffset.y == -100.0) {
        NSLog(@"Trigger");

        [scrollView setContentOffset:CGPointMake(0.0, -200.0) animated:YES];
    }
}

この種の作業は、タッチイベントを終了してから、UIScrollViewが元の位置に戻るまで機能します。これを解決する方法はありますか?

4

2 に答える 2

0

scrollViewはピクセルごとにスクロールバックしないため、単一ピクセルではなく範囲を確認してください。以下のようにチェックを追加-

if (scrollView.contentOffset.y < -100.0 && scrollView.contentOffset.y > -110.0)
{
     //call your method
}
于 2013-01-14T03:05:25.630 に答える
0

ソースが見つかりませんでしたスクロールビューの位置をスクロールして保持するためのコードは次のとおりです。

スクロールビューを設定して保持したいビューについては、次のようにします..

Viewcontroller.h
@property (弱い、非アトミック) IBOutlet UIScrollView *scrollView;// インターフェース ビルダーから @property (弱い、非アトミック) IBOutlet UIView *contentView;// インターフェースから

最後に、インターフェイス階層は次のようになります。view-->scrollView-->contentView-->view Contents viewController.m

-(void)viewDidLayoutSubviews

{

[super viewDidLayoutSubviews];

[self.scrollView layoutIfNeeded];

self.scrollView.contentSize = self.contentView.bounds.size;

}

//リターンキーが押されたときにスクロールビューを閉じるには..このコードを好きな場所に配置できます

  • (BOOL)textFieldShouldReturn:(UITextField *)textField {

    self.scrollView.contentSize = self.view.frame.size;

    はいを返します。

}

詳細については、これを確認してください.. http://spin.atomicobject.com/2014/03/05/uiscrollview-autolayout-ios/ これが誰かの役に立てば幸いです..

于 2015-04-17T07:17:53.080 に答える