2011-02-10 7 views
2

Android에서 애플리케이션을 만들고 있습니다. 원래 나는 스마트 폰을 위해서만 만들었지 만 이제는 똑같은 앱을 안드로이드 태블릿을위한 uspport로 보내고 싶습니다. 문제는 스케일링입니다. 태블릿 화면의 크기에 맞게 조정되지 않습니다. 필자는 fill_parent와 같이 LinearLayout을 높이와 너비와 함께 사용했다.Android 태블릿 용 Android 스마트 폰 앱 지원

답변

4

당신은 매뉴얼의이 작품을 읽을 수 :

http://developer.android.com/guide/practices/screens_support.html (읽어 마십시오!)

그러나 당신은 당신의 AndroidManifest.xml에서 화면 지원 추가 시도 할 수 :

플랫폼은 매니페스트 요소 인 도 제공합니다.이 속성은 android : smallScreens, android : normalScreens, android : largeScreens 및 android : xlargeScreens는 응용 프로그램이 지원하는 일반화 된 화면 크기를 으로 지정할 수 있습니다. 응용 프로그램의 안드로이드를 떠나 에 의해 기존 장치와의 호환성을 유지

(emph 광산) :의 minSdkVersion

<manifest xmlns:android="http://schemas.android.com/apk/res/android"> 
    <supports-screens 
     android:smallScreens="true" 
     android:normalScreens="true" 
     android:largeScreens="true" 
     android:xlargeScreens="true" 
     android:anyDensity="true" /> 
    ... 
</manifest> 

screen-support page 또한이 내용의 :

가이처럼 보이게 속성으로는 입니다. 새로운 장치 및 다중 화면을 지원하도록 속성의 값을 증가시킬 필요가 없습니다. Android 1.6 (및 이상) 기기에 의 호환성을 android : targetSdkVersion - 으로 새 -속성을 추가하여 uses-sdk 요소에 추가하십시오. 속성의 값 을 "4"로 설정하십시오. [ xhdpi와 초대형 화면을 지원하기 위해 값을 "9"로 설정하십시오.]이 기술적으로 API의 이전 버전을 사용하는 경우에도 이것은 당신의 응용 프로그램이 플랫폼의 여러 화면을 지원, 을 "상속"할 수 있습니다.

그래서 minSdkVersion 업데이트에 대한 해결책은 가장 일반적인 경우에 바람직하지 않은 것처럼 보입니다. 상황에 따라 minSdkVersion으로 '3'을 사용하는 경우이를 그대로두고 호환성을 위해 targetSdkVersion을 추가하십시오.

+0

해답에 감사드립니다. 그러나 나는 이미 그렇게했습니다. 나는 support-screens 요소를 추가했으나 여전히 효과가있다. – iPhoneCoder

0

문제는 min sdk 버전에서 발생했습니다. min sdk 버전을 3 이하로 설정하거나 전혀 설정하지 않으면 크기 조정 문제가 발생합니다. 하지만 4 이상으로 설정하면 완벽하게 작동합니다. 응용 프로그램은 최소 sdk 버전을 4 이상으로 설정 한 후 전체 태블릿 화면 높이와 너비를 차지합니다.

+0

나는 이것이 당신이해야하는 일이라는 것에 동의하지 않습니다. 내 anser에 '이유'를 추가합니다.) – Nanne