Andoid - 开发实例(6):动画实例之实现Google+滑动Listview让底部bar隐藏

滑动Listview让底部bar隐藏,是一个很棒的交互设计。

向上滑动的时候你的视觉区域在屏幕的下半部分,这个时候把底部的bar隐藏掉,可以让可视区域增加。

向下滑动的时候你的视觉区域在屏幕的上半部分,这个时候把底部bar显示出来,这样就不至于让软件的功能性缺失。

实现这个交互所需知识:1.Android 动画基础;2.滑动监听、

知道上面两个知识点,就能很轻松的完成这个功能。

滑动监听代码:

		mListView.setOnTouchListener(new OnTouchListener() {
			public boolean onTouch(View v, MotionEvent event) {
				View view2 = findViewById(R.id.bottom_bar);
				// bar 向上的动画
				Animation up = AnimationUtils.loadAnimation(MainActivity.this,
						R.anim.actionbar_up);
				// bar 向下的动画
				Animation dowm = AnimationUtils.loadAnimation(MainActivity.this,
						R.anim.actionbar_down);
				// 记录点击时 y 的坐标
				int y = (int) event.getY();
				switch (event.getAction()) {
				case MotionEvent.ACTION_DOWN:
					// 第一次点击是 ACTION_DOWN 事件,把值保存起来
					mMotionY = y;
					break;
				case MotionEvent.ACTION_MOVE:
					// 当你滑动屏幕时是 ACTION_MOVE 事件,在这里做逻辑处理
					// (y - mMotionY) 的正负就代表了 向上和向下
					if ((y - mMotionY) > 0) {
						if (view2.getVisibility() == View.GONE) {
							view2.startAnimation(up);
							view2.setVisibility(View.VISIBLE);
						}
					} else {
						if (view2.getVisibility() == View.VISIBLE) {
							view2.startAnimation(dowm);
							view2.setVisibility(View.GONE);
						}
					}
					mMotionY = y;
					break;
				}
				return false;
			}
		});
动画效果代码:

Y轴向上滑动:

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

    <translate
        android:duration="300"
        android:fromYDelta="100.0%"
        android:toYDelta="0.0" />

</set>
Y轴向下滑动:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <translate
        android:duration="300"
        android:fromYDelta="0.0"
        android:toYDelta="100.0%" />

</set>

Over 搞定!把你的程序也加上这样的设计吧~~~

源码下载:http://download.csdn.net/detail/lyl_studio/5667825

Android Studio 是一款集成开发环境(IDE),专门用于开发 Android 应用程序。它提供了丰富的功能和强大的工具,使开发者能够方便地创建、调试和部署 Android 应用。 在 Android Studio 中创建和管理项目非常简单。通过菜单或快捷键,我们可以轻松地创建新的 Android 项目,并选择适合的模板。在项目中,我们可以创建多个模块,每个模块可以独立进行开发和测试。 Android Studio 还提供了丰富的代码编写和编辑工具。它支持代码自动完成、语法高亮以及错误检查等功能,可以帮助开发者编写出更加规范和高效的代码。同时,Android Studio 还支持 Git 和 GitHub,方便开发者进行版本控制和团队协作。 除了代码编写,Android Studio 还提供了丰富的调试工具。我们可以在模拟器或真机上进行调试,并实时查看变量的值、堆栈跟踪和日志输出等。这些工具可以帮助开发者快速定位和解决问题,提高开发效率。 在 Android Studio 中,我们可以使用 Android 设备模拟器进行应用程序测试。它提供了多个虚拟设备配置,可以模拟不同的屏幕尺寸、分辨率和操作系统版本。这样,开发者可以在不同环境下测试应用程序的兼容性和性能。 总之,Android Studio 是一款功能强大的开发工具,支持开发者创建、编写、调试和测试 Android 应用程序。它提供了丰富的功能和工具,可以帮助开发者快速开发高质量的应用。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值