![](/img/trans.png)
[英]How do I make a UIWebView's content adjust to the iPhone screen size?
[英]How do I change UIWebView depending on screen size of iPhone?
我正在構建一個只是UIWebView的iPhone應用程序。 當我嘗試在手機上運行該應用程序時,在屏幕頂部和底部都出現了一個大的黑條。 我相信這是因為它已針對較小的屏幕進行了優化。 但是在我的iPhone 5上,它並不是最佳選擇。
如何根據iPhone的類型(屏幕尺寸)更改UIWebView的尺寸?
這是我的xib文件的屏幕截圖。
首先,向您的項目添加一個名為Default-568h@2x.png
的默認圖像。 這消除了iPhone 5上的黑條。然后,要更改每個屏幕的Web視圖大小,請在右窗格的界面生成器中,單擊標尺圖標,然后在窗格的左下方,更改設置,以便它看起來像這樣(假設自動布局已關閉)
如果您不使用IB,請執行@Dilip編寫的操作。
您可以做兩件事:
1)設置iPhone 5特定的默認(啟動)屏幕(克里斯列出的Default-568h@2x.png文件... +1給他)
和
2)使用自動版式,並確保您的Web視圖在窗口/容器視圖的頂部和底部邊緣之間的寬度為零。
您可以通過選中以下復選框在情節提要或XIB中將其打開:
根據設備大小更改您的網絡視圖大小。
- (void)viewDidLoad
{
CGRect screenBounds = [[UIScreen mainScreen] bounds];
if (screenBounds.size.height == 568) {
webView.frame= CGRectMake(yourX, yourY, yourWidth, yourHeight);
} else {
webView.frame= CGRectMake(yourX, yourY, yourWidth, yourHeight);
}
[super viewDidLoad];
}
而且您必須添加一個Default-568h@2x.png(640×1136),以便iphone知道此應用程序可以在iphone5上運行
為此,您必須在創建UIWebView時添加一個條件,
CGSize result = [[UIScreen mainScreen] bounds].size;
if(result.height == 480)
{
UIWebView *aWebView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
}
else if(result.height == 568)
{
UIWebView *aWebView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 568)];
}
此條件檢查屏幕尺寸。 希望這可以幫助 !! :)
查看其iPhone5是否
#define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES)
定義高度
#define iPhoneScreenHeight (([[UIScreen mainScreen] bounds].size.height-568)?480:568)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.