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的私信我,我每天都看私信的

相关推荐
Xzaveir8 小时前
不要用一个状态表示“号码已认证”:企业号码身份的四域模型
android·人工智能
(Charon)9 小时前
【C++】手写 MySQL 连接池(二):同步连接的获取、加锁与释放
android
zhangjin112010 小时前
AOSP下载
android
Mico1811 小时前
MySQL 8.0.35 GTID 主从复制搭建-基于GITD
android·mysql·adb
YXL1111YXL12 小时前
LeakCanary 源码解析检测泄露工作机制(一)
android·leakcanary
且随疾风前行.14 小时前
Android Binder 驱动 - 内核驱动层源码初探
android·网络·binder
额恩6615 小时前
AI 智能体从零搭建实战教程——扣子
android·rxjava·coze
hunterandroid15 小时前
前台服务适配与线上排查:通知权限、启动限制和任务保活
android·前端
帅次15 小时前
Android 高级工程师面试:Flutter 渲染与性能 近1年高频追问 20 题
android·flutter·面试·渲染·性能
糖果店的幽灵16 小时前
【langgraph 从入门到精通graphApi 篇】Command 与动态流程控制
android·java·数据库·人工智能·langgraph