我有4个相册,每个相册有20个图像。作为默认的第一张专辑图像加载。我想在图像之间切换。我使用viewpager进行滑动,但我无法将图像的来源更改为其他相册图像。如何更改Viewpager图片来源(不同的相册)?
如何更改resouorceIDs列表与抽屉项目选择或其他方式?
这是我的MainActivty.java。我试图改变resourceIDs到R1,R2,R3,R4,R5 ......
public class MainActivity extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener {
private BitmapFactory.Options options;
private ViewPager viewPager;
private FragmentStatePagerAdapter adapter;
private ArrayList<Integer> images;
public static int[] resourceIDs = new int[] {
R.mipmap.p19,
R.mipmap.p18,
R.mipmap.p17,
R.mipmap.p16,
R.mipmap.p15,
R.mipmap.p14,
R.mipmap.p13,
R.mipmap.p12,
R.mipmap.p11,
R.mipmap.p10,
R.mipmap.p9,
R.mipmap.p8,
R.mipmap.p7,
R.mipmap.p6,
R.mipmap.p5,
R.mipmap.p4,
R.mipmap.p3,
R.mipmap.p2,
R.mipmap.p1,
R.mipmap.p0
} ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
images = new ArrayList<>();
//find view by id
viewPager = (ViewPager) findViewById(R.id.view_pager);
setImagesData();
// init viewpager adapter and attach
adapter = new ViewPagerAdapter(getSupportFragmentManager(), images);
viewPager.setAdapter(adapter);
//right to left sliding
viewPager.setCurrentItem(adapter.getCount() - 1);
}
private void setImagesData() {
for (int i = 0; i < resourceIDs.length; i++) {
images.add(resourceIDs[i]);
}
}
这里是抽屉代码:
private void displaySelectedScreen(int itemId) {
//creating fragment object
Fragment fragment = null;
//initializing the fragment object which is selected
switch (itemId) {
case nav_album1:
fragment = new Album1();
images = new ArrayList<>();
resourceIDs = new int[] {
R.mipmap.p5,
R.mipmap.p4,
R.mipmap.p3,
R.mipmap.p2,
R.mipmap.p1};
adapter.notifyDataSetChanged();
adapter = new ViewPagerAdapter(getSupportFragmentManager(), images);
viewPager.setAdapter(adapter);
//setContentView(R.layout.kdaria);
break;
case R.id.nav_album2:
fragment = new Album2();
images = new ArrayList<>();
resourceIDs = new int[] {
R.mipmap.r5,
R.mipmap.r4,
R.mipmap.r3,
R.mipmap.r2,
R.mipmap.r1};
adapter.notifyDataSetChanged();
adapter = new ViewPagerAdapter(getSupportFragmentManager(), images);
viewPager.setAdapter(adapter);
break;
case R.id.nav_album3:
fragment = new Album3();
images = new ArrayList<>();
resourceIDs = new int[] {
R.mipmap.s5,
R.mipmap.s4,
R.mipmap.s3,
R.mipmap.s2,
R.mipmap.s1};
adapter.notifyDataSetChanged();
adapter = new ViewPagerAdapter(getSupportFragmentManager(), images);
viewPager.setAdapter(adapter);
break;
}
你是什么意思“与抽屉项目选择”...你的问题显示没有抽屉相关的代码 –
我有一个抽屉与4项。当我选择第一个项目时,我想更新数组列表到相册图像。 –
好的,处理抽屉点击的代码在哪里? –