web-dev-qa-db-ja.com

Android用のPhonegapSoftKeyboardプラグインの使用方法は?

Phonegap を使用してAndroidアプリケーションを開発しています。プログラムでソフトキーボードを表示する必要があります。 ここ にあるSoftKeyboardプラグインを使用しています。 =。このプラグインを適切に含めて機能させる方法を教えてもらえますか? Phonegap Wiki にあるチュートリアルを試しましたが、プラグインが機能していません。

[更新]プラグインをパスに追加しました

com/zenexity/SoftKeyBoardPlugin/SoftKeyBoard.Java

plugins.xmlを更新し、含まれています

<plugin name="SoftKeyBoard" value="com.zenexity.SoftKeyBoardPlugin.SoftKeyBoard"/>

次に、wwwフォルダーにsoftkeyboard.jsを追加し、以下をindex.htmlに追加しました。

plugins.SoftKeyBoard.show(function () {
    // success
},function () {
   // fail
});

しかし、何も起こらず、キーボードは表示されません。

22
NBK

これが、SoftKeyBoardをアプリケーションで機能させる方法です。

DroidGap Side

  • 提供されたファイルSoftKeyBoard.Javaを内部に使用して/ src/com/phonegap/plugins/SoftKeyboardを作成します
  • /res/xml/plugins.xmlに追加します。

    < plugin name="SoftKeyBoard" value="com.phonegap.plugins.SoftKeyboard.SoftKeyBoard" />

/assets/wwwサイド

  • 提供されたファイルsoftkeyboard.jsを/ assets/www/jsに追加します
  • phonegap javascriptを含めた後、他のjavascriptが含まれるヘッドのindex.htmlに追加します。

    < script type="text/javascript" charset="utf-8" src="js/softkeyboard.js"></script>

デバイスを使用している場合、またはRippleなどを使用している場合は、次の電話をかけることができます。

window.plugins.SoftKeyBoard.show(function () {
  // success
},function () {
  // fail
});

または、名前空間が使用可能であることを確認する場合は、次のようにします。これにより、未定義の問題が防止されます。

((((window || {}).plugins || {}).SoftKeyBoard || {}).show || function(){})();

おそらく、あなたが間違っていたのは、index.htmlの頭にjs /softkeyboard.jsを含めていなかったと思います。

これがお役に立てば幸いです

11
darryn.ten

PhoneGapの最新バージョン(Apache Cordova 2.1.0)の場合、次のことを行う必要がありました。

プロジェクト名の変更を反映したこれらのプラグインソースをインストールしました: https://github.com/originalgremlin/phonegap-plugins/tree/master/Android/SoftKeyboard

  • Softkeyboard.jsをjavascriptライブラリディレクトリにコピーします。
  • SoftKeyBoard.Javaをsrc/org/Apache/cordova/plugins /SoftKeyBoard.Javaにコピーします

Cordova.jsファイルを含めた後、これをHTMLファイルに入れます。

<script src="/path/to/javascripts/softkeyboard.js"></script>

これをres/xml /config.xmlプラグインセクションの下部に追加します。

<plugin name="SoftKeyBoard" value="org.Apache.cordova.plugins.SoftKeyBoard" />

ここで、このHTMLを想定します。

<button id="keyboard">Toggle Keyboard</button>

このjQueryは何か便利なことをするはずです:

var softkeyboard = window.cordova.plugins.SoftKeyBoard;
$('#keyboard').toggle(softkeyboard.show, softkeyboard.hide);
9
originalgremlin

このように試してください:

SoftKeyBoard.show(function () {
    // success
},function () {
   // fail
});

JSファイルのコードは、それを「プラグイン」名前空間に配置しません。

または、PhoneGapプラグインの完全な名前空間を使用します。

window.plugins.SoftKeyBoard.show(function () {
    // success
},function () {
   // fail
});
2
James Harris

Cordova 3.0 + JQM 1.3.2: config.xmlで「fullscreen」を「false」に変更すると、「adjustPan」が修正され、キーボードが表示されたときに入力がカバーされなくなりました。ただし、blur()はキーボードを閉じず、このプラグインはうまく機能しました。

Phonegapのほぼ最新バージョンの場合:

  • SoftKeyBoard.Javaをsrcのアプリパッケージに追加します
  • Softkeyboard.jsをassets/wwwに追加します
  • Config.xmlを次のように更新します:_<feature name="SoftKeyBoard"><param name="Android-package" value="com.yourAppPackage" /></feature>_
  • プラグインを呼び出します:plugins.SoftKeyBoard.hide(function() {//success }, function() {//fail });
0
Maj0rPaine

リンクを通過します。これが完全なプロジェクトです:-

Simon McDonaldによるSoftKeyboardPlugin

0
Nullify