2015-07-12 25 views
1

朋友我已經檢查get drawable exactly the size of the imageView to use as a placeholder顯示繪製完全的ImageView的大小作爲佔位符使用

但它並不能幫助我

我的問題是我想完全圖像尺寸的顯示佔位符

圖像大小是動態的,我正在從服務器的圖像的高度和寬度,使用我計算列表中的一個行調節的寬度和高度

例如,我有顯示400 * 300大小的IM年齡和另一行我必須顯示700 * 500大小的圖像

現在我想佔地面積應填補區域400 * 300在第一種情況下和700 * 500在第二種情況下,這件事我不能夠實現,

我該如何做到這一點?

mDisplayImageOptions = new DisplayImageOptions.Builder() 
       .resetViewBeforeLoading(true) 
       .imageScaleType(ImageScaleType.EXACTLY) 
       .showImageOnLoading(R.drawable.test_user) 
       .cacheInMemory(true) 
       .cacheOnDisk(true) 
       .build(); 



    mAdjustedWidth = mWindowWidth - 10; 
      mAdjustedHeight = 400; 
      try { 
       int width = cursor.getInt(cursor.getColumnIndexOrThrow(TalkTable.TALK_TWIDTH)); 
       if(width > 0) { 
        mAdjustedHeight = (mAdjustedWidth * cursor.getInt(cursor.getColumnIndexOrThrow(TalkTable.TALK_THEIGHT)))/width; 
       } 
      }catch (Exception ex){ 
       ex.printStackTrace(); 
      } 
      talkImageView.getLayoutParams().height = mAdjustedHeight; 
      talkImageView.getLayoutParams().width = mAdjustedWidth; 
      talkImageView.requestLayout(); 

mImageLoader.displayImage(talkImageThumbnil,talkImageView,mTalksDisplayImageOptions,new SimpleImageLoadingListener(){ 
       @Override 
       public void onLoadingStarted(String imageUri, View view) { 
        // ProgressBar progressBar1 = (ProgressBar)progressBar.getTag(); 
        //progressBar1.setVisibility(View.VISIBLE); 
        talkImageView.getLayoutParams().height = mAdjustedHeight; 
        talkImageView.getLayoutParams().width = mAdjustedWidth; 
        talkImageView.requestLayout(); 
        talkImageView.setImageResource(R.drawable.image_place_holder); 
        Log.d(TAG, " Progress bar visisble "); 
       } 

       @Override 
       public void onLoadingFailed(String imageUri, View view, FailReason failReason) { 
        //ProgressBar progressBar1 = (ProgressBar)progressBar.getTag(); 
        //progressBar1.setVisibility(View.GONE); 
       } 

       @Override 
       public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) { 
        //ProgressBar progressBar1 = (ProgressBar)progressBar.getTag(); 
        //progressBar1.setVisibility(View.GONE); 
       } 

       @Override 
       public void onLoadingCancelled(String imageUri, View view) { 
        //ProgressBar progressBar1 = (ProgressBar)progressBar.getTag(); 
        //progressBar1.setVisibility(View.GONE); 
       } 

      }); 

XML圖片瀏覽

我從天掙扎爲此,請幫我

佔位這個樣子的圖像下載之前

enter image description here

一旦Image下載了它OK像下面的圖像

enter image description here

我想這個地方持有者將填補是關於圖像的精確高度和寬度顯示

+0

「我的問題是我想顯示一個完全符合圖像大小的佔位符」什麼圖像大小?你的問題實際上是什麼? – pskink

+0

@psink圖像大小是動態的它可以是任何大小的服務器發送給我的大小,我計算它並相應地調整高度 – Naga

+0

高度是什麼?張貼一些圖片來描述你的問題? – pskink

回答

0

設置你的ImageView到fitCenter規模類型?

+0

不,它不是中心 – Naga

+0

我建議使用fitCenter,因爲它將圖像調整爲ImageView,如果有必要,可以在保持寬高比的同時將其放大。 – BladeCoder

+0

我做到了,但仍然行爲相同 – Naga