Android:如何在保持纵横比的同时用图像填充屏幕并处理横向和纵向方向

时间:2014-05-07 07:59:09

标签: android image background relativelayout

我有方形图像,用作相对布局的背景。

我想拉伸图像以填充屏幕并保持纵横比。图像应居中,以便根据方向,横向或纵向裁剪掉多余部分。

我已经搜索了许多关于如何实现这一点的帖子,尝试了很多不同的东西(编程和xml),并且没有成功。

这可以在后台完成吗? 我是否需要在布局中使用ImageView? 我该怎么做?

看起来这应该是可行的,而且它在iPhone上几乎是微不足道的,但似乎是Android上的一个主要麻烦。我真的觉得有些东西我一定不能错过。

1 个答案:

答案 0 :(得分:0)

找到一个完全符合我想要的解决方案。

总是显而易见且简单 AFTER 你找到了正确的魔力。


<强> activity_instructions.xml

<ImageView
    android:id="@+id/imageView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scaleType="center" />

<强> InstructionsActivity.java

Bitmap originalBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.background);
Bitmap scaledBitmap = Bitmap.createScaledBitmap(originalBitmap, myDimension, myDimension, true);

ImageView imageView = (ImageView)findViewById(R.id.imageView);
imageView.setImageBitmap(scaledBitmap);