Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 02/09/13, 21:55:12
Array

[xs_avatar]
carrobe1390 carrobe1390 no está en línea
Miembro del foro
 
Fecha de registro: feb 2013
Localización: Guayaquil
Mensajes: 47
Modelo de smartphone: Samsung Galaxy S3
Tu operador: Claro
Mantener los datos al girar la pantalla

Tengo mi pagina de presentacion , inicio o splash como quieran llamarle pero el problema es que al rotar la imagen se reinicia el activity como puede evitar esto?? y que el vidoe continue de dond se quedo???

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.KeyEvent;
import android.view.Window;
import android.widget.MediaController;
import android.widget.ProgressBar;
import android.widget.Toast;
import android.widget.VideoView;

@SuppressLint("HandlerLeak")
public class Activity_Splash extends Activity {
ProgressBar progressBar;
protected boolean isRunning;
VideoView myVideoView;
String SrcPath = "/storage/sdcard0/Video/Reik-ConlaCaraenAlto_HD.mp4";
@Override
public void onCreate(Bundle savedInstanceState){
this.requestWindowFeature(Window.FEATURE_NO_TITLE) ;
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
progressBar = (ProgressBar) findViewById(R.id.progressBar1);

VideoView myVideoView = (VideoView)findViewById(R.id.videoView1);
myVideoView.setVideoPath(SrcPath);
myVideoView.setMediaController(new MediaController(this));
myVideoView.requestFocus();

myVideoView.start();


new Thread(new Runnable() {

public void run() {
for (int i = 0; i < 20; i++) {
try {
Thread.sleep(1000);
handler.sendMessage(handler.obtainMessage());
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

Intent mainIntent = new Intent().setClass(Activity_Splash.this, Activity_Home.class);
startActivity(mainIntent);
finish();

}
}).start();

}
Handler handler=new Handler() {

@Override
public void handleMessage(Message msg) {
progressBar.incrementProgressBy(5);
}
};


@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// Bloquiar la tecla volver para no cerrar el app
Toast.makeText(this, "No puede Retroceder", Toast.LENGTH_SHORT).show();
return false;
}
return super.onKeyDown(keyCode, event);
}
} --> Codigo

Alguien que me eche una mano..
Responder Con Cita


  #2  
Viejo 02/09/13, 22:13:24
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Poniendo esto en el Manifest en la Activity:

android:configChanges="orientation"
Responder Con Cita
  #3  
Viejo 02/09/13, 22:25:47
Array

[xs_avatar]
carrobe1390 carrobe1390 no está en línea
Miembro del foro
 
Fecha de registro: feb 2013
Localización: Guayaquil
Mensajes: 47
Modelo de smartphone: Samsung Galaxy S3
Tu operador: Claro
 Cita: Originalmente Escrito por carrobe1390 Ver Mensaje
Tengo mi pagina de presentacion , inicio o splash como quieran llamarle pero el problema es que al rotar la imagen se reinicia el activity como puede evitar esto?? y que el vidoe continue de dond se quedo???

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.KeyEvent;
import android.view.Window;
import android.widget.MediaController;
import android.widget.ProgressBar;
import android.widget.Toast;
import android.widget.VideoView;

@SuppressLint("HandlerLeak")
public class Activity_Splash extends Activity {
ProgressBar progressBar;
protected boolean isRunning;
VideoView myVideoView;
String SrcPath = "/storage/sdcard0/Video/Reik-ConlaCaraenAlto_HD.mp4";
@Override
public void onCreate(Bundle savedInstanceState){
this.requestWindowFeature(Window.FEATURE_NO_TITLE) ;
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
progressBar = (ProgressBar) findViewById(R.id.progressBar1);

VideoView myVideoView = (VideoView)findViewById(R.id.videoView1);
myVideoView.setVideoPath(SrcPath);
myVideoView.setMediaController(new MediaController(this));
myVideoView.requestFocus();

myVideoView.start();


new Thread(new Runnable() {

public void run() {
for (int i = 0; i < 20; i++) {
try {
Thread.sleep(1000);
handler.sendMessage(handler.obtainMessage());
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

Intent mainIntent = new Intent().setClass(Activity_Splash.this, Activity_Home.class);
startActivity(mainIntent);
finish();

}
}).start();

}
Handler handler=new Handler() {

@Override
public void handleMessage(Message msg) {
progressBar.incrementProgressBy(5);
}
};


@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// Bloquiar la tecla volver para no cerrar el app
Toast.makeText(this, "No puede Retroceder", Toast.LENGTH_SHORT).show();
return false;
}
return super.onKeyDown(keyCode, event);
}
} --> Codigo

