0

タコスでいっぱいの UIScrollView があります。https://github.com/samvermette/SVPullToRefreshを介して、pull-to-refresh ハンドラーを接続しました。

uiscrollview を拡張し、次のメソッドを公開します。

[scrollview addInfiniteScrollingWithActionHandler:^{
    // Get me more tacos
}];

InfiniteScrolling がトリガーされると、スクロールビューのサブビューとデータ配列を (意図的に) クリアし、新しいセットに置き換えます。初めてでもうまくいきます。ただし、さらにタコスを読み込もうとするとクラッシュします。

私は得る:

-[SVInfiniteScrollingView retain]: message sent to deallocated instance 0x1e5db5d0

驚くことではありませんが、UIScrollview にサブビューを 1 つ残せば、すべて正常に動作します。

質問:どうすればこれを修正できますか?

次のような強力なポインターを使用してプロパティを宣言することを考えました。

@property (strong, nonatomic) IBOutlet tacoScroller *tacoScroller;

しかし、保持サイクルが心配で、それも機能しません。

何か助けていただければ幸いです。おそらく、基本的なものが欠けています。

編集:ARCを使用しています

4

3 に答える 3

1

UITableView を使用してタコスを表示します。このようにして、ビューを再利用し、メモリの浪費を回避します。また、リストを表示する最も簡単で便利な方法です。

于 2013-06-28T07:48:48.930 に答える