1

ネイティブ アプリケーションで Cordova を使用しています。サーバーへのレベルのアップロードが完了すると、ユーザーは次にやりたいことを選択できます。これで、ボタン「Start Level Now!」をクリックして、Cordova Webviewer から直接ゲームを開始できるはずです。

新しいレベルがダウンロードされ、別の ViewController で開始されます。

PlayLevelVievcontroller.m でセグエを実行するために、ネイティブ コードでボタンの onclick イベントをリッスンするにはどうすればよいですか?

4

1 に答える 1

1

プラグインを書く必要があります。

次に onclick="plugin.callNative(['arguments'])" を呼び出します

その後、コルドバは独自のネイティブ クラスを呼び出します。

var myplugin = {
    performSegue: function (arguments) {
        var callback = function () {};
        cordova.exec(callback, callback, "nativeClass", "nativeMethod",arguments);
    }
};

このようにネイティブクラスとメソッドを宣言します

@interface MyPlugin : CDVPlugin

- (void)myNativeMethod:(CDVInvokedUrlCommand *)urlCommand;

@end

このようにネイティブクラスを実装します

- (void)myNativeMethod:(CDVInvokedUrlCommand *)urlCommand
{
    CDVPluginResult* pluginResult = nil;
    NSArray *arguments = urlCommand.arguments;
if (Arguments are not right) {

    pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR];

} else {
    // Do something
    pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK];
}

[self.commandDelegate sendPluginResult:pluginResult callbackId:urlCommand.callbackId];

}

于 2014-03-26T10:09:28.797 に答える