首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建幻灯片在对话框和活动之上弹出?

如何创建幻灯片在对话框和活动之上弹出?
EN

Stack Overflow用户
提问于 2012-05-24 14:33:40
回答 2查看 2.6K关注 0票数 0

我想要实现一个弹出,应该出现在顶部的活动,并在任何对话框上,可能是在该活动之上。此外,当弹出显示在屏幕上时,背景中的活动和对话框应该仍然是交互式的(即它们应该对触摸做出反应,所有的按钮等都应该仍然工作)。经过x的时间,弹出应该滑出屏幕.

我想出了以下几个想法,但它们都有某种缺点:

1.自定义烤面包虽然祝酒词总是出现在活动和对话框的顶部,但我认为不能让它滑入并滑出。

2.自定义对话框对话框在活动和对话框之上,但这里的问题是,当我的自定义对话框在屏幕上时,活动和所有以前打开的对话框将不再是交互式的(即它们不会接触)。

3. ImageView在Activity中这种方法的问题很明显:它总是出现在对话框后面。

任何帮助都将不胜感激。谢谢!

EN

回答 2

Stack Overflow用户

发布于 2012-05-24 14:46:48

以下是您的选择:

1)和烤面包一起去,牺牲你的动画

2)跟随对话,牺牲触控事件。

3)这是不可行的

我甚至都想不出你是如何用一个定制视图来完成这个任务的,它太复杂了,而且不是谷歌UX设计中推荐的东西。

也许你的问题的另一种解决方案能给你带来一些灵感,试着在这里:http://developer.android.com/design/index.html

真正要问的问题是,你为什么要这个工具提示?你想达到什么目的?有了这些答案,您可以找到更多的Android-esq‘解决方案。

票数 1
EN

Stack Overflow用户

发布于 2012-05-24 16:41:58

您确实需要一个View子类,而不是对话框。使用addView()添加视图,使用removeView()删除视图。

通过布局/样式,您可以使它看起来像一个对话框。

您可以使用视图动画来实现幻灯片的输入/输出效果。

代码语言:javascript
复制
Animation slideIn = new TranslateAnimation (windowWidth, 0, 0, 0);
slideIn.setDuration (400);
slideIn.setInterpolator(new LinearInterpolator());
dialogView.startAnimation(slideIn);

Animation slideOut = new TranslateAnimation (0, windowWidth, 0, 0);
slideOut.setDuration (400);
slideOut.setInterpolator(new LinearInterpolator());
dialogView.startAnimation(slideOut);

并使用AnimationListener() onAnimationEnd()在滑出后删除视图。

您需要调整TranslateAnimation的x/y参数以达到您想要的效果,假设您希望以x和y轴为中心的对话框.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10739616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档