首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Android中翻译宽图片作为背景

在Android中翻译宽图片作为背景
EN

Stack Overflow用户
提问于 2013-07-25 00:20:47
回答 1查看 673关注 0票数 3

我在用Android翻译非常大的图片时遇到了问题。我想要的是我的图片的高度被设置为屏幕的高度,并显示其余的宽度,而不是改变图像的比率。因为我的图像非常宽,不完整的会首先显示出来,但是随着翻译,我会慢慢地把它移动到x轴上。

我想一定有简单的方法,但我已经花了6个小时观察所有的问题,试图找出我误解的地方,因为我不能像显示的那样显示我的图片--高度设置为全屏的高度和宽度,只要合适,然后显示图片的其他部分,就像翻译的一样。

我的代码:

代码语言:javascript
复制
import android.os.Bundle;
...

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); 

ImageView imageView = (ImageView) findViewById (R.id.background);
ObjectAnimator mover = ObjectAnimator.ofFloat(imageView, "translationX", 0, 1000f);
mover.setDuration(10000);     
mover.start();
}
}

和简单的布局:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/background"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:src="@drawable/background"
        android:scaleType="centerCrop">

scaleType与centerCrop和center的区别在于,它们都是这样做的--它们保持图像的比率和高度是屏幕的高度,但是图像被切割,当我制作动画时,立即开始变成白色屏幕,就好像没有更宽的图片一样。centerInside也帮不上忙。

你能帮帮我吗?我已经在这上面浪费了很多小时了。我会很感激的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-25 01:15:10

这里的一种选择是将您的ImageView放在ScrollView中。完成此操作后,您可以创建一个定时器,例如一个TimerTask,它每隔几毫秒将图像缓慢地滚动到屏幕上。

您可以在这里找到更多关于计时器的信息:Android timer? How-to?

一旦定时器设置完毕,只需从scrollView.scrollBy(10, 10)scrollView.scrollTo(10, 10)内部调用TimerTask来移动ScrollView,这反过来就会转换您附加的ImageView

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17847009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档