2015-07-22 130 views
2

我有一個要求,我想爲iPhone顯示不同的UI & iPad,所以不是使用不同的故事板,我使用了不同的尺寸classes.I在iPhone上有幾個標籤。iPhone & iPad.標籤的值是在運行時設置的我已經用這個插座。我有一個單一的視圖控制器的大小類,以便我可以在iOS上的不同屏幕之間切換。現在,我可以連接任何一個設備只有一個插座。如果我連接插座的iPhone然後IPad插座不能正常工作&反之亦然。所以請給我打電話,我怎樣才能用不同的尺寸等級?如何使用相同的出口在ios中的不同大小類別?

+0

添加UILabel大小類heightAny * widthAny –

+0

看到我不想使用通用大小類。我想使用不同大小的類。@ sheshnath – Techiee

+0

然後,我認爲爲每個類添加標籤並連接到相同的插座 –

回答

0

我無法將此添加到評論中,因此我將此張貼爲答案。

讀什麼我可以斷定的評論是:

您應該使用一個通用類Any Width, Any Height)。

Size classesInterface Builder的一項功能,它負責呈現您的應用程序的view。雖然UILabel的值由Model(實際值)和Controller(ViewController.m)管理。所以喜歡與否,你必須將控制器帶入圖片。

在發佈這個答案之前,我嘗試將兩個不同的標籤連接到同一個插座,並使用viewWithTag:方法將插座設置爲正確的視圖,具體取決於應用運行的設備,但它不起作用。

下面是我用的片段,沒有工作

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 

     _label = (UILabel *)[self.view viewWithTag:2]; 
    } 
    else{ 
     _label = (UILabel *)[self.view viewWithTag:1]; 
    } 

仍@sheshnath說,沒有什麼錯在使用通用的尺寸級別。

2

今天我遇到了同樣的問題,我找到了解決辦法。在屬性檢查器中,我們可以選擇一個標籤被安裝在多個大小類,象下面這樣:

Install size classes

則標籤將出現在你所安裝的大小類,你不必增加新每個尺寸類別的標籤。當您使用標籤創建/連接插座時,插座將在安裝的尺寸等級中共享。

相關問題