透明なnStableView
-
13-10-2019 - |
質問
カスタマイズしたいです NSTableView
. 。私の全体的な要件は次のようです:
- 各行には1つの画像といくつかのテキストがあります。画像とテキストは異なる場合があります。
- 一部のセルには画像がない場合があります。
- 行の高さは、外部要因に依存します。
- セルは背景を描くべきではありません、それは
NSTableView
バックグラウンド。
これまでのところ、いくつかのテキストで透明なセルを描くことができます。私はグーグルで検索し、各セルをカスタマイズする必要があることがわかりました。この質問があります:2つの列を維持する必要がありますか、それとも左側に1つの画像とそれに隣接するテキストを持っているのか、1つの列を大丈夫にする必要がありますか?
また、2つの方法をオーバーライドする必要があることも理解しています。
- (void) drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView
それで、各セルについて、私はセルを描画/構築する必要があります - 誰かが私を導くことができますか?私は正しい方向に進んでいますか?上記のアプローチで動的な高さで透明な背景を達成できますか?
解決
各行には1つの画像といくつかのテキストがあります。
したがって、2つの列 - 1つは画像セル、もう1つはテキストフィールドセルを使用しています。
画像とテキストは異なる可能性があります、
私はそう願っています。
一部のセルには画像がない場合があります、
問題ない。
行の高さは、外部要因に依存します。
テーブルビューのデリゲートになると、列の高さがどうあるべきかを尋ねます。
セルは背景を描くべきではありません、
あなたがそうするように設定しない限り、それはそうではありません。
全体として、nstableviewの背景を表示する必要があります。
とにかくテーブルビューは独自の背景を描き、IBの検査官に設定できます。テーブルビューが背景を描かないようにしたい場合は、その背景色を明確な色に設定します。
これにはカスタムセルは必要ありません。
所属していません StackOverflow