我想问你是否存在于Android库“Picasso”中的广场:“http://square.github.io/picasso/”任何图像功能中心并放大以使我的图像适应所有设备。例如,这是我的Galaxy note 2上的应用程序:
是否有任何属性或任何方式可以放大图像并使用Picasso适应框架?
图片属性:
ImageView image;
String currentUrl="http://mw2.google.com/mw-panoramio/photos/medium/48958465.jpg";
image = (ImageView) v.findViewById(R.id.place_image);
Picasso.with(v.getContext())
.load(currentUrl)
.error(R.drawable.benitomussolinimarker)
.into(image);
Picasso.with(this)
.load(currentUrl)
.into(target);
private Target target = new Target()
{
@Override
public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from)
{
new Thread(new Runnable()
{
@Override
public void run()
{
File file = new File(Environment.getExternalStorageDirectory().getPath() +"/actress_wallpaper.jpg");
try
{
file.createNewFile();
FileOutputStream ostream = new FileOutputStream(file);
bitmap.compress(CompressFormat.JPEG, 75, ostream);
ostream.close();
}
catch (Exception e)
{
e.printStackTrace();
}
} //public void run
}).start();
}
@Override
public void onBitmapFailed(Drawable arg0) {
// TODO Auto-generated method stub
}
@Override
public void onPrepareLoad(Drawable arg0) {
// TODO Auto-generated method stub
}
};
ImageView XML:
<ImageView
android:id="@+id/place_image"
android:layout_width="fill_parent"
android:layout_height="150dp"
android:layout_marginBottom="5dp"
android:adjustViewBounds="true"
android:background="#222222"
android:src="@drawable/ic_launcher"/>
非常感谢你。
答案 0 :(得分:1)
您可以根据设备的高度和宽度调整图像大小。
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int height = (displaymetrics.heightPixels * 40) / 100;
int width = displaymetrics.widthPixels;
ImageView qImage = new ImageView(this);
Picasso.with(this)
.load(ServerURL.BASE_URL + "image_url")
.placeholder(R.drawable.ic_rectangle_logo)
.error(R.drawable.ic_rectangle_logo).resize(width, height)
.into(qImage);
答案 1 :(得分:1)
我解决了使用.fit()。centerCrop()这里的代码:
String currentUrl="http://upload.wikimedia.org/wikipedia/commons/5/50/Casa_Natale_Benito_Mussolini_(1).jpg";
image = (ImageView) v.findViewById(R.id.place_image);
Picasso.with(v.getContext())
.load(currentUrl)
.error(R.drawable.marker)
.fit().centerCrop() // allarga l'immagine
.into(image);
这是我的新屏幕^^