2015-10-07 58 views
0

我有一個文本應放置在圖像上。現在圖像覆蓋文字,任何不可見的文字。我認爲這是顯示器的優先事項,但沒有找到它們。告訴我如何指定文本應該畫在圖片上,而不是反過來。文本在單元格中的圖像

enter image description here

enter image description here

調試視圖 enter image description here

+1

嘗試移動上方的層次結構的文本字段中的圖像,否則從層次結構刪除文本標籤,並再次把它放在圖像上! –

+0

@ Mr.T這是不可能的,圖片仍然放在文本之上。 – user2759544

+1

嘗試將子視圖帶到前面[parentView bringSubviewToFront:childView]; – George

回答

3

事情出現在導航欄(第二截圖)的順序是它們在繪製順序。下部向下它們在以後他們被繪製。因此,目前您的圖片視圖將位於您的文字(以及其他所有內容)之後。

這實際上是它在界面生成器中顯示的內容,因爲您可以看到文本。

TBH,您的AutoLayout約束看起來有點懷疑給我。我懷疑他們正在將標籤推離屏幕。我真的不認爲你想要這樣的限制。你不需要一個高度來開始,如果你想要標籤居中,那麼給它一箇中心約束而不是一個主導約束。

究竟是什麼給你的印象是圖像在你的文字?你有沒有在模擬器中試過視圖調試器?

+0

Y,你是對的。領先優勢+71應該是罪魁禍首! OP應該刪除前導約束或centre.X約束 –

+0

我更新了照片。在我看來,這是背後的文字,因爲我沒有在日誌中看到它,並且沒有因爲受到限制而出現任何錯誤。我改變了層次結構改變的限制,但我找不到答案( – user2759544

+0

在Xcode中使用View Debugger。https://developer.apple.com/library/ios/recipes/xcode_help-debugger/using_view_debugger/using_view_debugger.html Just just because你不能看到文本並不意味着它在圖像背後,視圖調試器會給你一個三維的屏幕視圖,所以你可以找到文本的位置,我懷疑這些限制正在將它推到屏幕外面 – Fogmeister

0

你可以調用bringSubviewToFront方法代碼[self.view bringSubviewToFront:self.label];

+0

從Interface Builder導航器中,文本已經在圖像前面。 – Fogmeister

-1

我找到了解決方案 - 模式=看點飛度

+0

我很抱歉地說,但那絕對是垃圾。就像我在我的答案(幾小時前)的評論中解釋的那樣,Interface Builder中出現了一個錯誤。 'mode = Aspect Fit'與文字或圖片無關。這與圖像的大小和裁剪方式有關。我發現有時候Interface Builder顯示的順序不正確。改變周圍的觀點修復它。 – Fogmeister

+0

就像洗牌視圖一樣,修復bug也會改變像內容模式這樣的屬性也可能修復bug。該模式與正在修復的內容無關。 – Fogmeister

+0

@Fogmeister對不起,我喜歡你的答案 – user2759544

相關問題