[英]How do I pass a downloaded image from one activity to the next?
我想將用戶單擊的下載圖像從活動中移至下一個。 我相信這應該在我的lambda onItemClickListenerClass中完成。
我的自定義適配器類的代碼在這里:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Movie movie = getItem(position);
if ( movie == null) return null;
ImageView imageView;
/**
* if convertView is empty, set it equal to ImageView
*/
if (convertView == null) {
imageView = new ImageView(context);
imageView.setLayoutParams(new GridView.LayoutParams(width, height));
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
} else {
imageView = (ImageView) convertView;
}
Uri coverUrl = movie.getMovieCover();
Picasso.with(context)
.load(coverUrl)
.into(imageView);
// Log.e(LOG_TAG, "URL " + url);
return imageView;
}
這是我的Object構造函數類中的代碼
public Uri getMovieCover(){
final String BASE = "http://image.tmdb.org/t/p/w185";
Uri builtUri = Uri.parse(BASE).buildUpon()
.appendEncodedPath(poster_path)
.build();
return builtUri;
}
我已將所有字符串數據捆綁到一個附加文件中並通過意圖傳遞,並且我正在考慮在此上下文中通過將圖像轉換為附加文件並通過該意圖傳遞來做相同的事情,但是我目前不知道如何實現這一點。
誰能幫助我解決這個問題? 我目前正在做Udacity Android Programmer的最終項目,所以我對android編程還是很陌生。
將Url作為字符串額外傳遞給第二活動。
在第一個活動/自定義適配器中:
String url = "http://image-url";
Intent intent = new Intent (getActivity().this, 2ndActivity.class);
intent.putExtra("image-url", url);
getActivity().startIntent(intent);
在第二活動中:
String url;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent i = getIntents();
url = i.getExtra("image-url");
Uri coverUrl = new Uri(url);
if (url.Length() > 0) {
imageView = new ImageView(context);
imageView.setLayoutParams(new GridView.LayoutParams(width, height));
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
Picasso.with(context)
.load(coverUrl)
.into(imageView);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.