8

無限スクロール カレンダーを実装しています。私の問題は、現在の月をナビゲーション バーのタイトルとして設定し、スクロール中に更新する必要があることです。セクション ヘッダー ビューを渡すと、ナビゲーション バーでタイトルが更新されます。

考えられる解決策は、呼び出されたメソッドでビュー タイトルを設定して- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath、新しいセクション ヘッダーを計算するときにタイトルも更新することです。これの問題は、新しいセクションがページの下部にあるときにタイトルが変わることです。

現在、セクション ヘッダーをタイトルとして表示していますが、最適ではありません

UICollectionViewユーザーがスクロールした後の「現在のセクション」を知る方法はありますか? または、現在のソリューションを改善する方法を考えてもらえますか?

この投稿の読者を支援するために、この質問に対する独自のサンプル コードをこのGitHub リポジトリに投稿しました。

4

4 に答える 4

0

メソッドの行の下を変更しますviewForSupplementaryElementOfKind

self.title = [df stringFromDate:[self dateForFirstDayInSection:indexPath.section]];

これに:

    if(![[self dateForFirstDayInSection:indexPath.section-1] isKindOfClass:[NSNull class]]){
        self.title = [df stringFromDate:[self dateForFirstDayInSection:indexPath.section-1]];
}

それがあなたを助けることを願っています。

于 2015-02-16T09:44:57.870 に答える