2015-07-09 24 views
5
  1. Dodaj NSTextView (ręcznie lub za pomocą narzędzia do tworzenia interfejsu).
  2. Set drawsBackground = false
  3. Dodaj podrzędny bezpośrednio do NSTextView

podrzędny nie będzie widoczny.Podgląd podrzędny NSTextView nie jest wyświetlany, gdy drawsBackground = false

Jednakże, jeśli dodaję inne wyekspozycje do tego samego poziomu, co na przykład NSScrollView, pojawi się pierwszy widok podrzędny.

Oto przykład projekt XCode: https://www.dropbox.com/s/inz30bq9xzdw0g5/TestTextSubviews.zip?dl=0

W kodzie źródłowym jeśli odkomentowaniu to linie:

// Najpierw BG2 = BgView (ramka: NSRect (X: 105, r: 105, szerokość : 100, wysokość: 100)) // window.contentView.addSubview (bg2)

wyświetli się także pierwszy widok podrzędny.

Odpowiedz

0

Nie znam dokładnego powodu, ale podejrzewam, że jest to kwestia hierarchii widoków. Stworzyłem nowy projekt z szablonu aplikacji kakao, dodano nstextview, a następnie dodałem 1, a następnie 2 z Twoich subviews - wydaje się działać zgodnie z przeznaczeniem. Konfiguracja szablonów kakao z kontrolerem okien i kontrolerem widoku, więc może to poprawnie sortuje dziwność hierarchii widoku, która nie jest oczywista z bezpośredniego dodawania widoku do okna w końcówce - Oto przykładowy projekt - https://www.dropbox.com/s/sef54sc2pgdws7f/NSTextViewAddSubviews.zip?dl=0

(NB: Aktualnie jestem w wersji beta Xcode 7, ale nie sądzę, żeby to miało jakikolwiek wpływ)