Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Puede un Fragmento de Android superponer la actividad de PhoneGap?

La siguiente imagen debe representar una aplicación PhoneGap / Cordova que está marcada en azul. El área roja debe ser un Fragmento de Android.

Introduzca aquí la descripción de la imagen

¿Es posible tho tener un fragmento de Android que superpone una actividad PhoneGap?

Editar: La superposición de Android Fragmento debe las tareas como la manipulación de imágenes. ¿Cómo debo escribir un complemento PhoneGap que se comunique con el Fragmento?

  • Keytool con Android SDK de Facebook
  • ActionBar con el icono y el texto en modo retrato
  • Eclipse: La instalación JRE especificada no existe
  • Integración de Google Drive con la actividad actual
  • No se puede resolver el constructor ArrayAdapter
  • Cómo convertir `content: // media / external / images / media / Y` a` file: /// storage / sdcard0 / Pictures / X.jpg` en android?
  • Paquetes org.apache.http eliminados en el nivel 23. ¿Cuál es la alternativa?
  • ¿Cómo agregar una foto de contacto a ImageView?
  • One Solution collect form web for “¿Puede un Fragmento de Android superponer la actividad de PhoneGap?”

    La forma en que lo hice fue escribiendo un complemento que muestra un diálogo personalizado sin bordes, sombra de fondo, etc.

    Mi método execute () se parece a esto:

    @Override public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException { if (resources == null) resources = cordova.getActivity().getApplication().getResources(); if (package_name == null) package_name = cordova.getActivity().getApplication().getPackageName(); if (inflator == null) { inflator = cordova.getActivity().getLayoutInflater(); } if (action.equals("show")) { this.show(args, callbackContext); return true; } return false; // Returning false results in a "MethodNotFound" error. } 

    Y el método show () contiene algo como esto:

     [...] Runnable runnable = new Runnable() { public void run() { pinpad = new Dialog(cordova.getActivity()); pinpad.requestWindowFeature(Window.FEATURE_NO_TITLE); Window window = pinpad.getWindow(); window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); WindowManager.LayoutParams wlp = window.getAttributes(); wlp.gravity = Gravity.BOTTOM; window.setAttributes(wlp); pinpad.setCancelable(false); pinpad.setContentView(view); pinpad.getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, (int) height); pinpad.show(); } }; this.cordova.getActivity().runOnUiThread(runnable); [...] 

    Si su ventana (la parte roja) tiene que ser colocado en una posición particular (no en el centro o en la parte inferior de la pantalla), entonces usted tiene que pasar las coordenadas de javascript a plugin nativo.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.