Bonjour, tout d'abord je vous explique la base de mon application :
J'ai des onglets représentés par des Fragments, chaque onglet contient des listViews. Lorsque l'utilisateur clique sur un item de ma Listview il affiche des images qu'il peut faire defiler grace à un ViewPager.
Dans ma classe ViewPager je dois récupérer un tableau de int grace à un getter ( Monfragment.getTabPDF() )
Ce que je n'arrive pas a faire c'est de récupérer le fragment qui a appelé cette activity pour ensuite faire un test du genre :
ViewPagerActivity :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 if ( NameFragment == "Fragment1" ) Fragment1.getTabPDF(); else if ( NameFragment == "Fragment2") Fragment2.getTabPDF(); else if ( NameFragment == "Fragment3") Fragment3.getTabPDF(); else if ( NameFragment == "Fragment4") Fragment4.getTabPDF();
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
42
43
44
45
46
47
48
49
50
51
52 public class ViewPagerActivity extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_view_pager); ViewPager mViewPager = (HackyViewPager) findViewById(R.id.view_pager); setContentView(mViewPager); getActionBar().setDisplayHomeAsUpEnabled(true); mViewPager.setAdapter(new SamplePagerAdapter()); } static class SamplePagerAdapter extends PagerAdapter { //private static int[] sDrawables = { R.drawable.s3, R.drawable.s3_2 } private Integer[] sDrawables = Fragment1.getTabPDF(); @Override public int getCount() { return sDrawables.length; } @Override public View instantiateItem(ViewGroup container, int position) { PhotoView photoView = new PhotoView(container.getContext()); photoView.setImageResource(sDrawables[position]); // Now just add PhotoView to ViewPager and return it container.addView(photoView, LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); return photoView; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } } }
Partager