iOSでは、NSTableView(UITableView)は、現在のビューに必要なセルのみを表示するという意味で遅延ロードされます。ユーザーが上下にスクロールすると、データソースからより多くの情報がロードされます。NSTableViewを遅延ロードする
OSXに類似したものはありますか?私は1000以上のレコードを持つNSTableViewを持っています(複数の列)が遅い読み込みを引き起こしているだけでなく、スクロールアップまたはスクロール時に遅れています。
可能であれば、この「怠惰な」読み込みは良い解決策ですか?または同じ行に沿った何か?
ありがとうございました。
P.S.ロードプロセスについて - 私は、データをロードするために、2つの通常の方法
-(id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
と
-(NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView
を使用しています。それらの中には、データを含む2つのコンボボックスがあり、 "ALL"と "ALL"を含むこれらの1000+レコードをロードすると、いくつかの変数をチェックするif文があります。コンボボックスが "ALL"でも "ALL"でもない場合は、2つのレコードだけが読み込まれます。
私は、レイジーロードが自動的に行われることを説明したので、XMLファイルからデータをロードしているので、処理時間が長くなる可能性があります。
XMLファイルからのデータを実行時にNSDictionaryにロードし、必要に応じて使用できるようにするために、情報を実際に表示する必要があるときにロード時間を避けることができます。
あなたはどう思いますか?ありがとう!
'NSTableView'コンテンツは実際に遅延読み込みされています。データソースまたはバインディングを通じてデータを提供していますか?データソースを通じて、 'objectValueForTableColumn:row:'の実装を投稿してください。バインディングを使用する場合は、アクセサを見て、既存のivarを返すより複雑な処理をするかどうかを確認してください。 – Dondragmer
@Dondragmerはまさに正しいです。 'NSTableView'が遅れてロードされない唯一の理由は、何か間違ってしまった場合です。テーブルビューをどのように作成するかについての詳細が必要です。 –
ありがとうございました!私はP.S.を追加しました。さらに詳しい情報があります。 – Kevin