2017-12-15 20 views
2

私は動的ソースから画像を読み込んで、アプリケーションに読み込んでいます。しかし、時には画像が非常に小さく、私のアプリで悪く見える。私がしたいのは画像のサイズを取得することで、5x5より小さい場合はImageViewをまったく表示しないでください。AndroidでGlideを使用して元の画像サイズを取得するには?

これを行うには?

sizeReadyCallbackを使用すると、imageではなくImageViewのサイズが返されます。リクエストリスナーを使用すると、0,0が返されます。

+0

Webサービス経由でイメージを取得している場合(つまり、「JSON」から)これもウェブ側から取得する場合 –

+0

いいえ私はあなたが見ることができるようにURLから取得しています。 –

+0

yaaですが、どこからこのURLを取得しているのですか ? –

答えて

0

高さと幅を取得するにはonResourceを試してください。このことについて、私はわからないが、あなたはこの行います:

@Override 
     public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) { 
      //This returns 0,0 
      int width = glideDrawable.getIntrinsicWidth(); 
    int height = glideDrawable.getIntrinsicHeight(); 
      return false; 
     } 
+0

それは動作しませんでした。イメージビューサイズをまだ取得しています。 –

0

この1試してみてください

Glide.with(getContext().getApplicationContext()) 
    .asBitmap() 
    .load(path) 
    .into(new SimpleTarget<Bitmap>() { 
     @Override 
     public void onResourceReady(Bitmap bitmap, 
            Transition<? super Bitmap> transition) { 
      int w = bitmap.getWidth(); 
      int h = bitmap.getHeight() 
      mImageView.setImageBitmap(bitmap); 
     } 
    }); 

はポイントが前に設定されたビットマップを取得している:グライドv4のため

Glide.with(this).load(uri).into(imageView).getSize(new SizeReadyCallback() { 
    @Override 
    public void onSizeReady(int width, int height) { 
     //before you load image LOG height and width that u actually got? 
     mEditDeskLayout.setImageSize(width,height); 
    } 
}); 
+0

これは、imageviewのサイズを返します。 –

+0

は私に尋ねていますか?あなたは私に言った? –

関連する問題