`

非viewFlipper滑动切换layout

阅读更多
内容实现如题所示功能:
1. slideExample.java
package com.example;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.AnimationUtils;
import android.widget.Button;

public class slideExample extends Activity {

	private Button aboutButton, backButton;
	private ViewGroup container1, container2;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		// audioMa = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
		container1 = (ViewGroup) findViewById(R.id.container1);
		container2 = (ViewGroup) findViewById(R.id.container2);

		showWin1();
	}

	public void showWin1() {
		aboutButton = (Button) findViewById(R.id.about_btn);
		aboutButton.setOnClickListener(new View.OnClickListener() {
			public void onClick(View view) {
				container1.setAnimation(AnimationUtils.loadAnimation(
						slideExample.this, R.anim.push_left_out));
				container2.setVisibility(View.VISIBLE);
				container2.setAnimation(AnimationUtils.loadAnimation(
						slideExample.this, R.anim.push_right_in));
				container1.setVisibility(View.GONE);
				showWin2();
			}
		});
	}

	public void showWin2() {
		backButton = (Button) findViewById(R.id.back_btn);
		backButton.setOnClickListener(new View.OnClickListener() {
			public void onClick(View view) {
				container1.setVisibility(View.VISIBLE);
				container1.setAnimation(AnimationUtils.loadAnimation(
						slideExample.this, R.anim.push_left_in));
				container2.setAnimation(AnimationUtils.loadAnimation(
						slideExample.this, R.anim.push_right_out));
				container2.setVisibility(View.GONE);
				showWin1();
			}
		});
	}
}

2.main.xml文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:layout_width="fill_parent" android:layout_height="fill_parent"
	android:id="@+id/container">

	<RelativeLayout android:layout_width="fill_parent"
		android:id="@+id/container1" android:layout_height="fill_parent"
		android:visibility="visible">

		<ImageView android:layout_width="wrap_content"
			android:layout_height="wrap_content" android:background="@drawable/one" />

		<Button android:text="i" android:id="@+id/about_btn"
			android:textColor="@drawable/red" android:layout_width="40dip"
			android:layout_height="wrap_content"
			android:layout_alignParentBottom="true"
			android:layout_alignParentRight="true" android:layout_marginRight="15dip" />

	</RelativeLayout>

	<RelativeLayout android:layout_width="fill_parent"
		android:background="@drawable/gray" android:id="@+id/container2"
		android:visibility="gone" android:layout_height="fill_parent">
		<ImageView android:layout_width="wrap_content"
			android:layout_height="wrap_content" android:background="@drawable/three" />

		<Button android:text="@string/back" android:id="@+id/back_btn"
			android:textColor="@drawable/red" android:layout_width="40dip"
			android:layout_height="wrap_content"
			android:layout_alignParentBottom="true"
			android:layout_alignParentRight="true" android:layout_marginRight="15dip" />
	</RelativeLayout>

</RelativeLayout>



3.push_left_in.xml(anim文件夹中)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
	<translate android:fromXDelta="-100%p" android:toXDelta="0"
		android:duration="1000" />

</set>


4.push_left_out.xml(anim文件夹中)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
	<translate android:fromXDelta="0" android:toXDelta="-100%p"
		android:duration="1000" />

</set>



5.push_right_in.xml(anim文件夹中)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
	<translate android:fromXDelta="100%p" android:toXDelta="0"
		android:duration="1000" />
</set>

6.push_right_out.xml(anim文件夹中)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
	<translate android:fromXDelta="0" android:toXDelta="100%p"
		android:duration="1000" />
</set>


资源文件可以自己添加2张即可







分享到:
评论

相关推荐

    android 利用ViewFlipper来实现滑动切换

    在Android开发中,ViewFlipper是一个非常有用的布局组件,它允许开发者轻松地实现在多个视图之间进行滑动切换的效果。这种效果常见于各种应用程序,如轮播图、页面导航等。下面我们将深入探讨如何利用ViewFlipper...

    ViewFlipper实现界面滑动切换

    ViewFlipper是Android SDK提供的一款用于在多个视图之间进行滑动切换的控件,它非常适合于创建动态的用户界面,比如图片轮播、广告横幅等场景。在这个主题中,我们将深入探讨如何使用ViewFlipper来实现界面的滑动...

    音乐播放器 ViewFlipper 滑动屏幕

    在Android开发中,ViewFlipper是一个非常有用的布局组件,它允许开发者轻松地实现视图间的滑动切换效果,常用于创建轮播图、卡片翻转等动态界面。在这个"音乐播放器 ViewFlipper 滑动屏幕"的主题中,我们可以探讨...

    Android ViewFlipper实现页面的滑动切换

    下面将详细探讨如何在Android应用中使用ViewFlipper来实现页面的滑动切换。 首先,我们需要了解ViewFlipper的基本结构。一个ViewFlipper可以包含多个子视图,如ImageView、TextView或自定义布局。在初始化时,...

    ViewFlipper实现左右切换

    在Android开发中,ViewFlipper是一个非常实用的控件,它允许我们轻松地在多个视图之间进行切换,常用于实现类似轮播图或者卡片左右滑动的效果。本篇文章将详细解析如何使用ViewFlipper来实现左右切换的功能,并结合...

    android viewflipper 图片滑动demo

    在Android开发中,ViewFlipper是一个非常有用的布局组件,它允许开发者轻松地在多个视图之间切换,常用于实现滑动浏览效果,如教程、引导页或者轮播图等。本示例“android viewflipper 图片滑动demo”正是这样一个...

    ViewFlipper实现滑动轮播

    在Android开发中,ViewFlipper是一个非常有用的布局组件,它允许开发者轻松地实现视图间的切换,例如在图片轮播、广告展示等场景下。本文将深入探讨如何使用ViewFlipper来实现滑动轮播效果,并结合实际示例进行详细...

    Android 滑动效果ViewFlipper

    **Android滑动效果ViewFlipper详解** 在Android开发中,我们常常需要实现各种动画效果来提升用户体验,其中滑动切换视图是一种常见...在实际项目中,结合其他组件和动画库,`ViewFlipper`可以满足各种滑动切换的需求。

    安卓开发-ViewFlipper水平滑动.zip

    总之,Android的ViewFlipper控件为开发者提供了简单而强大的方式来实现视图的水平滑动切换。通过合理设置动画、监听事件以及优化性能,可以创建出流畅、交互性强的用户界面。在实际项目中,结合其他布局和组件,...

    ViewFlipper简单实现横屏滑动

    在Android开发中,ViewFlipper是一个非常实用的控件,用于在多个视图之间进行平滑切换,常用于实现类似轮播图或者横向滑动页面的效果。本教程将详细介绍如何利用ViewFlipper来实现横屏滑动,以及屏幕局部滑动的实现...

    ViewFlipper水平滑动.zip

    在压缩包中的示例代码可能包含了如何配置和触发ViewFlipper滑动的完整流程,包括初始化、设置动画以及响应用户手势等。通过学习这个示例,开发者能够更好地理解ViewFlipper的用法,并将其应用到自己的项目中,为用户...

    安卓ViewFlipper级滑动改变图片

    总结起来,使用Android的ViewFlipper组件,结合手势识别,我们可以轻松地实现图片的滑动切换效果。通过添加动画和自定义手势处理,可以进一步提升用户体验。在实际开发中,可以根据需求调整ViewFlipper中的视图数量...

    图片实现滑动切换

    `ViewFlipper`是Android SDK提供的一种布局容器,它可以动态地添加、删除或切换子视图,尤其适合用来实现动画过渡效果,比如图片的左右滑动切换。下面我们将详细探讨如何使用`ViewFlipper`实现这个功能。 1. **引入...

    Android ViewFlipper水平滑动Demo.zip

    这样就实现了ViewFlipper的自动水平滑动切换效果。 **5. 注意事项** - 动画的持续时间应与视图切换的时间一致,以确保平滑过渡。 - 为了防止内存泄漏,记得在Activity的onPause或onStop方法中移除定时器。 总结,...

    应用源码之ViewFlipper水平滑动.zip

    3. 触发滑动切换: 你可以监听用户的滑动事件,通过设置OnTouchListener,当检测到滑动手势时,调用`showNext()`或`showPrevious()`方法来切换视图。 4. 自定义动画: ViewFlipper支持自定义动画,你可以通过设置`...

    UI开发第八篇——ViewFlipper 左右滑动效果

    本篇将深入探讨如何利用ViewFlipper组件和GestureDetector类实现左右滑动切换视图的效果,这在主页面或多个内容区域展示的场景中非常常见。 ViewFlipper是Android提供的一个布局容器,它可以方便地在多个子视图之间...

    android中使用ViewFlipper实现滑动翻页示例

    在Android开发中,ViewFlipper是一个非常有用的布局控件,它允许我们轻松地实现滑动翻页的效果。这个示例将向我们展示如何在应用程序中使用ViewFlipper来创建一个动态翻页界面,使得用户可以通过手势或编程方式切换...

    viewFlipper

    `ViewFlipper`是Android平台中的一个视图切换器组件,常用于实现各种动态效果,如广告栏的轮询播放、页面的滑动切换等。它继承自`ViewGroup`,能够管理多个子视图,并在指定的时间间隔内自动或手动进行切换。本篇...

    viewFlipper的滑动播放使用

    ViewFlipper是Android SDK中的一个视图容器,用于在多个视图之间进行切换,通常用于实现滑动播放的效果。在Android应用开发中,ViewFlipper提供了便捷的方式来进行动态展示多个View,比如轮播图、广告栏等场景。下面...

Global site tag (gtag.js) - Google Analytics