覆盖 Visual Studio Tools for Apache Cordova config.xml 文件中的 windowSoftInputMode 首选项

Posted

技术标签:

【中文标题】覆盖 Visual Studio Tools for Apache Cordova config.xml 文件中的 windowSoftInputMode 首选项【英文标题】:Overwriting windowSoftInputMode preference in Visual Studio Tools for Apache Cordova config.xml file 【发布时间】:2015-02-05 19:19:13 【问题描述】:

我遇到了一个问题,android 软键盘出现在页面上的最后一个 edittext 字段上。建议的解决方案包括更改 windowSoftInputMode,因此我在 config.xml 文件中添加了以下首选项:

<preference name="android-windowSoftInputMode" value="adjustResize|stateHidden" />

但是,在我构建之后,发布文件夹中的 AndroidManifest.cordova.xml 文件的 windowSoftInputMode 始终为“adjustResize”,因此在我运行应用程序时没有任何变化。

<application android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="CordovaApp" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustResize">
        <intent-filter android:label="@string/launcher_name">
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

有谁知道这个设置是否可以被覆盖,如果可以,这样做的机制是什么?我正在使用适用于 Apache Cordova CTP3 的 Visual Studio (2013 Update 4) 工具。

【问题讨论】:

【参考方案1】:

我以前也遇到过类似的问题,我是这样解决的。

res\native\android 文件夹中创建一个自定义 AndroidManifest.xml 文件。当您为 Android 平台进行构建时,此文件中的所有信息都将被复制到调试文件夹(并将覆盖 config.xml 文件中包含的内容)。

这是 MSDN 文档的链接,其中包含有关不同平台的自定义配置的更多信息:

https://msdn.microsoft.com/en-us/library/dn757053.aspx

【讨论】:

以上是关于覆盖 Visual Studio Tools for Apache Cordova config.xml 文件中的 windowSoftInputMode 首选项的主要内容,如果未能解决你的问题,请参考以下文章

visual c++ build tools有离线安装包吗

配置 Visual Studio Tools for Apache Cordova

Unity Tools for Visual Studio 功能

visual c++ build tools有离线安装包吗

Visual Studio Productivity Power Tools居然也开源

认识微软Visual Studio Tools for AI