2012-10-03 18 views
14

テーブルの上部にUIRefreshControlがあります。風景のUIRefreshControl

画面が横長です。

ランドスケープに余裕がないため、リフレッシュを引き起こすために十分にプルダウンできません。プルダウンしなければならない量を調整する方法はありますか?

+0

を使用してその垂直を有効にする必要があります。 OS X 10.8.2のXcode 4.5で再現することができません – Zelko

+4

私のアプリには、ナビゲーションバーとテーブル上部のUISearchBarがありますので、引っ張る余裕はありません – cannyboy

+0

ナビゲーションバーと検索のみがある場合このような音は期待どおりに機能するはずです。 Mailアプリには検索バーとナビゲーションバーがあり、そこではうまくいきます。あなたの画面にはほかに何がありますか? – Daniel

答えて

10

あなたが引っ張らなければならない程度を調整する方法は、UITableViewの高さを変更することです。 UIRefreshControlはtableViewの高さに比例して最大歪み高さを調整します。 tableViewの高さを変更できない場合は、状況の詳細をfile a bugでお知らせください。将来のiOSリリースで対応されることを願っています。

また、もっと素早くプルダウンしてみましたか?

+3

を参照してください。テーブルビューの高さの調整全く効果がないように見える。 – cannyboy

+0

@cannyboyとても面白いです。詳細にバグを報告してください。ありがとう! :) –

+0

ああ、tableviewの高さは変更しない "tableViewの高さに比例して最大のひずみの高さ"、私はバグを提出 – ugiflezet

10

テーブルビューはUIScrollViewの単なるサブクラスであることに注意してください。あなたのコントローラーで、scrollViewDidScrollメソッドを実装し、-beginRefreshingをあなたのUIRefreshControlに以下のように呼び出します。

しかし、リフレッシュ状態になる間のUIRefreshControlのアニメーションは、あなたが期待するほど滑らかではありません。しかし、それは動作します。

- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    if (scrollView.contentOffset.y < -98 && ![self.refresher isRefreshing]) { 
     [self.refresher beginRefreshing]; 
     //do all the work 
     [self.refresher endRefreshing]; 
    } 
} 
+0

良い回避策は今です。 –

+2

ScrollViewDidEndDraggingの中に入れたほうがいいですか? –

0

あなたcontentsizeは、高さがプルダウンには十分ではありませんしている場合、あなたはこの問題の根本的な原因を発見に非常に興味を持っself.collectionView.alwaysBounceVertical = YES;

関連する問題