簡體   English   中英

精確顯示可繪制圖像的大小,以用作占位符

[英]Display drawable exactly the size of the imageView to use as a placeholder

我檢查過的朋友可以繪制出與imageView大小完全相同的圖像,以用作占位符

但這沒有幫助我

我的問題是我想顯示一個與圖像大小完全相同的占位符

圖像大小是動態的,我從服務器獲取圖像的高度和寬度,以此來計算調整后的寬度和高度

例如,在列表的一行中,我必須顯示400 * 300的圖像尺寸,而在另一行中,我必須顯示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圖像視圖

從幾天開始我一直在為此苦苦掙扎,請幫助我

圖像下載前的占位符如下所示

在此處輸入圖片說明

圖片下載完成后,如下圖所示

在此處輸入圖片說明

我希望占位符應填充將要顯示的圖像的確切高度和寬度

將ImageView的比例類型設置為fitCenter嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM