Android 使用毕加索获取和传递图像URL
我试图从用户选择的所选图像中获取图像URL,这样我就可以将该字符串/URL传递给我设置的另一个片段,以便可以通过图像视图完全查看图像 我怎样才能做到这一点?谢谢 以下是SampleGridViewAdapter类:Android 使用毕加索获取和传递图像URL,android,picasso,loading-image,Android,Picasso,Loading Image,我试图从用户选择的所选图像中获取图像URL,这样我就可以将该字符串/URL传递给我设置的另一个片段,以便可以通过图像视图完全查看图像 我怎样才能做到这一点?谢谢 以下是SampleGridViewAdapter类: inal class SampleGridViewAdapter extends BaseAdapter { private final Context context; public final List<String> urls = new ArrayList<
inal class SampleGridViewAdapter extends BaseAdapter {
private final Context context;
public final List<String> urls = new ArrayList<String>();
public SampleGridViewAdapter(Context context) {
this.context = context;
// Ensure we get a different ordering of images on each run.
Collections.addAll(urls, Data.URLS);
Collections.shuffle(urls);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
SquaredImageView view = (SquaredImageView) convertView;
if (view == null) {
view = new SquaredImageView(context);
view.setScaleType(CENTER_CROP);
}
// Get the image URL for the current position.
String url = getItem(position);
// Trigger the download of the URL asynchronously into the image view.
Picasso.with(context) //
.load(url) //
.placeholder(R.drawable.placeholder) //
.error(R.drawable.error) //
.fit() //
.into(view);
return view;
}
@Override
public int getCount() {
return urls.size();
}
@Override
public String getItem(int position) {
return urls.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
}
您应该使用
片段
的参数
功能
创建片段
时,可以将URL
作为参数传递
Fragment openImage = new ImageViewPager();
Bundle b = new Bundle();
b.putString("url", DATA.URLs.get(position));
openImage.setArguments(b);
transaction.replace(R.id.content_frame, openImage);
然后当片段
膨胀时,可以得到参数字符串
Picasso.with(getActivity()).load(getArguments().getString("url")).into(IMGView);
我得到一个关于“数据”的错误,它无法解析为变量。HMM数据是什么意思?您在适配器类中编写了DATA.url。您应该能够首先访问您的列表。我之所以写入数据,是因为您在适配器中写入了数据。我想你也可以使用你的适配器。将适配器放入变量mAdapter中。然后您可以访问您的列表,如mAdapter.url.get(position)
Fragment openImage = new ImageViewPager();
Bundle b = new Bundle();
b.putString("url", DATA.URLs.get(position));
openImage.setArguments(b);
transaction.replace(R.id.content_frame, openImage);
Picasso.with(getActivity()).load(getArguments().getString("url")).into(IMGView);