Alguien que me eche una mano..
Tengo que añadir esta porcion de codigo en el manifiesto.

android:configChanges="orientation|keyboardHidden| screenSize">

Pero al hacer eso no me visualiza el layout-land que cree
Responder Con Cita
  #4  
Viejo 02/09/13, 22:42:34
Array

[xs_avatar]
carrobe1390 carrobe1390 no está en línea
Miembro del foro
 
Fecha de registro: feb 2013
Localización: Guayaquil
Mensajes: 47
Modelo de smartphone: Samsung Galaxy S3
Tu operador: Claro
 Cita: Originalmente Escrito por kriogeN Ver Mensaje
Poniendo esto en el Manifest en la Activity:

android:configChanges="orientation"
al realizar ese codigo se reinicia la activity y eso no deseo
Responder Con Cita
  #5  
Viejo 02/09/13, 22:53:29
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Si quieres que el Layout sea otro tendrás que usar entonces onSaveInstanceState, y luego recuperarlo en el onCreate.
Responder Con Cita
  #6  
Viejo 02/09/13, 23:07:04
Array

[xs_avatar]
carrobe1390 carrobe1390 no está en línea
Miembro del foro
 
Fecha de registro: feb 2013
Localización: Guayaquil
Mensajes: 47
Modelo de smartphone: Samsung Galaxy S3
Tu operador: Claro
 Cita: Originalmente Escrito por kriogeN Ver Mensaje
Si quieres que el Layout sea otro tendrás que usar entonces onSaveInstanceState, y luego recuperarlo en el onCreate.
como puedo mantenerlo?? y luego recueprarlo por favor ayudame
Responder Con Cita
  #7  
Viejo 03/09/13, 07:44:48
Array

[xs_avatar]
rafaxplayer rafaxplayer no está en línea
Miembro del foro
 
Fecha de registro: jun 2013
Localización: en la barcelona media
Mensajes: 224
Modelo de smartphone: LG-E610
Tu operador: Orange
Responder Con Cita
  #8  
Viejo 04/09/13, 15:31:50
Array

[xs_avatar]
vagaerg vagaerg no está en línea
Usuario muy activo
 
Fecha de registro: ago 2009
Localización: Londres
Mensajes: 1,541
Modelo de smartphone: Pixel 9 Pro XL
Tu operador: Otra
Si no, mírate esto:
http://www.androiddesignpatterns.com...g-changes.html

Es básicamente meter lo que quieras en un fragmento y retenerlo.

Por otro lado, si metes lo que te han dicho en el manifest, diría que tienes que hacer, en tu actividad:

@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
__________________
Por favor, cita este mensaje o mencióname si necesitas que responda, así me saltará en Tapatalk
Responder Con Cita
  #9  
Viejo 11/09/13, 16:05:52
Array

[xs_avatar]
carrobe1390 carrobe1390 no está en línea
Miembro del foro
 
Fecha de registro: feb 2013
Localización: Guayaquil
Mensajes: 47
Modelo de smartphone: Samsung Galaxy S3
Tu operador: Claro
 Cita: Originalmente Escrito por vagaerg Ver Mensaje
Si no, mírate esto:
http://www.androiddesignpatterns.com...g-changes.html

Es básicamente meter lo que quieras en un fragmento y retenerlo.

Por otro lado, si metes lo que te han dicho en el manifest, diría que tienes que hacer, en tu actividad:

@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
Gracias...!!!!
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 09:21:12 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /