【问题标题】:I'm having trouble creating an automatic slideshow in droid我在 droid 中创建自动幻灯片时遇到问题
【发布时间】:2012-03-01 22:43:33
【问题描述】:

当我打开 droid 时,我不想要任何按钮,我只想自动显示一系列图像,每个图像在几秒钟后被另一个图像替换,一旦显示所有图像,它就会循环回第一个图片。我还是机器人开发的新手,我显然遗漏了一些东西。任何帮助将不胜感激。

我的 java 文件

public class Slidingpics2Activity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    ImageView image = (ImageView) findViewById(R.id.treat);
    image.setBackgroundResource(R.drawable.theanime);

    AnimationDrawable Anime = (AnimationDrawable) image.getBackground();
    Anime.start();

}

}

我把 theanime.xml 文件放在 drawable 文件夹中

 <?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" 
android:oneshot="false">

    <item android:drawable="@drawable/image1" android:duration="1000" />
    <item android:drawable="@drawable/image2" android:duration="1000" />
    <item android:drawable="@drawable/image3" android:duration="1000" />
    <item android:drawable="@drawable/image4" android:duration="1000" />
</animation-list>

之后我的布局 main.xml 看起来像这样

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<ImageView
        android:id="@+id/treat" 
        android:layout_height="match_parent"
        android:layout_width="match_parent"
        />

</LinearLayout>

【问题讨论】:

    标签: android animation slideshow drawable


    【解决方案1】:

    听起来你需要的是ViewFlipper:

    简单的 ViewAnimator 将在两个或多个视图之间进行动画处理 已添加到其中。一次只显示一个孩子。如果 请求,可以定期在每个孩子之间自动翻转 间隔

    【讨论】:

    • 酷,我将 ImageView 更改为 Viewflipper,现在我在启动应用程序时看到了第一张图片,但现在由于某种原因它没有切换到第二张图片
    • 您需要在 xml 中使用android:autoStart="true" 和android:flipInterval="interval" 设置自动启动和翻转间隔变量,或者从您的java 代码中设置:flipper.setFlipInterval(milliseconds) 和setAutoStart(true)(或startFlipping())
    • 尝试了 setAutoStart(true) 和 'startFlipping()' 我仍然有同样的问题 这就是我设置 'ViewFlipper image = (ViewFlipper) findViewById(R .id.treat); image.setBackgroundResource(R.drawable.theanime); image.setFlipInterval(5000); image.setAutoStart(true); } }'
    • 啊,我明白了。您应该使用 setImageResource()/android:src="" 在作为 ViewFlipper 的子级放置的图像视图上设置图像/s。我在这里为您找到了一个示例:android-pro.blogspot.com/2010/09/…。这里使用textviews,但大体原理是一样的。
    猜你喜欢
    • 2018-09-01
    • 2019-12-04
    • 1970-01-01
    • 2011-12-30
    • 1970-01-01
    • 1970-01-01
    • 2015-04-21
    • 1970-01-01
    • 2019-07-16
    相关资源
    最近更新 更多