Java 如何在ViewPager上高效地添加多个图像
这是我学习android应用程序的第三天。目前使用的是android studio,我的问题与ViewPager类有关。下面是我的fragment和viewPager类的代码 ViewPager和适配器类: 包com.syedabdullah.syed.quran_记忆_应用程序 导入android.content.pm.ActivityInfo;导入android.os.Bundle; 导入android.support.v4.app.Fragment;进口 android.support.v4.app.FragmentActivity;进口 android.support.v4.app.FragmentManager;进口 android.support.v4.app.FragmentStatePagerAdapter;进口 android.support.v4.view.PagerAdapter;进口 android.support.v4.view.ViewPager;导入android.view.Window 公共类ViewPagePractivity扩展了FragmentActivity{Java 如何在ViewPager上高效地添加多个图像,java,android,android-layout,android-fragments,Java,Android,Android Layout,Android Fragments,这是我学习android应用程序的第三天。目前使用的是android studio,我的问题与ViewPager类有关。下面是我的fragment和viewPager类的代码 ViewPager和适配器类: 包com.syedabdullah.syed.quran_记忆_应用程序 导入android.content.pm.ActivityInfo;导入android.os.Bundle; 导入android.support.v4.app.Fragment;进口 android.support.v
ViewPager myPager;
PagerAdapter myAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Remove Title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//force portrait orientation. (No landscape orientation).
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.activity_view_pager);
myPager = (ViewPager) findViewById(R.id.pager);
myAdapter = new adapterClass(getSupportFragmentManager());
myPager.setAdapter(myAdapter);
}
/*
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_view_pager, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
} */
/*Nested class needed for custom Adapter */
private class adapterClass extends FragmentStatePagerAdapter {
int[] images = new int[3];
images[0] = R.drawable._2;
String extract = "R.drawable._";
public adapterClass(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
//initialiseArray(images);
return viewPageFragment.newInstance(position, images[position]);
}
@Override
public int getCount() {
return images.length;
}
private int[] initialiseArray(int[] array) {
for (int i = 2; i <= array.length + 1; i++) {
extract += i;
array[i-2] = Integer.parseInt(extract);
}
return array;
}
}
当前我的initialiseArray
不起作用。如果我按如下方式初始化我的数组:
int[] images = {R.drawable._2, R.drawable._3, R.drawable._4};
它将在我的ViewPager中显示相应的图像。但是,我有500多个图像,如果我这样做,这将花费很长时间。这就是为什么我想知道是否有更简单的方法插入这些图像。我所有的图像都是按递增顺序命名的。因此,我的第一个图像被命名为。_2一直到。_550或其他什么
还有一个问题。
如果我们能做一个像
int[]images={R.drawable.\u 2,R.drawable.\u 3,R.drawable.\u 4}
那这怎么不起作用呢
int[]图像=新的int[3];
图像[0]=R.drawinable.\u 2
有人能解释一下吗?谢谢。我找到了一种有效地向ViewPager添加大量页面的方法。只需向其他可能面临类似问题的新来者发布答案。我试图做的是在应用程序内存中添加数百个图像,这是非常低效的。这种方法应该是d一个是你必须下载图像(使用AsynTask或DownloadManger)并将其存储在外部存储器上,然后从那里提取图像。希望这有帮助。唯一的问题是我需要所有图像覆盖整个页面,不知道gallery是否可以做到这一点(只做了3天的安卓系统,但我可能会去看看。)快速提问,我的应用程序会要求我单独定位这些图片中的某些位置。这在Gallery中也可能吗?
int[] images = {R.drawable._2, R.drawable._3, R.drawable._4};