問題タブ [uicollectionviewcell]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - UICollectionView: 再利用されたアイテムで異なるサイズのアイテムが計算されない
宣言するさまざまなアイテムサイズのコレクションビューがあります
アイテム内のセルが再利用されている場合、 でcollectionView:cellForItemAtIndexPath:
指定されたサイズではなく、再利用されたアイテムのサイズでレンダリングされますsizeForItemAtIndexPath:
。
何か案は?
objective-c - 通常のUIView内でのUICollectionViewの使用
の半分を使用したい通常のビューを作成しましたUICollectionView
。ビューにドラッグしてサイズを変更しUICollectionView
ました。新しいビューをドラッグしてUICollectionViewCell
デザインしました(すべてXCodeのレイアウトビルダーで)。
UICollectionViewCell
クラスが呼び出されるImageCell
ので、イベントviewDidLoad
でセルクラスをUICollectionView
:に登録しました。
これは、画像をコレクションビューセルにロードしようとする方法です。
}
のCellImageView
です。IBOutlet
_ UIImageView
同じ画像を読み込もうとしていることはわかっています。これはテスト専用です。画像はSupportingFilesフォルダーに保存されます。
問題は、私が得るのは黒い画面だけです。画像は表示されません。通常のImageViewでも同じことをしようとしたので、画像が正しく読み込まれていることがわかりました。
ios - UICollectionViewのセルが消える
何が起こっていますか
現在、UICollectionViews
内で2 つを使用するアプリケーションがありますUITableView
。このようにして、Pulse News のようなアプリケーションを作成します。これに関する私の問題は、6行目と11行目が完全に消えて、セルであるべき場所に空白が残ることがあることです。すべてのセルがこのようなものであったとしても (そして、このようにして、私が正しく行っていないと仮定することができます)、実際には気にしませんが、問題は、それらの特定のセルで起こっていることです。
私の理論
6 行目と 11 行目はスクロールを開始したときに表示される行なので、デフォルトでは 5 つのセルが表示され、最初の水平スクロールを行うと 6 行目が表示されます (空白のスペースがある場合があります)。
私が持っているもの
私が現時点で行っている唯一のことはこれです:
でviewDidLoad
。そして、セルの作成について:
ですから、ここで起こっていることは何もありません。データ ソース (ダミーの JSON ファイル) に何か問題があったと思いますが、正常に動作し、セルが表示される場合があるため、その部分からは問題ないと思います。
だから私の「質問」:何が起こっているのか知っている人はいますか?iOS のバグだとは言いたくないのですが、他に思いつきません。
編集 1.0
驚くべき部分は、この方法です
[0,5]を計算せずに[0,4]からindexPath
[0,6]になります。iOSでこれが実際に起こっているのを初めて見ました。
編集 2.0
セルを作成する方法を切り替えました。デキューする代わりに、古い方法を使用しています。
相変わらず悲しい結果です。
ios - UICollectionView でセルの再利用を無効にする
アプリで UICollectionView を個々のセルにジェスチャ認識機能を使用して使用しています。これにより、ユーザーはセルを「スライドして開く」ことができ、その下にあるより多くのデータを表示できます。
問題は、CollectionView のデータを頻繁に再読み込みしていることです。アプリは約 3 秒ごとに更新を受信するためです。これにより、セルのスライド中にコレクションビュー セルが再利用されるという望ましくない動作が発生します。
ユーザーがセルのスライドを開始すると、アプリは更新の reloadData を受け取り、代わりに別のセルがジェスチャの受信を開始し、スライドを開始します。
スライドが発生している間、アプリの更新を無効にしようとしましたが、アプリ内で他の複雑さを引き起こしたので、セルの再利用を無効にする方法があるかどうか疑問に思っています (最大 20 セルしかないので、私はしません。パフォーマンスが大幅に低下するとは思わない)。
ありがとうございました!
ios - メソッドが終了したらコードを実行する方法はありますか?
メソッドが完成したらコードを開始したい。サーバーから画像の配列をロードし、それらの画像を作成したセルのImageViewに追加するUICollectionViewがあります。これは、私のコードです。
したがって、メソッド[objectiveGov arrayImages];
が終了したら、を実行する必要がありmyCell.insightImageView.image
ます。これを行う方法はありますか?メソッドの最後に投稿するNSNotificationCenterを作成しようとしましたが、UICollectionViewが割り当てられたときにUICollectionViewCellメソッドが開始されるため、これは機能しませんでした。何か案は?ありがとう!
ArrayImagesメソッドコードの編集:
objective-c - どのコレクション ビュー セルが特定のポイントにあるかを知る方法はありますか?
CGPoint があり、コレクション ビューのどのセルに現在そのポイントが含まれているかを知りたいです。これを行う簡単な方法はありますか、それとも独自のメソッドを作成する必要がありますか?
iphone - nibを使用したUICollectionViewCellの定義
私が正しく理解していれば、aのコンテンツはUICollectionViewCell
そのcontentView
プロパティ内にあり、背景はに入るはずbackgroundView
です。
それでも、UICollectionViewCell
をInterface Builderにドラッグすると、contentView
またはについての言及はありませんbackgroundView
。contentView
サブビューを追加すると、またはではなく、セル全体が親になりbackgroundView
ます。
UICollectionViewCell
では、IBでを定義する正しい方法は何ですか?
objective-c - UICollectionViewCell の状態を保存する方法
の状態を保存する方法を教えてくださいUICollectionViewCell
。例: 私は間違ったセルを返したUIWebView
ときにセルを持っています。ありがとう!dequeueReusableCellWithReuseIdentifier:forIndexPath:
indexPath
UIWebView
indexPath
この方法を使用すると、セルがcell.isShowed == YES
間違って返されますindexPath
。cell.isShowed
しかし、UIWebView のコンテンツを使用しないと、すべての表示セルでリロードされます。英語で申し訳ありません:)
objective-c - セクション内の項目数として整数を返すエラー
ストーリーボード、タブ バー、XCode 4.5 を使用した iPad アプリがあります。私のシーンの 1 つは、左上の象限に UITableView があり、右上の象限にラベルと UITextBoxes があります。
2 番目のタブをクリックすると、上記のシーンに移動します。これはコードです:
これはインターフェース定義です:
これはエラーです:
*キャッチされない例外 'NSInvalidArgumentException' によりアプリを終了します。理由: '-[UIView collectionView:numberOfItemsInSection:]: 認識されないセレクターがインスタンス 0x7d925b0 に送信されました'
ご覧のとおり、numberOfSectionsInCollectionView にも同じコードを使用しました。SO と Google を調査しましたが、該当するものは何も見つかりませんでした。
私は何を間違っていますか?
ios - NSArray は配列内のすべてのオブジェクトをロードしていませんか?
現在、UICollectionViewCell をサブクラス化しており、配列内にセルをロードしています (以下は、collectionViewCell.m 内のコードです)。
すべてが正常に読み込まれ、メソッドの戻り値が表示されます- (NSInteger) collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
。これは 11 です。しかし、cellArray の開始プロセスをログに記録すると、次のようになります。
したがって、セル配列は、配列がセルを追加する回数をカウントしていますが、何らかの理由で最大6回までしかありません。奇妙なことは; 11個のアイテムすべてがロードされますが、NSArrayは11個すべてがロードされたことを記録せず、6で停止するだけで面倒です...これを修正するいくつかの異なる方法を試しましたが、機能していないようで、私を怒らせる!他の誰かがこの問題に遭遇したとは思いませんか?
念のため rootController.m collectionview コードを追加しますが、すべてが適切な方法でリンクされるため、これは問題になりません。