2

Tweetieのメッセージリストのように見えるビューが欲しいです(スクリーンショットを参照)(いいえ、Twitterクライアントにはなりませんが、似ています;)。そのためにどのCocoaビューを使用すべきかわかりません...私は最近iPhone用のものをほとんど書いています、そしてそこにはそのようなコントロール(UITableView)が1つしかありませんが、AppKitにはいくつかあります。NSTableViewまたはNSCollectionViewを使用する必要がありますか、それともここで他に適したものがありますか?

4

2 に答える 2

5

NSTableViewは、一般的な垂直リストに最適です。Tweetieは、カスタムのものを使用しているように見えます。標準のCocoaクラスはどれもそのようには見えません。

于 2010-02-05T22:24:21.937 に答える
2

更新:SDListViewを使用します-これは新しく、維持されているようです(Steven Degutisの「TheGist」Twitterクライアントの一部です)。そのクライアントで使用されているバージョンは、Tweetieのバージョンとほぼ同じです。とにかく剥ぎ取りたかった...

アップデート2(2014):10.7以降、NSTableViewでNSViewを使用できるようになったため、この回答全体が古くなっています。UITableViewのようなリストの場合は、ビューベースのNSTableViewsを使用するだけで、問題ありません。

-

わかりました、私は自分自身に答えます:このブログ投稿によると、私はNSTableViewを使用することができましたが、それはあまり良い考えではありません...:

Macの場合、NSTableViewがあります。これは、さまざまな履歴およびパフォーマンス関連の理由から、NSViewの代わりにNSCellオブジェクトを使用するコンポーネントの時代遅れのスラッグです。NSCellはカスタマイズが難しく、インタラクティブで魅力的なインターフェイスの生命線であるNSViewオブジェクトを(フープを飛び越えて不要な複雑さを導入せずに)含めることはできません。NSCell内のテキストスパン内のクリック可能なハイパーリンク?幸運を!ホバー効果とCoreAnimationの滑らかさ?そうだね!NSCellは蜃気楼のようなものです。遠くから見ると見栄えがしますが、近づいて個人的になると、そもそも見たことがないようになります。

Mac用のすべてのネイティブTwitterアプリケーションは、現在、タイムラインに対して異なることをしていると思います。Loren Brichterは基本的にTweetieのタイムラインを作成するためにUITableViewポートを作成し、StevenDegutisは最近TwitterアプリのNSCollectionViewベースのタイムラインに取り組んでいます。新しいEchofonベータタイムラインは、完全にカスタムのテキストとレイアウトマネージャーを備えたまったく異なるものであり、WebViewであるかのようにリンクにホバー効果を与えることができます。Beakについては、このエントリの詳細については説明しませんが、バックグラウンドでいくつかの凝ったキャッシュを備えた完全にカスタムのNSScrollViewであるとだけ言います。

その目的のために特別に作られたある種のカスタムオープンソース管理を見つけようと思います... http: //www.harmless.de/cocoa-code.phpのAMCollectionViewとhttp :/のSDListViewを検討しています。 /github.com/sdegutis/SDListView

于 2010-02-06T18:28:06.107 に答える