Android:Scrollview中的ImageSwitcher将图像放在屏幕底部

时间:2011-07-08 01:01:55

标签: android android-layout scrollview imageswitcher

所以我创建了一个简单的小应用程序,在ImageSwitcher中包含相当高的图像,由于图像的高度,我将ImageSwitcher包装在ScrollView中(因此整个图像最终可见)。有趣的是,Image并不是从ScrollView的顶部开始,而是从底部开始。滚动一切正常,但我只是好奇为什么图像的顶部几乎位于设备屏幕的底部。

有谁知道造成这种行为的原因是什么?

我的图像是大型可绘制的(800x600),显然是为了适应设备窗口而按比例缩小,但这仍然无法解释为什么图像上方有如此大量的空白空间。

我更愿意只滚动ImageSwitcher本身但到目前为止还没有成功。

这是我的布局:

<ScrollView android:id="@+id/scroll"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent">
     <ImageSwitcher android:id="@+id/switcher"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:background="#FFFFFF"/>
</ScrollView>

2 个答案:

答案 0 :(得分:1)

我怀疑是由于原始图像的分辨率而显示图像。我设置ImageView.setScaleType(ScaleType.FIT_START);,这似乎解决了问题。

答案 1 :(得分:1)

除了setScaleType之外,尝试调用ImageView.setAdjustViewBounds(true)。如果ImageView(在ImageSwitcher内部)仍有问题需要占用更多空间,请尝试使用SDK工具中的hierarchyviewer查看ImageView。