Android - ViewPage no actualiza Fragment hijo.

   
Vista:

ViewPage no actualiza Fragment hijo.

Publicado por Jose (1 intervención) el 13/05/2014 15:44:44
Hola a todos.
Mi problema surge al intentar utilizar un ViewPager dentro de un TabHost, el ViewPager contiene Fragments. El problema surge al manipular el ViewPager y cambiar de pestaña, los dos primeros fragments detro del mismo se muetran en blanco.

ViewPager
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
private void fillViewPager() {
		ViewPager viewPager;
		ViewPagerAnterioresAdapter viewPagerAdapter;
		List<PedidoAnteriorContentFragment>pedidos;
 
		pedidos = new ArrayList<PedidoAnteriorContentFragment>();
 
		listaIds = FactoryService.getDocumentosServices().getDocumentosIds(cliente.id);
		viewPager = (ViewPager) getActivity().findViewById(R.id.viewPagerPedidosAnteriores);
 
		viewPagerAdapter = new ViewPagerAnterioresAdapter(getFragmentManager());
 
		for (int i = 0; i < listaIds.size(); i++) {
			ClienteDocumentoId clienteDocumentoId;
 
			clienteDocumentoId = new ClienteDocumentoId();
			clienteDocumentoId.cliente = cliente;
			clienteDocumentoId.documento = FactoryService.getDocumentosServices().getDocumentoId(listaIds.get(i));
 
			pedidos.add(PedidoAnteriorContentFragment.newInstance(clienteDocumentoId));
		}
 
		viewPagerAdapter.addPedidosAnteriores(pedidos, listaIds);
		viewPager.setAdapter(viewPagerAdapter);
 
	}

FragementStatePagerAdapter
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public class ViewPagerAnterioresAdapter extends FragmentStatePagerAdapter{
 
	private List<PedidoAnteriorContentFragment> lisContentFragments;
	private List<Integer>listaIds;
 
	public ViewPagerAnterioresAdapter(FragmentManager fm) {
		super(fm);
		lisContentFragments = new ArrayList<PedidoAnteriorContentFragment>();
		listaIds = new ArrayList<Integer>();
	}
 
	@Override
	public Fragment getItem(int arg0) {
		return lisContentFragments.get(arg0);
	}
 
	@Override
	public int getCount() {
		return lisContentFragments.size();
	}
 
	public void addPedidosAnteriores(List<PedidoAnteriorContentFragment> pedidos, List<Integer> idPedido){
		lisContentFragments = pedidos;
		listaIds = idPedido;
	}
 
	public void setListaPedidos(List<PedidoAnteriorContentFragment> lista){
		lisContentFragments = lista;
	}
 
	@Override
	public CharSequence getPageTitle(int position) {
		return "#00000000"+listaIds.get(position);
	}
 
	@Override
	public boolean isViewFromObject(View view, Object object) {
		return ((Fragment)object).getView() == view;
	}
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder