Ver Mensaje Individual
  #4  
Viejo 02/12/14, 05:05:30
Array

[xs_avatar]
fernandinho_90 fernandinho_90 no está en línea
Miembro del foro
 
Fecha de registro: sep 2014
Mensajes: 32
Tu operador: Movistar

 Cita: Originalmente Escrito por kriogeN Ver Mensaje
Eso es matar moscas a cañonazos, en Android no es nada recomendable usar static salvo en muy contadas ocasiones.

Lo que hay que hacer es guardar en un Bundle, y luego recuperarlas. Así además de para el cambio de orientación te valdrá para casos de destrucción de la Activity por cualquier otro motivo (por ejemplo recibes una llamada mientras estás dentro de la app).

De todas formas puedes configurar la Activity en el Manifest para que no se destruya cuando cambias la orientación:

android:configChanges="orientation|screenSize"
Con eso no me resulta, en mi Fragment creo un adaptador que implementa a ExpandableListAdapter y tiene como método el siguiente código sacado de internet ( http://www.techiecommunity.net/Andro...Layout-Example ).

Código:
...
@Override     
public View getChildView(int groupPosition, int childPosition,             
boolean isLastChild, View convertView, ViewGroup parent) {                  
View v = null;        
 if(groupPosition == 0) {          
 v = View.inflate(context, R.layout.expandable_child_layout, null);           
TextView txtView = (TextView) v.findViewById(R.id.txtChld1);           
txtView.setText("Green");           
txtView.setTextSize(15f);           
txtView.setBackgroundColor(Color.GREEN);        
 }        
 if(groupPosition == 1) {            
 v = View.inflate(context, R.layout.expandable_child_1_layout, null);        
 }        
 if(groupPosition == 2) {            
 v = View.inflate(context, R.layout.expandable_child_2_layout, null);         
}         
if(groupPosition == 3) {            
 v = View.inflate(context, R.layout.expandable_child_layout, null);             
TextView txtView = (TextView) v.findViewById(R.id.txtChld1);             
txtView.setText("Purple");            
 txtView.setTextSize(15f);         
}        
 v.invalidate();        
 return v;     
}
....
Creo que es porque a cada rato al View se le aplica inflate, cómo puedo arreglarlo para que al cambiar la orientación no se reseteen los datos?

Saludos!
Responder Con Cita