【问题标题】:How to display an image that is bigger than the phone screen dimensions?如何显示大于手机屏幕尺寸的图像?
【发布时间】:2012-02-02 20:56:47
【问题描述】:

我有一个问题没有找到真正一致的答案。 这就是我与你们联系的原因。

我一直在尝试为我的应用程序实现以下意义上的“取景器”效果:

我有一张巨大的图片,我希望它能够“飞”过(水平和垂直滚动直到到达边界)。到目前为止,对此(或类似问题)的所有流行答案都是使用类似于以下内容的模式:

<ScrollView...>

  <RelativeLayout ...>

    <Imageview ...>
    </Imageview>

  </RelativeLayout>

</ScrollView>

这对我不起作用,因为它缩小我试图保持原始 BIG 大小的图片,以便我可以让用户导航在它上面。

我想我的问题可以归结为:如果可能的话,如何使用 Android 视图和布局获得 Google 地图滚动功能...如果没有,您有什么建议吗?我应该更倾向于 2D Canvas 操作吗?

谢谢。

【问题讨论】:

  • 您的 xml 太简短,无法评论。添加更多细节

标签: android layout view scrollview android-canvas


【解决方案1】:

您可以指定scaleType 居中,ImageView 不缩放图像。

<ImageView  
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 

    android:scaleType="center"
    android:src="@drawable/myImage" /> 

您也可以使用HorizontalScrollView 水平滚动。

【讨论】:

  • 这正是我一直在寻找的,我需要选择性地滚动,垂直或水平,以便导航一次绑定到一个轴。很有用。问候。
【解决方案2】:

当心尝试将大图像完全加载到 RAM 中 - 请记住,位图内存只允许 20MB 左右(取决于设备)。

如果您能以某种方式将图像分解为图块,则可以使用 2D 滚动类 here 来显示它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-28
    相关资源
    最近更新 更多