sdk:15 を使用するとフォントがクラッシュするため、プロジェクトでは 15 よりも小さいバージョンの sdk を使用する必要があります。スクリーンショットは次のとおりです。
しかし、より低いバージョンの SDK を使用ViewPager
すると、他のアクティビティで速度が低下します。ViewPager
アクティビティのコードは次のとおりです。
public class MainActivity extends FragmentActivity {
private boolean async = false;
private class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
Bundle b = getArguments();
final int position = b.getInt("position");
View v = inflater.inflate(R.layout.fragment, null);
final ImageView img = (ImageView) v.findViewById(R.id.img);
if (!async) {
Bitmap bmp = BitmapFactory.decodeFile("/mnt/sdcard/image/"
+ shortcuts[position] + ".jpg");
img.setImageBitmap(bmp);
async = true;
} else {
AsyncTask<Integer, Integer, Integer> task = new AsyncTask<Integer, Integer, Integer>() {
Bitmap bmp;
@Override
protected void onProgressUpdate(Integer... values) {
img.setImageBitmap(bmp);
super.onProgressUpdate(values);
}
@Override
protected Integer doInBackground(Integer... params) {
bmp = BitmapFactory.decodeFile("/mnt/sdcard/image/"
+ shortcuts[params[0]] + ".jpg");
publishProgress();
return null;
}
};
task.execute(position);
}
return v;
}
}
private class MyAdapter extends FragmentPagerAdapter {
public MyAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
Fragment f = new MyFragment();
Bundle b = new Bundle();
b.putInt("position", position);
f.setArguments(b);
return f;
}
@Override
public int getCount() {
return shortcuts.length;
}
}
private int[] shortcuts = new int[] { 1, 2, 3, 4, 5, 6 };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ViewPager pager = (ViewPager) findViewById(R.id.pager);
FragmentManager fm = getSupportFragmentManager();
MyAdapter pagerAdapter = new MyAdapter(fm);
pager.setAdapter(pagerAdapter);
pager.setOffscreenPageLimit(3);
}
}
設定android:targetSdkVersion="15"
すると問題なく動作しますが、10 に設定すると結果が非常に遅くなります。ページを変更すると結果が遅くなります。どうすれば修正できますか? 私の android-support-v4.jar ファイルは 385,685 バイトです。