[英]How to dynamically display images in Android
我是Android新手,想在循環中顯示圖片。 我可以在循環外成功顯示它,但不能在循環內顯示它。 除了content.append(nn2 [2] +“ \\ n”),我想將這2條代碼行實現到底部代碼。希望你們理解:
ImageView i2 = (ImageView)findViewById(R.id.img2);
bitmap = BitmapFactory.decodeStream((new URL ("httpS://graph.facebook.com/497305810301446/picture?type=large")).openConnection().getInputStream());
i2.setImageBitmap(bitmap);
//layout4.addView(i2);
下面是我要顯示圖像的循環:
Url=new URL( "http://xx.xx.xx.xx/abc/users/get_fb.json?term="+searchValue);
urlConnection = (HttpURLConnection) Url.openConnection();
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
// InputStream in = urlConnection.getInputStream();
Log.d("hello","world");
//InputStreamReader isw = new InputStreamReader();
SetServerString = bufferedReader.readLine();
Log.d("hello",SetServerString);
String[] nn=SetServerString.split("name");
String nn2[];
String nn3,nn4;
// JSONObject obj = new JSONObject(SetServerString);
content.setText("");
for(int a=0;a<nn.length;a++){
// nn2=nn[a].split(",");
// nn3=nn2[0].replaceAll("\":\"", "");
nn4 = nn[a].replaceAll("[id\\:\\}\\{\\[\\]\"]", "");
nn2 = nn4.split(",");
// nn3=nn2[1].replaceAll("[\\:\\}\\{\\[\\]\"]","");
// content.append(nn2.length+" \n ");
int p=1;
for (int i = 0; i < nn2.length && nn2.length > 1; i++) {
if(p==1) {
content.append(nn2[0] + "\n");
if (nn2.length > 2) {
content.append(nn2[2] + "\n");
} else {
content.append(nn2[1] + "\n");
}
p = 0;
}
}
使用Picasso庫。 它非常容易處理顯示,下載和緩存圖像。
使用畢加索,您只需鍵入:
Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
這就是加載單個圖像的全部。
如果要加載許多圖像,最好使用ListView
並創建特定的適配器。 之后,您可以在適配器內使用Picasso。
您可以使用任何畢加索或通用圖像加載器
添加通用圖像加載器jar(Google和下載)
並使用方法
/**Load initially other pics**/
public void loadPic(String url)
{
com.nostra13.universalimageloader.core.ImageLoader imageLoader = com.nostra13.universalimageloader.core.ImageLoader.getInstance();
imageLoader.displayImage(url, imageview, null, new ImageLoadingListener() {
@Override
public void onLoadingStarted(String imageUri, View view) {
}
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
imageview.setImageResource(R.drawable.errorimg);
}
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
imageview.setImageBitmap(loadedImage);
}
@Override
public void onLoadingCancelled(String imageUri, View view) {
imageview.setImageResource(R.drawable.defaultimg);
}
}, new ImageLoadingProgressListener() {
@Override
public void onProgressUpdate(String imageUri, View view, int current, int total) {
}
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.