图片查看器

mac2024-05-22  30

                                          图片查看器

1.把图片存成list集合传入进入就可以了

package cn.kaitong.com.module.acceptcheck.utils; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentStatePagerAdapter; import android.support.v4.content.ContextCompat; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.view.View; import android.view.Window; import android.widget.TextView; import java.util.ArrayList; import java.util.List; import cn.kaitong.com.R; import cn.kaitong.com.module.ProtectPower.yunwei.bean.TeYunXunShiDetailsBean; import cn.kaitong.com.module.ProtectPower.yunwei.largepic.ImageDetailFragment; import cn.kaitong.com.util.ImageUrlHelp; import qiu.niorgai.StatusBarCompat; /** * 图片查看器 */ public class ImagePagerActivitycheck1 extends FragmentActivity { private static final String STATE_POSITION = "STATE_POSITION"; public static final String EXTRA_IMAGE_INDEX = "position"; public static final String EXTRA_IMAGE_URLS = "image_urls"; public static final String EXTRA_IMAGE_FLAG = "flag"; private ViewPager mPager; private int pagerPosition; private TextView indicator; private TextView tv_time; private TextView tv_msg; private String flag; private List<String> imgLists = new ArrayList<String>(); private List<String> timeLists = new ArrayList<>(); private List<String> msgLists = new ArrayList<>(); private TextView save_pic; private boolean showSave = true; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); StatusBarCompat.setStatusBarColor(this, ContextCompat.getColor(this, R.color.theme1),0); setContentView(R.layout.image_detail_pager); showSave = getIntent().getBooleanExtra("showSave", false); pagerPosition = getIntent().getIntExtra(EXTRA_IMAGE_INDEX, 0); // flag = getIntent().getStringExtra(EXTRA_IMAGE_FLAG); ArrayList<String> imgList = (ArrayList<String>) getIntent() .getSerializableExtra("picList"); ArrayList<String> urls = new ArrayList<>(); for (int i = 0; i < imgList.size(); i++) { //String url = ImageUrlHelp.getPicURl(imgList.get(i).getPath()); urls.add(imgList.get(i)); // timeLists.add(imgList.get(i).getPart()); // msgLists.add(imgList.get(i).getOperaclassName()+" "+imgList.get(i).getSubstationName() + " " + imgList.get(i).getAirTemperature() + "℃"); } if (urls != null) { imgLists.clear(); imgLists.addAll(urls); } mPager = (ViewPager) findViewById(R.id.pager); ImagePagerActivitycheck1.ImagePagerAdapter mAdapter = new ImagePagerActivitycheck1.ImagePagerAdapter( getSupportFragmentManager()); mPager.setAdapter(mAdapter); indicator = (TextView) findViewById(R.id.indicator); tv_time = (TextView) findViewById(R.id.tv_time); tv_msg = (TextView) findViewById(R.id.tv_msg); save_pic = (TextView) findViewById(R.id.save_pic); if (!showSave) { save_pic.setVisibility(View.GONE); } else { save_pic.setVisibility(View.VISIBLE); // save_pic.setOnClickListener(new OnClickListener() { // // @Override // public void onClick(View arg0) { // new Thread(new Runnable() { // // @Override // public void run() { // final String localPath = PathUtil.getInstance().getExtenalImagePath()+File.separator+(imgLists.get(mPager.getCurrentItem()).endsWith(".gif")?EaseVoiceRecorder.getFaceFileName((String)SharedPreferencesUtils.getParam(MyApplication.getApplication(), "userid", "")):EaseVoiceRecorder.getPictureName((String)SharedPreferencesUtils.getParam(MyApplication.getApplication(), "userid", ""))); // FileUtils.downloadFile(imgLists.get(mPager.getCurrentItem()), localPath, new ProgressListener() { // // @Override // public void setProgress(int pro) { // boolean isOver = true; // if(pro == 100 && isOver){ // isOver = false; // MyApplication.getApplication().getMainThreadHandler().post(new Runnable() { // // @Override // public void run() { // UIHelper.ToastMessage(ImagePagerActivity1.this, "保存完成"); // Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); // Uri uri = Uri.fromFile(new File(localPath)); // intent.setData(uri); // sendBroadcast(intent); // } // }); // } // } // // @Override // public void setMax(int max) { // // TODO Auto-generated method stub // // } // }); // // } // }).start(); // } // }); } CharSequence text = getString(R.string.viewpager_indicator, 1, mPager .getAdapter().getCount()); indicator.setText(text); // 更新下标 mPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageScrollStateChanged(int arg0) { } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { } @Override public void onPageSelected(int arg0) { CharSequence text = getString(R.string.viewpager_indicator, arg0 + 1, mPager.getAdapter().getCount()); indicator.setText(text); // tv_time.setText(timeLists.get(arg0)); // tv_msg.setText(msgLists.get(arg0)); } }); if (savedInstanceState != null) { pagerPosition = savedInstanceState.getInt(STATE_POSITION); } mPager.setCurrentItem(pagerPosition); // tv_time.setText(timeLists.get(pagerPosition)); // tv_msg.setText(msgLists.get(pagerPosition)); } @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putInt(STATE_POSITION, mPager.getCurrentItem()); } private class ImagePagerAdapter extends FragmentStatePagerAdapter { public ImagePagerAdapter(FragmentManager fm) { super(fm); } @Override public int getCount() { if (imgLists.size() > 0) { return imgLists.size(); } return 0; } @Override public Fragment getItem(int position) { String url = null; if (imgLists != null && imgLists.size() > 0) { url = imgLists.get(position); } return ImageDetailFragment.newInstance(url); } } }

 

最新回复(0)