4

私はサブクラス化NSViewし、次のような別のビューに追加しました:

clockT = [[CustomView alloc]initWithFrame:NSMakeRect(0, 0, 156, 155)]; 
[holderView addSubview:clockT];   
[clockT setNeedsDisplay:YES];
clockT.tZone = @"Canada/Yukon";  

ビューが作成および追加されましたholderViewが、表示されません。ウィンドウのサイズ変更中に表示されます。注:透明なウィンドウを使用しています。

4

3 に答える 3

2

その際に役立つサンプル アプリケーションがApple Developer Siteにあります。このサンプルでは、​​カスタム形状、タイトル バーなし、および透明なコンテンツを持つウィンドウを作成する方法を示します。

于 2013-11-13T09:16:34.857 に答える
1

コードをもっと見ないと、何が起こっているのかわかりません。このスレッドには、役立つアドバイスがいくつかあります: https://stackoverflow.com/a/1503828/171933

メインスレッドからこれを呼び出していない可能性がありますか? ビューにカスタムdrawRect:実装がありますか? そこにブレークポイントを置いて、渡された rect のサイズを確認できますか? サイズは合っていますか?

たとえば、背景色が緑色のバニラ NSView を作成し、それをホルダー ビューに追加するとどうなるでしょうか。それは動作しますか?もしそうなら、あなたの実装に何か問題がありますCustomView

さらにコードを見ないと、問題を特定するのは困難です。

于 2013-11-15T13:39:21.910 に答える
1

ですから、透明なビューを使用していて、他の人には見えませんでした。ウィンドウをフルサイズで作成し、代わりにオブジェクトとディスプレイを作成して、ホルダービューの幅を増やします。

于 2013-11-13T09:03:01.983 に答える