Help to transfer a picture from VK to ViewPager ....
I pass this way:
ArrayList<String> imgUrls1 = new ArrayList<>(); imgUrls1.add(vkPhoto.photo_604); protected void onItemImageClick(Context context, int position, List<String> list) { Intent intent = new Intent(context, FullPhoto.class); intent.putStringArrayListExtra(Constants.BUNDLE_BITMAP, imgUrls1); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } }; and get it like this:
public class FullPhoto extends AppCompatActivity { private ViewPager mPager; private PagerAdapter mAdapter; Context сontext; ArrayList<String> ar1; private TextView tv_photo_number; private int mCurrentPhoto; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_full_photo); ActionBar bar = getSupportActionBar(); bar.hide(); tv_photo_number = (TextView) findViewById(R.id.tv_photo_number); ar1 = getIntent().getExtras().getStringArrayList(Constants.BUNDLE_BITMAP); mPager = (ViewPager) findViewById(R.id.pager); mAdapter = new FullPhotoPagerAdapter(getSupportFragmentManager()); mPager.setAdapter(mAdapter); mPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { setFormattedPageInfo(position); } @Override public void onPageScrollStateChanged(int state) { } }); mPager.setCurrentItem(mCurrentPhoto); if (mCurrentPhoto == 0) { setFormattedPageInfo(mCurrentPhoto); } } private class FullPhotoPagerAdapter extends FragmentPagerAdapter { public FullPhotoPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { return FullPhotoFragment.newInstance(position, ar1.get(position), ar1.size()); } @Override public int getCount() { return ar1.size(); } } private void setFormattedPageInfo(int position) { String pageInfo = String.format(getResources().getString(R.string.photo_number), position + 1, ar1.size()); tv_photo_number.setText(pageInfo); } } ========================
public class FullPhotoFragment extends Fragment { private String mUrl; private Context context; public static FullPhotoFragment newInstance(int page, String url, int pageCount) { FullPhotoFragment fragment = new FullPhotoFragment(); Bundle args = new Bundle(); args.putString(Constants.BUNDLE_BITMAP, url); fragment.setArguments(args); return fragment; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Bundle args = getArguments(); if (args != null) { mUrl = args.getString(Constants.BUNDLE_BITMAP); } } @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_full_photo, container, false); ImageView iv_full_photo = (ImageView) view.findViewById(R.id.iv_full_photo); Picasso.with(context).load(mUrl).placeholder(R.drawable.ic_ab_app).into(iv_full_photo); return view; } } The problem is that the pictures are opened with an offset on the news .....