EDIT:リンクされた返信で質問に答えられませんでした。私はまだこれに固執しています...Swift/CocoaのNSTableViewの動的行の高さ
私はチャットメッセージのために使用するテーブルを持っています。各メッセージは、テキストを含む可変サイズのボックスです。メッセージボックスのサイズに応じて、テーブルの行の高さを動的に変更する必要があります。
IBのサイズスタイルを「自動」にすると、すべての行が小さな高さになります。 iOSにはテーブルを自動的に拡大するUITableViewAutomaticDimensionがありますが、NSTableViewのようなものは見つかりません。 「
func tableView(_ tableView: NSTableView, heightOfRow row: Int) -> CGFloat
{
return 50 // ????
}
と私は(上記のセット高さ50への私のすべての行)を使用して、行の高さを設定することが、私はドン:
私が知っているには、次の関数を作成するためのオプションです私のボックス内のテキストのサイズに依存する方法を知っている。これを効率的に行うにはどうすればよいですか?
あなたの返信をありがとう!私の答えは、コーネルのポストに関するサンカスの精緻化の中にある。しかし、どちらもObjective-Cにあり、私はSwiftにそれらをどのように翻訳するのか苦労しています。 Swift版をここに回答として投稿する可能性はありますか? – SuddenMoustache
また、ウィンドウのサイズが変更されたとき、またはテーブルが再描画されたときだけ、Corbinの答えが行のサイズを変更しますか?後者は問題があります。なぜならユーザーがウィンドウを水平に縮小すると、メッセージは予想どおりに背が高くなり、薄くなるからです。 – SuddenMoustache