我正在使用合金制作钛金属移动应用程序,并且我使用dp单元来支持不同的屏幕,但由于在运行应用程序时未按比例缩放UI,因此无法正常工作低dpi(160)设备。
下图显示了如何在480 dpi设备中显示和正确缩放应用程序。此截图来自genymotion模拟设备。
Samsung S4 - 4.2.2 - API 17 - 1080 x 1920 - 480 dpi
我也在以下设备中尝试过它并且表现正常。
问题是它在160 dpi设备上无法正常工作,因为ui看起来太小而且似乎没有缩放。
Sony Xperia Tablet S - 4.1.1 - API 16 - 1280 x 800 - 160 dpi
我还在自定义手机中测试了它 - 4.3 - API 18 - 768 x 1280 - 160 dpi它看起来完全一样。
(抱歉,由于10个声望点规则,我无法发布链接,我可以提供更多截图)
我已经在真实设备上测试了它并且我遇到了同样的问题:它在我的三星Galaxy手机中显示得很好但是它在我的三星Galaxy标签上不起作用。
有谁知道我做错了什么或我错过了什么?这似乎只是一个Android问题,因为它也在ios上正常工作。
这是tiapp.xml
中清单标记的代码<manifest>
<!-- Allows the API to download data from Google Map servers -->
<uses-permission android:name="android.permission.INTERNET"/>
<!-- Allows the API to cache data -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!-- Use GPS for device location -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<!-- Use Wi-Fi or mobile connection for device location -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<!-- Allows the API to access Google web-based services -->
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<!-- Specify OpenGL ES 2.0 as a requirement -->
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
<!-- Replace com.domain.appid with your application ID -->
<uses-permission android:name="com.vivelabbogota.guiadetramitesvivelabbogota.MAPS_RECEIVE"/>
<permission android:name="com.vivelabbogota.guiadetramitesvivelabbogota.MAPS_RECEIVE" android:protectionLevel="signature"/>
<application>
<!-- Replace "PASTE YOUR GOOGLE MAPS API KEY HERE" with the Google API key you obtained -->
<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="removed_for_stackoverflow"/>
</application>
<activity
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:name=".GuiaDeTramitesActivity" android:theme="@style/Theme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<!-- Need to specify at least API level 11 for Titanium SDK 3.2.x and prior -->
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="16"/>
</manifest>
我使用.tss样式表来表示元素和字体的大小,我没有在控制器上计算尺寸,也不想这样做。我相信这不是我的项目的相关因素,因为我对一个全新的项目进行了测试,它也发生在那里。
感谢您的帮助。