Android仿简书创作弹起弹框

Android仿简书创作弹起弹框

主要是弹框由上往下和由下往上的动画进入效果

一、思路:

定义动画效果的xml

二、效果图:

看视频更直观点:

Android开发轮子-仿简书创作弹起弹框

三、关键代码:
java 复制代码
public class DialogUtils {

    public static AlertDialog getAlertDialog(Context context) {
        return new AlertDialog.Builder(context, R.style.mydialog).setCancelable(true).create();
    }

    public static Dialog showTopDialog(final Context mContext){
        final AlertDialog dialog = getAlertDialog(mContext);
        dialog.show();
        final Window window = dialog.getWindow();
        window.setGravity(Gravity.TOP);
        window.setContentView(R.layout.dialog_create);
        window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT);

        window.setWindowAnimations(R.style.AnimTop);
        return dialog;
    }

    public static Dialog showBottomDialog(final Context mContext){
        final AlertDialog dialog = getAlertDialog(mContext);
        dialog.show();
        final Window window = dialog.getWindow();
        window.setGravity(Gravity.BOTTOM);
        window.setContentView(R.layout.dialog_create);
        window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT);

        window.setWindowAnimations(R.style.AnimBottom);
        return dialog;
    }
}
四、项目demo源码结构图:

有问题或者完整源码demo的私信我,我每天都看私信的

相关推荐
雨白12 小时前
指针与数组的核心机制
android
黄林晴16 小时前
Room 3.0 正式发布!包名彻底重构,KMP 成为核心主线
android·android jetpack
三少爷的鞋17 小时前
Kotlin 协程环境下的 DCL 懒加载:别把线程时代的经验直接搬过来
android
plainGeekDev17 小时前
Gson → kotlinx.serialization
android·java·kotlin
CYY951 天前
Compose 入门篇
android·kotlin
杉氧1 天前
Compose 时代的 MVI 架构:如何用单向数据流驱动复杂 UI?
android·架构·android jetpack
杉氧1 天前
Modifier 的艺术:为什么链式调用的顺序决定了UI 的生命周期?
android·架构·android jetpack
李斯维1 天前
腾讯 XLog 日志框架 Android 端接入
android·android studio·android jetpack
黄林晴1 天前
Kotlin Toolchain 0.11 发布:Amper 正式更名,统一 kotlin 命令
android·kotlin