如何在某些事件中实现幻灯片上下功能

时间:2015-07-06 14:06:19

标签: android android-layout android-alertdialog

如何实现以下类型的功能。我想点击列表项并显示从屏幕底部到中间显示的项目列表。此外,一旦用户选择该项目,则该面板自行关闭。以下是Android拨号器的快照,点击拨号器图标从底部显示,并在按下后退按钮后滑回到底部。

How to make a dialog slide from bottom to middle of screen in android

我找到了上面提到的线程,但我无法像跟随拨号器那样实现它。上述线程中的解决方案允许对话框从屏幕的底部向中间向上滑动,但其宽度不占用整个屏幕尺寸。

如果有人能引导我走向正确的方向,那就太好了。

Dialler

2 个答案:

答案 0 :(得分:0)

在显示您的用户界面时使用此动画

<?xml version="1.0" encoding="utf-8"?>
 <set xmlns:android="http://schemas.android.com/apk/res/android">
   <translate android:fromYDelta="75%p" android:toYDelta="0%p" 
    android:fillAfter="true"
 android:duration="500"/>
</set>

这将从下往上滑动。

答案 1 :(得分:0)

创建对话框时添加以下代码

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.dialog);
    WindowManager.LayoutParams lp = this.getWindow().getAttributes();
    lp.width = UIUtil.getScreenWidth(getContext());
    lp.gravity = Gravity.BOTTOM;
    this.getWindow().setAttributes(lp);
}


 <style name="dialogTheme" parent="@android:style/Theme.Dialog">
    <item name="android:windowFrame">@null</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:background">@android:color/transparent</item>
    <item name="android:windowBackground">@android:color/transparent</item>
</style>

你还应该为对话框设置一个主题,在其构造函数中调用super(context,R.style.dialogTheme)