¿Comprobar si la tecla de la parte posterior fue presionada en androide?
Decir que estoy en mi actividad principal y comenzar una nueva actividad
MainActivity > NewActivity
Y desde NewActivity
la tecla de retroceso
- Android - cómo reemplazar parte de una cadena por otra cadena?
- Android con comunicación websocket (servidor Node Websocket y Android Java Client). No funciona en Android 4
- Descripción de las fugas de memoria en una aplicación de Android
- Cómo establecer el valor predeterminado de SwitchPreference en android?
- Cambiar la opacidad del color int en java / android
MainActivity < NewActivity
Quiero que MainActivity
haga algo si se muestra después de que NewActivity
esté cerrada, pero no cuando MainActivity
se ejecute normalmente, como cuando ejecuta la aplicación por primera vez. ¿Alguien sabe si esto es posible?
- Android acelerómetro de lectura en cualquier dirección
- Obtener la aplicación seleccionada de Intent.createChooser
- NullPointerException en startAnimation (anim)
- Acceso al método desde un fragmento en el botón Haga clic en MainActivity
- Denominación del ID en las aplicaciones de Android
- Estiramiento / encogimiento de lona
- ¿Los lados curvados de la trayectoria del triángulo?
- Uso de un servicio de Android para manejar una conexión de red
Un par de ideas:
- Sólo puede establecer un indicador en
MainActivity
cuando seNewActivity
. - Puede llamar a
startActivityForResult
deMainActivity
y disponer queNewActivity
configure un resultado, que recibirá enMainActivity.onActivityResult()
cuandoNewActivity
termine.
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { Log.d(this.getClass().getName(), "back button pressed"); } return super.onKeyDown(keyCode, event); }
@Actualizar. Si desea que se le avise cuando NewActivity está terminado, debe iniciarlo por startActivityForResult (Intent, requestCode). A continuación, debe anular onActivityResult () en MainActivity. Compruebe el parámetro requestcode aquí, si el código de retorno es igual al código de envío (cuando inicia childActivity), ponga un código para hacer su negocio.
int MYCODE=1000; @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // Result OK.d. if (requestCode == MYCODE) { // do something good } }
Puede sobrescribir el método onBackPressed () en NewActivity que detectará al pulsar el botón Atrás. A continuación, para informar a MainActivity acerca de ello, puede enviar un indicador booleano en un lote para que MainActivity detecte que su apertura después de NewActivity.
En NewActivity:
@Override public void onBackPressed() { boolean fromNewActivity=true; Intent mainIntent = new Intent(view.getContext(), MainActivity.class); Bundle bundleObj = new Bundle(); bundleObj.putString("fromNewActivity", Boolean.toString(fromNewActivity)); mainIntent.putExtras(bundleObj); startActivityForResult(mainIntent, 0); }
En MainActivity en el método onCreate ():
Bundle extras = getIntent().getExtras(); boolean fromNewActivity =Boolean.parseBoolean( extras.getString("fromNewActivity"));
Ahora puede comprobar si MainActivity se abre después de NewActivity o no.
Intento el siguiente método para detectar el botón de retroceso presionado en la barra de acción en actividad por el primer método y el segundo se utiliza para detectar el botón de botón de hardware móvil o botón de actividad de matar.
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()){ case android.R.id.home: onBackPressed(); return true; default: return super.onOptionsItemSelected(item); } } @Override public void onBackPressed() { setResult(RESULT_CANCELED); super.onBackPressed(); }
Cuando inicie NewActivity
necesitará usar startActivityForResult
y usar un requestId
válido. Este requestId
se le devolverá a onActivityResult
una vez que NewActivity
termine.
- Android, Autocompletextview, obliga a que el texto aparezca en la lista de entrada
- Versión errónea keystore al hacer llamadas https