带有动画效果的滑动,大家都知道,应该使用WorkspaceView,而WorkspaceView必须使用View才能进行滑动。
那么多个Activity该如何做滑动效果呢?
其实方法很简单,就是把Activity转换为View,下面就是Activity转换为View的代码:
private View activityToView(Activity parent, Class<?> target, Bundle state) {
LocalActivityManager mLocalActivityManager = new LocalActivityManager(
parent, true);//new一个本地的activity管理器
mLocalActivityManager.dispatchCreate(state);//这个state就是当前Activity的状态参数,就是onCreate(Bundle savedInstanceState)里面这个savedInstanceState
mLocalActivityManager.dispatchResume();
mLocalActivityManager.dispatchDestroy(true);
Intent intent = new Intent(parent, target);
final Window w = mLocalActivityManager.startActivity(target.getName(),
intent);//取得一个window对象,以方便转换为View
final View wd = w != null ? w.getDecorView() : null;//转换为view
if (wd != null) {
wd.setVisibility(View.VISIBLE);
wd.setClickable(true);
wd.setFocusable(true);
wd.setFocusableInTouchMode(true);
((ViewGroup) wd)
.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS);
}
return wd;
}
然后定义一个WorkspaceView把所有的activity转换为View加载进去:
work = new WorkspaceView(this, null) {
@Override
public boolean onTouchEvent(MotionEvent ev) {
super.onTouchEvent(ev);
switch (ev.getAction()) {
case MotionEvent.ACTION_MOVE:
//处理移动事件
break;
case MotionEvent.ACTION_UP:
//处理action_up事件
break;
}
return true;
}
};
work.setTouchSlop(16);//设置滑动距离
// work.setBackgroundColor(getResources().getColor(R.color.main_contain_bgcolor));
//调用activityToView方法,加载所有的activity
work.addView(activityToView(this, SmartdialerActivity.class,
savedInstanceState));
work.addView(activityToView(this, MainActivity.class,
savedInstanceState));
work.addView(smsGroupView);
work.addView(activityToView(this, AutoReplyActivity.class,
savedInstanceState));
ps:重要的我用红色字体标示了
分享到:
相关推荐
android实现多个Activity滑动效果
android使用ViewPager实现底部菜单栏和左右滑动效果,加载多个Activity
实现一个Activity中多个ListView的整体上下滑动效果,每个ListView分别使用一个自定义的适配器
Activity嵌套fragment大全,activity加载单个fragment,TabLayout+ViewPager实现多个fragment滑动效果
最近感觉有一个Activity关闭的效果挺不错的,就是手势滑动就可以关闭当前Activity,于是就想写一篇博客和大家一起分享下!废话不多说,老规矩,还先上效果图,更直观! 项目地址:...
activity滑动返回效果,类似slidingmenu层叠的效果,可以依次打开多个activity,每个activity可以手指滑动finish
ViewFlow,一个滑动效果库.rar 乐动力的酷黑旋转引导动画.rar 仿淘宝购买商品,主页后缩.rar 多个按钮左右相互挤压效果demo.zip 幸运大转盘源码.rar 摇色子效果.rar 水果忍者点击屏幕效果.rar 翻翻乐--抢答--转盘.rar...
在这段代码里,创建了多个IamgeView(用来显示图片),用一个for循环来添加到了ViewFlipper中。程序运行后,当用手指在屏幕上向左滑动,会显示下一个图片,用手指在屏幕上向右滑动,会显示前一个图片。实现滑动切换...
这是用Android中组件实现的android实现多个Activity滑动效果,希望对你有用,谢谢……
然而我们用的最多的QQ也只是有个功能,并没有真正的滑动效果。至于微信的,我记得N久以前滑出了一个bug。也没什么印象了。估计也是极小的概率事件。于是,当初我就强行的鲁了一个。下面我们一步步分析实现的思路以及...
小编也是通过百度和谷歌查找了很多解决方案,实验了很多方法,总结了一个相对不错的方法,接下来给各位分享下滑动效果、实现细节以及一些踩过的坑。 1.无限滑动效果(左右无限滑动) 事先准备好2张滑动图片(有想...
在这段代码里,创建了多个IamgeView(用来显示图片),用一个for循环来添加到了ViewFlipper中。程序运行后,当用手指在屏幕上向左滑动,会显示下一个图片,用手指在屏幕上向右滑动,会显示前一个图片。实现滑动切换...
最近群里的开发人员咨询怎样实现刻度尺的滑动效果去选择身高体重等信息。给个横着的效果,自己试着去改编或者修改一下,看看通过自己的能力能不能做出竖着的效果来,过两天我再把竖着的那个滑动选择效果分享出来。...
之前的文章中在最后也提到了,如果是你的应用程序中有很多个Activity都需要加入滑动菜单的功能,那么每个Activity都要写上百行的代码才能实现效果,再简单的滑动菜单实现方案也没用。因此我们今天要实现一个滑动菜单...
前言 首次通过右滑来返回到上一个页面的操作是在 IOS7...Android系统里有很多滑动相关的API和类,比如ViewDragHelper就是一个很好的滑动助手类。首先设置Window的背景为透明,再通过ViewDragHelper对Activity上DecorVi
来说说它的思路,底下是两个或多个视图,分别通过控制它们的宽度、左边距来控制它们的显示,来看看代码 activity_main.xml <LinearLayout xmlns:android=http://schemas.android.com/apk/res/android xmlns...
支持自定义滑动时底部Activity联动动效(有2个自带效果,分别为视差(类似微信)和收缩(类似头条)) 支持设置全局和仅边缘可滑动返回 支持在全局时边缘强制可滑动返回(用于解决长滚动布局在滚动到中间时不方便...
看到正点闹钟上的设置时间的滑动效果非常好看,自己就想做一个那样的,在网上就开始搜资料了,看到网上有的齿轮效果的代码非常多,也非常难懂,我就决定自己研究一下,现在我就把我的研究成果分享给大家。...
现在的很多Android手机软件都是使用的类似于微信的架构,即左右滑动底部图标颜色和文字颜色随之改变。本资源通过一个例子来实现这个效果。
不过我发现“淘宝”并没有随着手势的移动而移动,只是捕捉到滑动手势,然后产生平滑切换界面的动画效果,这个在Android中还是很好实现的, 网上很多滑动切换Activity的Demo貌似都是这种效果的吧,如果要实现类似...