将imageview调整为滚动视图大小

时间:2011-07-15 02:46:52

标签: android resize imageview scrollview horizontalscrollview

我有一个带有2个Imageview的Horizo​​ntalScrollView。 Horizo​​ntalScrollView嵌入在ScrollView中。 我想如果图片太大(宽度和/或高度)以适应,它将被裁剪为ScrollView的大小(而不是屏幕大小)。 如果它更小,没有变化。

我的xml:

<ScrollView android:id="@+id/scrollView"
    android:layout_width="fill_parent" android:layout_height="wrap_content"
    android:layout_below="@id/headerappview"
    android:layout_above="@id/bottomBar"
    android:background="@color/white">

    <HorizontalScrollView android:layout_height="wrap_content"
        android:layout_below="@+id/txtAdditionalContent"
        android:id="@+id/hscrollview"
        android:paddingBottom="22px"
        android:layout_gravity="center_horizontal"
        android:layout_width="wrap_content">

        <LinearLayout android:layout_height="wrap_content"
            android:gravity="center_vertical" android:layout_width="wrap_content">

            <ImageView android:id="@+id/img2" android:src="@drawable/icon"
                android:paddingRight="25px"
                android:scaleType="fitXY"
                android:adjustViewBounds="true"
                android:cropToPadding="true" 
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"></ImageView>

            <ImageView android:id="@+id/img3" android:src="@drawable/icon"
                android:cropToPadding="true"
                android:scaleType="fitXY"
                android:adjustViewBounds="true"
                android:layout_height="wrap_content" 
                android:layout_width="wrap_content">
            </ImageView>
        </LinearLayout>

    </HorizontalScrollView>

</ScrollView>

(抱歉我的英语不好)

3 个答案:

答案 0 :(得分:1)

您能否告诉我们您是想剪裁图像还是缩放图像?

如果您只想缩放大图像并使其适合,请设置

android:cropToPadding="false" 

有关ImageView的更多信息,请here

答案 1 :(得分:1)

请将fadingEdge和fillViewport添加到scrollview和Horizo​​ntalScrollView

<ScrollView 
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"      
      android:fillViewport="true"
      android:fadingEdge="none"
      android:background="@drawable/bg_app" >

答案 2 :(得分:0)

使用此:

<ImageView android:id="@+id/img3" android:src="@drawable/icon"
    android:scaleType="centercrop"
    android:adjustViewBounds="true"
    android:layout_height="match_parent" 
    android:layout_width="wrap_content">
</ImageView>