2014-10-14 3 views
1

Windows Phone 8 앱이 있습니다. 풀 HD 폰을 감지하고 싶습니다. 이 기사를 읽었습니다. http://msdn.microsoft.com/library/windows/apps/jj206974(v=vs.105).aspxWindows Phone 8에서 Full HD 감지

scaleFactor 720p 및 1080p는 동일한 범주에 속합니다. 나는 그것들을 구별하고 싶다.

App.Current.Host.Content.ActualWidth == 1080 

그러나 값이 올바르지 표시되지 않습니다

는 또한 사용하려고했다. 풀 HD 휴대폰을 감지하는 가장 좋은 방법은 무엇입니까?

+0

왜 '값이 정확하지 않습니까?' 1080 – kennyzx

답변

1

가 여기에 윈도우 8과 윈도우 폰의 화면 해상도를 검출하기에 좀 더 설명 an article있어 기본적으로 작동하지 않습니다 코드는 사실에 내려 오는 이유는 8

당신은에 스케일링을하지 않았다 계정. 기사에서 코드를 따라하면 다음과 같이 해결해야합니다.

var content = Application.Current.Host.Content; 
double scale = (double)content.ScaleFactor/100; 
int h = (int)Math.Ceiling(content.ActualHeight * scale); 
int w = (int)Math.Ceiling(content.ActualWidth * scale); 
Size resolution = new Size(w, h); 

이제 너비/높이가 1080인지 확인합니다. 도움이 되었기를 바랍니다.

+0

해상도 이외의 값을 반환하면 1080x1920 에뮬레이터에서 720x1280이 반환됩니다. – poiuytrez

+0

이 코드를 디버깅 할 경우'scale','content.ActualHeight' 및'content.ActualWidth'의 값은 무엇입니까? 후자의 두 값은 * 'scale'을 곱하지 않고 *됩니다. – Abbas

관련 문제