我對iOS開發很新,我有這個愚蠢的問題。我有一個64像素的圖片寬度。而iPhone 5模擬器的屏幕寬度爲320像素,在模擬器上它佔用屏幕寬度的20%。但我知道真正的iPhone屏幕寬度是640像素。這是否意味着我的照片會佔用屏幕寬度的10%?iPhone模擬器屏幕分辨率vs iPhone屏幕分辨率
0
A
回答
3
的Objective-C:
CGRect screenBounds = [[UIScreen mainScreen] bounds];
斯威夫特:
let screenBounds:CGRect = UIScreen.main.bounds
這會給你的整個屏幕在分辨率的點,所以它最典型的爲320x480,480x800爲年長的iPhone。即使iPhone 4具有更大的屏幕尺寸iOS仍然會給出320x480而不是640x960。
對於iPhone 6 +/7 +,它是414x736(天然界限:1242 * 2208)
對於iPhone 6/7,它是375x667(天然界限:750x1334)
你可以通過改變bounds
檢查 「原生界」 以nativeBounds
在上面的代碼
的Objective-C:
CGFloat screenScale = [[UIScreen mainScreen] scale];
斯威夫特:
let screenScale:CGFloat = UIScreen.main.scale
這會給你的屏幕比例。對於沒有視網膜顯示器的所有設備,這將返回1.0f,而Retina顯示設備將提供2.0f,iPhone 6 Plus(Retina HD)將提供3.0f。
現在,如果你想獲得像素寬度&高度的iOS設備屏幕,你只需要做一件簡單的事情。
CGSize screenSize = CGSizeMake(screenBounds.size.width * screenScale, screenBounds.size.height * screenScale);
通過乘以屏幕的比例可以得到實際的像素分辨率。
1
模擬器上的所有內容與設備上的外觀完全一致。否則,模擬器將是毫無意義的,你不這麼認爲嗎?
在所有iOS設備上,您需要區分個點和像素。你可以完成所有的計算和所有的圖形命令。 iPhone 5擁有320 x 568點。每個點使用2 x 2像素顯示,以獲得更好的圖像質量。但是如果你想畫一些覆蓋整個屏幕的東西,那就是320×568點,這就是你在軟件中使用的東西。 99.9%的時間,iOS爲您處理差異。
相關問題
- 1. iPad模擬器的屏幕分辨率
- 2. 屏幕分辨率
- 3. 屏幕分辨率
- 4. 屏幕分辨率
- 5. 屏幕分辨率
- 6. 屏幕分辨率
- 7. 屏幕分辨率
- 8. iPhone和iPad的屏幕分辨率
- 9. Iphone 5屏幕分辨率問題
- 10. 適合Web的Iphone屏幕分辨率
- 11. 在iphone中獲取屏幕分辨率
- 12. 什麼是iPhone屏幕分辨率?
- 13. iPhone 4,高分辨率屏幕支持
- 14. ios 6.0和iphone 5在模擬器中的屏幕分辨率
- 15. 在iPhone模擬器iPhone6的錯誤屏幕分辨率
- 16. Qt屏幕分辨率初始屏幕
- 17. 假屏幕分辨率
- 18. 更改屏幕分辨率
- 19. Android的屏幕分辨率
- 20. Nightmarejs屏幕分辨率
- 21. 屏幕分辨率低,xamarin
- 22. WPF和屏幕分辨率
- 23. Android的屏幕分辨率
- 24. C++的屏幕分辨率
- 25. c#winform屏幕分辨率
- 26. android屏幕分辨率
- 27. Android屏幕分辨率
- 28. 適應屏幕分辨率
- 29. 屏幕分辨率檢測
- 30. 獲取屏幕分辨率