问题:我有一个带有FragmentStatePagerAdapter的ViewPager设置,它使用全局arraylist来获取其片段的内容.当我想更新这个全局数组时,我只需调用该arraylist.add()方法,实例化一个新的FragmentStatePagerAdapter和一个新的ViewPager.但是,由于某种原因,适配器根本没有调用getItem.并不是说它的数据集是空的(它不是)或任何东西......它根本就没有被调用.我甚至设置了一个日志来测试它.这是我的代码:
// Create the adapter that will return a fragment for event
SectionsPagerAdapter adapter = new SectionsPagerAdapter(getFragmentManager());
// Set up the ViewPager with the sections adapter.
ViewPager pager = (ViewPager) findViewById(R.id.pager);
pager.setAdapter(adapter);
/**
* A FragmentStatePagerAdapter that returns a fragment corresponding to
* an index of the global events array
*/
public class SectionsPagerAdapter extends FragmentStatePagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
/**
* Called to instantiate the fragment for the given page
*/
@Override
public Fragment …Run Code Online (Sandbox Code Playgroud) 我有一个快速的问题.我正在使用Android的SurfaceView拍照并保存.但是,预览尺寸和图像质量本身都很糟糕; 因为,它非常模糊.根本没有图像质量的清晰度.
这是我初始化surfaceView的地方:
camera.setDisplayOrientation(90);
Parameters parameters = camera.getParameters();
parameters.setWhiteBalance(Camera.Parameters.WHITE_BALANCE_AUTO);
parameters.setExposureCompensation(0);
parameters.setPictureFormat(ImageFormat.JPEG);
parameters.setJpegQuality(100);
Camera.Size picSize = getOptimalPreviewSize(parameters.getSupportedPreviewSizes(),
getResources().getDisplayMetrics().widthPixels,
getResources().getDisplayMetrics().heightPixels);
parameters.setPictureSize(picSize.width, picSize.height);
parameters.setPreviewSize(picSize.width, picSize.height);
camera.setParameters(parameters);
camera.setPreviewDisplay(holder);
camera.startPreview();
Run Code Online (Sandbox Code Playgroud)
getOptimalPreviewSize()返回parameters.getSupportedPreviewSizes()中可用的最佳大小.它返回的尺寸是1280x720,这是我的手机支持的最佳尺寸.但是,surfaceView仍然非常模糊.我正在做什么明显错误,或者有没有办法优化surfaceView?谢谢.