Jak utworzyć toast w aplikacji Android za pomocą phonegap/cordova?Jak utworzyć tosty w phonegap?
Thanx!
Jak utworzyć toast w aplikacji Android za pomocą phonegap/cordova?Jak utworzyć tosty w phonegap?
Thanx!
najpierw utworzyć ToastPlugin.java
package com.company.plugins;
import org.apache.cordova.api.CallbackContext;
import org.apache.cordova.api.CordovaPlugin;
import org.json.JSONArray;
import org.json.JSONException;
import android.util.Log;
import android.widget.Toast;
public class ToastPlugin extends CordovaPlugin {
@Override
public boolean execute(String action, JSONArray args,
CallbackContext callbackContext) throws JSONException {
String message = args.getString(0);
// used to log the text and can be seen in LogCat
Log.d("Toast Plugin", "Calling the Toast...");
Log.d("Toast Plugin", message);
if (action.equals("shortToast")) {
this.shortToast(message, callbackContext);
return true;
} else if (action.equals("longToast")) {
this.longToast(message, callbackContext);
return true;
}
return false;
}
private void shortToast(String message, CallbackContext callbackContext) {
if (message != null && message.length() > 0) {
Toast.makeText(cordova.getActivity().getApplicationContext(),
message, Toast.LENGTH_SHORT).show();
callbackContext.success(message);
} else {
callbackContext.error("Expected one non-empty string argument.");
}
}
private void longToast(String message, CallbackContext callbackContext) {
if (message != null && message.length() > 0) {
Toast.makeText(cordova.getActivity().getApplicationContext(),
message, Toast.LENGTH_LONG).show();
callbackContext.success(message);
} else {
callbackContext.error("Expected one non-empty string argument.");
}
}
}
następnie utworzyć toastPlugin.js
//Plugin file should be always after cordova.js
//There is always better way to create, but this also works
window.shortToast = function(str, callback) {
cordova.exec(callback, function(err) {
callback('Nothing to echo.');
}, "ToastPlugin", "shortToast", [ str ]);
};
window.longToast = function(str, callback) {
cordova.exec(callback, function(err) {
callback('Nothing to echo.');
}, "ToastPlugin", "longToast", [ str ]);
};
połączyć te pliki w projekcie, teraz można nazwać w JavaScript
jak:
PhoneGap-Toast jest mostem typu open source (MIT-Licensed) dla PhoneGap, który pozwala to zrobić.
Szukasz uniwersalnej wtyczki iOS/Android/WP8 tosty, kasa to jedna: http://www.x-services.nl/phonegap-toast-plugin/796
Zapomniałeś wspomnieć zaktualizować "config.xml" –
' ' –
Co więcej, dla nowej wersji gry na phonegap (chyba 3.0),' import org.apache.cordova.api.CallbackContext; import org.apache.cordova.api.CordovaPlugin; 'należy zastąpić przez' import org.apache.cordova.CallbackContext; import org.apache.cordova.CordovaPlugin; ' –