我用Cordova版本3.6.3和
JQuery开发了Cordova App.我仍然无法获得最佳解决方案的唯一问题是当我在
Android 4.4上测试我的应用程序时,有些用户喜欢在设置中更改字体大小>显示>他们的设备的字体大小比正常大.它导致我的应用程序布局显示丑陋(最好的显示是当字体大小设置正常时).但是对于早于4.4(4.3,4.2 …)的Android,字体大小设置没有任何影响因此该应用程序在旧版本上完美显示.
我应用到我的应用程序的解决方案是创建自定义插件来检测更改的配置,它将检测用户是否使用Android 4.4,如果他们将字体大小设置设置为任何不正常的东西,我将使用JQuery强制font-size到指定的大小.
例子是….
if (font_scale == huge) { $("div").css("font-size","20px !important"); }
这工作正常但有时在页面加载后,css不会像我想要的那样改变.并且假设如果该页面上有30个div,那么我必须插入上述语句30次,并且不必要地花费太多时间.
我只是想知道,有没有其他方法来解决这个问题比使用这个插件更容易?也许使用一些XML配置或CSS3属性可以使我的应用程序正确显示而没有Android 4.4的字体大小设置的副作用?
我尝试过的另一种方法是无效的
>在Androidmanifest.xml上插入fontScale>活动标签
>插入webkit-text-size-adjust:none;在css
我很想听到任何有助于解决这个问题的想法.
解决方法
所以你只想忽略系统字体首选项.
这是解决方案,我使用 MobileAccessibilty Plugin来忽略系统字体首选项.
这是解决方案,我使用 MobileAccessibilty Plugin来忽略系统字体首选项.
您只需在index.js中的onDeviceReady函数中编写以下代码即可
if(window.MobileAccessibility){ window.MobileAccessibility.usePreferredTextZoom(false); }
usePreferredTextZoom(false)将忽略系统字体首选项.