2016-12-29 62 views
1

其實我使用UIL從我的url下載圖像。我用下面的代碼來下載。但不是我無法得到如何顯示在我的Mainactivity下載的圖像。我注意到的一件事是它下載緩存中的圖像,所以我得到了該文件的路徑爲/ storage/android/data/test/cache/1235456。現在你可以指導我如何設置這個路徑到圖像源,以便我可以在應用程序啓動過程中加載。或者還有其他更好的方法可以將這些圖像放在imageview中。我讀了UIL的代碼和他們的示例應用程序,有點困惑。由UIL下載的緩存中的圖像的SetImageview資源lib

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    ImageView ivUIL = (ImageView) findViewById(R.id.imageview1); 
    String url = "myurl"; 
    ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext()).build(); 
    ImageLoader.getInstance().init(config); 
    ImageLoader.getInstance().displayImage(url,ivUIL); 
} 

回答

0

派頭,你可以嘗試這樣它可以幫助我..下面類

ImageView ivUIL = (ImageView) findViewById(R.id.ivUIL); 

String url = "http://innovativedevicesapps.me/Images/big banner.jpg"; 


ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext()).build(); 
    ImageLoader.getInstance().init(config); 
    ImageLoader.getInstance().displayImage(GlobleArray.array.get(position).getStrUrl(), ivUIL); 

OR

ImageLoader.getInstance().displayImage(url , ivUIL); 
+0

無圖像。我用這個代碼。 – Panache

+1

你爲什麼不使用畢加索lib ..? –

+0

非常感謝,互聯網連接造成了問題。 – Panache

1

使用使用UIL

AnimateFirstDisplayListener載入圖像.java

public class AnimateFirstDisplayListener extends SimpleImageLoadingListener { 

    public static final List<String> displayedImages = Collections 
      .synchronizedList(new LinkedList<String>()); 

    @Override 
    public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) { 
     if (loadedImage != null) { 
      ImageView imageView = (ImageView) view; 
      boolean firstDisplay = !displayedImages.contains(imageUri); 
      if (firstDisplay) { 
       FadeInBitmapDisplayer.animate(imageView, 500); 
       displayedImages.add(imageUri); 
      } 
     } 
    } 
} 

DisplayImageOption.java

public class DisplayImageOption { 

    public static DisplayImageOptions getDisplayImage() { 

     DisplayImageOptions options = new DisplayImageOptions.Builder().showImageOnLoading(R.mipmap.ic_launcher) 
       .showImageForEmptyUri(R.mipmap.ic_launcher).showImageOnFail(R.mipmap.ic_launcher) 
       .cacheInMemory(true).cacheOnDisk(true).considerExifParams(true).build(); 

     // .displayer(new RoundedBitmapDisplayer(0)) 

     return options; 

    } 
} 

UILApplication.java

public class UILApplication extends Application { 

    public UILApplication() { 
     super(); 
    } 

    @Override 
    protected void attachBaseContext(Context base) { 
     super.attachBaseContext(base); 
    } 

    @Override 
    public void onCreate() { 
     super.onCreate(); 
     initImageLoader(getApplicationContext()); 
    } 

    public static void initImageLoader(Context context) { 
     ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context) 
       .threadPriority(Thread.NORM_PRIORITY - 2).denyCacheImageMultipleSizesInMemory() 
       .diskCacheFileNameGenerator(new Md5FileNameGenerator()).diskCacheSize(50 * 1024 * 1024) 
       .tasksProcessingOrder(QueueProcessingType.LIFO).writeDebugLogs().build(); 

     ImageLoader.getInstance().init(config); 
    } 

} 

最後使用以下代碼來加載圖像

/*To Apply in Code*/ 
ImageLoader.getInstance().displayImage("Your_Url_of_Image" 
    , imageView 
    , DisplayImageOption.getDisplayImage(), 
    new AnimateFirstDisplayListener()); 

不要忘了寫在AndroidManifest應用程序文件的文件名

<application 
    android:name="com.example.UILApplication" 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme">