Passagem de ArrayList de um SherlockFragment para outro

0 respostas
aboult

Boa noite.

Fiz a implementação de uma tela de Cadastro que possui um SherlockFragmentActivity e 3 Tabs que são compostas por SherlockFragments.

Essas 3 Tabs compõem um mesmo objeto: Cliente que será persistido no banco e as 2 últimas Tabs Entrega e Cobranca se comunicam entre-si.

De qualquer maneira havia até criado um outro tópico aqui perguntando como controlar as tabs mantendo os dados e o controle dos fragments para depois efetuar sua gravação como um todo.
Consegui montar isso controlando através de um ArrayList que eu controlo e atualizo, conforme o que necessito sem perder os dados que foram digitados na Tab.

if(tab.getPosition()==0) {
    			
	if(arrFragment.size()>0){
		
		arrFragment.set(0, this.fragment);
	}else {
					
		arrFragment.add(0, this.fragment);
	}
	ft.remove(fragment);
	}else if(tab.getPosition()==1){
				
		if(arrFragment.size()>1){
					
		     arrFragment.set(1, this.fragment);
		}else {
					
		     arrFragment.add(1, fragment);
		}
		ft.remove(fragment);
	}else if(tab.getPosition()==2){
				
		if(arrFragment.size()>2){
					
			arrFragment.set(2, fragment);
		}else {
					
			arrFragment.add(2, fragment);
		}
			ft.remove(fragment);
	}

Dessa maneira eu tenho o controle dos fragments e não perco os dados entre os replaces.

Mas agora eu preciso que quando eu vá para o último Tab, ele possa acessar as informações do Tab anterior. Como eu tenho já o ArrayList eu gostaria de passar esse Array para o fragment que vou selecionar:

if(arrFragment.size()>2){
					
	ft.replace(android.R.id.content, arrFragment.get(2));
}else {
					
	fragment = new CadastroClienteCobranca();
	ft.replace(android.R.id.content, fragment);
}

Alguém sabe como eu poderia transferir um ArrayList de um SherlockFragment para outro?

Obrigado desde já.

Criado 4 de dezembro de 2012
Respostas 0
Participantes 1