2012-08-22 26 views
2

我有一个带有ViewPager的DialogFragment,它显示了一些图片。上面有一个奇怪的黑色条纹,这些图片变形的问题。将DialogFragment拟合为图像大小

这就是我现在所拥有的,正如你所看到的,图片看起来不太好,对话框顶部有一个奇怪的黑色条纹。

enter image description here

这是它应该如何看,没有黑带和画面适合屏幕的宽度。

enter image description here

我怎么能这样做?

非常感谢。

+0

您可以向我们提供您当前用作dialogfragment布局的xml吗?如果您在代码中设置任何自定义主题,请提供相关信息。 – Warpzit

回答

1

您可以设置图像视图android:scaleType="centerCrop"或者可能只是将viewpager和图像的高度设置为wrap_content。

0

你应该设置属性android:adjustViewBounds="true"在你的ImageView

+0

我做过了,但没有成功 – noloman

5

在顶部摆脱了黑框,尝试调用DialogFragment.setStyle(int style, int theme)方法在DialogFragment.onCreate(Bundle savedInstanceState)方法,例如setStyle(DialogFragment.STYLE_NO_TITLE, 0)setStyle(DialogFragment.STYLE_NO_FRAME, 0)

我也有像你得到DialogFragment是一定的宽度的问题。我的DialogFragment(如我的DialogFragment的xml布局文件中指定的)的layout_width值似乎在某处被覆盖,有时我的DialogFragment会展开,有时会根据内容而缩小。我所知道的一些黑客攻击,但我已经能够提出的最好的方法是在我的DialogFragment.onResume()方法中调用getDialog().getWindow().setLayout(int width, int height)方法,例如, getDialog().getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)

要调整图像大小以适应您的DialogFragment,请使用ImageView.setScaleType(ImageView.ScaleType scaleType)方法,因为此线程中的其他答案已提及。