ViewFlipper 只有 1 种布局?

发布于 2024-12-07 07:15:22 字数 3014 浏览 2 评论 0原文

以下是用于我的活动的 xml 代码/布局:

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

<ViewFlipper
android:layout_margin="6dip"
android:id="@+id/layoutswitcher"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<RelativeLayout android:layout_width="match_parent" 
android:id="@+id/relativeLayout1"  android:layout_height="match_parent">

    <TextView android:textSize="27dp" android:text="Word" 
    android:layout_width="wrap_content" android:layout_height="wrap_content" 
    android:textColor="@color/black" android:id="@+id/wordText" 
   android:layout_alignParentTop="true" android:layout_centerHorizontal="true" 
    android:layout_marginTop="54dp"></TextView>

    <TextView android:textSize="20dp" android:text="Meaning" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:textColor="@color/black" android:id="@+id/meaningText" 
     android:layout_below="@+id/wordText" android:layout_alignParentLeft="true" 
     android:layout_marginTop="34dp"></TextView>

    <EditText android:id="@+id/meaningBox" android:layout_width="wrap_content" 
     android:editable="false" android:layout_height="wrap_content" 
     android:layout_below="@+id/meaningText" android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true">
     <requestFocus></requestFocus>
    </EditText>

    <TextView android:textSize="20dp" android:text="Usage" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:textColor="@color/black" android:id="@+id/usageText" 
     android:layout_below="@+id/meaningBox" android:layout_alignParentLeft="true"> 
     </TextView>

    <EditText android:id="@+id/usageBox" android:layout_width="wrap_content" 
      android:editable="false" android:layout_height="wrap_content" 
      android:layout_below="@+id/usageText" android:layout_alignParentLeft="true" 
      android:layout_alignParentRight="true"></EditText>

    <CheckBox style="?android:attr/starStyle" android:layout_width="wrap_content"     
      android:layout_height="wrap_content" android:id="@+id/bookmark" 
      android:layout_alignBottom="@+id/wordText"          
      android:layout_toRightOf="@+id/wordText">
    </CheckBox>

</RelativeLayout>

</ViewFlipper>
</LinearLayout>

我在 viewflipper 中只有 1 个布局。当用户在屏幕上滑动手指以获取下一个和上一个时,我仅更改相同布局中的值。 然后我为下一个和上一个添加了动画。我正在使用以下代码执行此操作,

vs.setInAnimation(this, R.anim.in_animation1);
vs.setOutAnimation(this, R.anim.out_animation1);
vs.showNext();

在此动画中,无法按照动画 xml 文件中的说明工作。 当用户滑动第一个视图时,它不会消失,它只是消失,然后下一个视图出现。 但是当我在视图翻转器中添加另一个布局时,相同的动画文件正在工作。 谁能告诉我有什么问题吗? 或者当视图翻转器中只有一种布局时我应该如何工作?

Following is the xml code/ layout used for my activity:

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

<ViewFlipper
android:layout_margin="6dip"
android:id="@+id/layoutswitcher"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<RelativeLayout android:layout_width="match_parent" 
android:id="@+id/relativeLayout1"  android:layout_height="match_parent">

    <TextView android:textSize="27dp" android:text="Word" 
    android:layout_width="wrap_content" android:layout_height="wrap_content" 
    android:textColor="@color/black" android:id="@+id/wordText" 
   android:layout_alignParentTop="true" android:layout_centerHorizontal="true" 
    android:layout_marginTop="54dp"></TextView>

    <TextView android:textSize="20dp" android:text="Meaning" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:textColor="@color/black" android:id="@+id/meaningText" 
     android:layout_below="@+id/wordText" android:layout_alignParentLeft="true" 
     android:layout_marginTop="34dp"></TextView>

    <EditText android:id="@+id/meaningBox" android:layout_width="wrap_content" 
     android:editable="false" android:layout_height="wrap_content" 
     android:layout_below="@+id/meaningText" android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true">
     <requestFocus></requestFocus>
    </EditText>

    <TextView android:textSize="20dp" android:text="Usage" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:textColor="@color/black" android:id="@+id/usageText" 
     android:layout_below="@+id/meaningBox" android:layout_alignParentLeft="true"> 
     </TextView>

    <EditText android:id="@+id/usageBox" android:layout_width="wrap_content" 
      android:editable="false" android:layout_height="wrap_content" 
      android:layout_below="@+id/usageText" android:layout_alignParentLeft="true" 
      android:layout_alignParentRight="true"></EditText>

    <CheckBox style="?android:attr/starStyle" android:layout_width="wrap_content"     
      android:layout_height="wrap_content" android:id="@+id/bookmark" 
      android:layout_alignBottom="@+id/wordText"          
      android:layout_toRightOf="@+id/wordText">
    </CheckBox>

</RelativeLayout>

</ViewFlipper>
</LinearLayout>

I have only 1 layout in viewflipper. I change only values in same layout when user swipes finger on screen for next and previous.
Then i have added animations for next and previous. I am doing it with following code

vs.setInAnimation(this, R.anim.in_animation1);
vs.setOutAnimation(this, R.anim.out_animation1);
vs.showNext();

In this animations are not working as stated in animations xml file.
When user swipes 1st view is not fading away , it just disappears and next view come.
But same animations files are working when I add another layout in view flipper.
Can anyone tell me what is problem ?
or How should I work when there is only one layout in view flipper ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

柠檬心 2024-12-14 07:15:22

我很困惑为什么 ViewFlipper 内部只有 1 个视图。我相信翻转器的目的是在几种视图之间进行转换。

您的 java 代码看起来是正确的,但是当您调用 vs.showNext() 时,您的 ViewFlipper 没有任何内容可以转换到。没有过渡意味着现在有动画。

I'm confused about why you only have 1 view inside of the ViewFlipper. I believe that the point of the flipper is to transition between several views.

Your java code looks correct, however when you call vs.showNext() there is nothing there for your ViewFlipper to transition to. No transitions means now animations.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文