AlertDialog自定义弹窗的实现

HarmonyOS实战开发-实现自定义弹窗 本篇Codelab基于ArkTS的声明式开发范式实现了三种不同的弹窗,第一种直接使用公共组件,后两种使用CustomDialogController实现自定义弹窗,效果如图所示 阅读详情

今天做项目的时候碰到需要弹窗的部分,感觉这种已定义弹窗很好用。效果图:


主体代码:

//点击返回键弹框
final AlertDialog.Builder builder = new AlertDialog.Builder(context);
final View view = LayoutInflater.from(context).inflate(R.layout.shopping_xuqiu_popwindow, null);
final AlertDialog dialog=builder.setView(view).show();

//通过LayoutInflater来加载一个xml的布局文件作为一个View对象

Button finishBT=(Button)view.findViewById(R.id.finishBT);
finishBT.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        //view.setVisibility(View.GONE);
        dialog.dismiss();
    }
});
layout代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/l1"
        android:orientation="horizontal"
        android:background="#f0f0f0"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:gravity="center_vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="提示"
        android:layout_marginLeft="15dp"
        android:textColor="#191919"
        android:textSize="20dp"/>

        <LinearLayout
            android:gravity="right"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
    <ImageView
        android:visibility="gone"
        android:id="@+id/celcen_shop_pop"
        android:layout_marginRight="10dp"
        android:layout_gravity="center_vertical"
        android:layout_width="23dp"
        android:layout_height="23dp"

        />
        </LinearLayout>
    </LinearLayout>

    <LinearLayout
        android:background="#fff"
        android:orientation="vertical"
        android:layout_below="@+id/l1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:layout_marginTop="25dp"
            android:layout_marginRight="15dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="请选择网点正常/异常反馈签出"
            android:layout_marginLeft="15dp"
            android:textColor="#474747"
            android:textSize="17dp"/>

        <LinearLayout
            android:layout_marginBottom="5dp"
            android:layout_marginTop="15dp"
            android:orientation="horizontal"
            android:gravity="center"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <!--<Button
                android:id="@+id/jixushopping"
                android:background="#e51c23"
                android:textColor="#fff"
                android:textSize="16dp"
                android:layout_width="90dp"
                android:layout_height="40dp"
                android:text="继续购物"/>-->
            <Button
                android:id="@+id/finishBT"
                android:layout_marginLeft="20dp"
                android:background="#00c168"
                android:textColor="#fff"
                android:textSize="16dp"
                android:layout_width="90dp"
                android:layout_height="30dp"
                android:text="确定"/>
        </LinearLayout>
    </LinearLayout>
</RelativeLayout>
layout里面就写成自己所需要的布局样式就可以了。我这里实现的比较简单:


因为是alertdialog,所以当我点击空白处的时候这个自定义的view会自动消失。我这里实现的是当点击确定按钮的时候view也消失。特别要注意这里的实现。


【HarmonyOS实战开发】鸿蒙(HarmonyOS)常见的三种弹窗方式详解 最近有一个想法,做一个针对鸿蒙官方API的工具箱项目,介绍常用的控件,以及在项目中如何使用,今天介绍Harmony中如何实现弹窗功能。 阅读详情

相关推荐

Android原生Dialog、自定义Dialog 多种弹窗(列表展示、带按钮、标题、自定义dialog等)各式各样的dialog都能满足你

各种Dialog原生弹窗 MaterialDialog还是原生弹窗 AlertDialog最后就是自定义Dialog 原生弹窗 MaterialDialog 屁话不多直接上代码,看效果: private void showUpdateThemeDialog() { String[] themes ={"天真浪漫","青青草原", "酷炫黑暗", "热情似火", "蓝天白云", ...

Lemon_wzq的博客 3376

Android AlertDialog总结

一、AlertDialog简介:AlertDialog的构造方法被声明为protected,所以不能直接使用new关键字来创建AlertDialog类的对象实例。要想创建AlertDialog对话框,需要使用Builder类,该类是AlertDialog类中定义的一个内嵌类。因此必须创建AlertDialog.Builder类的对象实例,然后再调用show()来显示对话框。     例如:

唯梦可寻 2237

Android(三十二):AlertDialog 对话弹窗

展示 源码 普通弹窗 var btn01 = FindViewById<Button>(Resource.Id.btn_01); var btn02 = FindViewById<Button>(Resource.Id.btn_02); var btn03 = FindViewById<Button>(Resource.Id.btn_03); var btn04 = FindViewById<Button>(Resource.Id.btn_04); if

You瞧谁不起 - 道不尽世间的沧桑,诉不完人生的悲凉 399

AlertDialog.Builder的基本用法

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("是否取消"); builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public voi

mm_name_zhang的博客 1万+

Android实现弹窗几种方式 (附完整源码)

Android实现弹窗几种方式 (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 375

Flowable前端可视化配置动态审批人:告别硬编码,实现部门领导、项目经理自动分配

本文详细介绍了Flowable前端可视化配置动态审批人的全栈解决方案,通过表达式分配、监听器分配等动态审批人机制,实现从硬编码到智能分配的转变。文章提供了前端扩展bpmn-js设计器、后端动态解析实现方案及性能优化建议,帮助企业应对组织架构变动,提升审批流程的灵活性和效率。

weixin_30352645的博客 473

Builder模式——AlertDialog中的Builder简单应用

1.Alertdialog的使用new AlertDialog.Builder(this) .setTitle("对话框的标题") .setMessage("对话框的内容") .setIcon(R.drawable.ic_launcher) .create() .show();

Sloven 701

别再只当代码阅读器了!手把手教你用Understand的实体定位器和信息浏览器,5分钟精准定位代码逻辑

本文深入解析Understand代码分析工具的高级功能,重点介绍实体定位器和信息浏览器的实战应用。通过5分钟快速定位代码逻辑的技巧,帮助开发者从代码阅读者升级为逻辑侦探,提升大型代码库的分析效率。文章包含过滤搜索、调用链追踪等实用方法,是掌握Understand核心功能的必备指南。

weixin_28745821的博客 292

Android中AlertDialog, AltertDialog.Builder的基本用法与Builder模式

1. AlterDialogAndroid中到处都是Dialog用来向用户展示信息和询问用户的选择。要使用Android的对话框非常简单,只需要使用AlterDialog这个类即可创建一个Android系统提供的标准样式的Dialog。 标准样式的Dialog含有一个或者二个或者三个按钮,可以显示标题和信息。 下面是一个最简单的Dialog的使用的Demopublic class MainAct

hixuepeng的专栏 2万+

【硬件设计】_基于STM32单片机的智能台灯系统

智能台灯系统是一款多功能的智能照明设备,能够自动调节亮度、监测人体活动、感知环境光照,并具备定时和报警功能,极大提升了用户体验与功能的灵活性,主要包括以下功能:系统提供自动和手动两种模式以调节台灯亮度。在自动模式下,台灯会根据周围光强智能调整;而在手动模式下,用户可通过按键自行设置亮度。利用红外光电开关检测台灯与用户之间的距离,若距离过近,系统将发出报警提示。通过时钟模块设置定时提醒,并在OLED显示屏上显示当前时间,当达到设定的定时时间时,蜂鸣器将发出报警音。

2401_85381181的博客 1731

Python GUI编程:视频播放器(opencv、tkinter、PIL、ffpyplayer、threading)

用了几天做了一个视频播放器,搞了几个版本,开始想的是运用cv2模块把视频转化成一张张图片,然后再用ffpyplayer模块下的相关类来播放视频。但是,结果画面和视频的音频播放不同步(原因是cv2将转换得到的图片展示到tk上canvas,花费的时间多于每张图片应该展示的时间[1/fps])。后面看到ffpyplayer这个模块官网的介绍,发现这个模块可以得到视频播放时的图片,只不过这个图片是一个对象,我对这个不是很了解,到网上找了很久,终于找到了一篇文章,说可以利用PIL模块下的相关类,把上述这个对象转化成。

坚持不懈的大白的博客 3407

Android AlertDialog/AlertDialog.builder 以及自定义AlertDialog方法

未经本人授权,不得转载!否则必将维权到底 导语: 最近遇到了一个需要自定义AlertDialog的需求,一直对AlertDialog半知半解,花了点时间自己研究下,给大家分享下自己的研究心得把。 首先介绍下AlertDialog:AlertDialog也是Android系统当中最常用的对话框之一。 我们可以给AlertDialog对话框设置相应的信息。比如icon、title、...

keithxiaoy 1748

EDKII环境配置完整版

参考博客【EDK2 UDK2018的环境搭建】:https://blog.youkuaiyun.com/qq_39155263/article/details/82965744下载EDK2 1.直接从https://github.com/tianocore/edk2/ 网站下载.zip压缩文件 2.运用svn 从http://svn.code.sf.net/p/edk2/code/trunk/edk2edk2下载 3.安装Visual Studio2017 安装其他Tool 1.IASL 从https..

tianpu2320959696的博客 1854

自定义AlertDialog实现下弹窗效果

自定义AlertDialog,并且助你避开requestFeature() must be called before adding content的大坑

up7cr的专栏 526

JavaScript高级程序设计

作者:禅与计算机程序设计艺术 1.简介 JavaScript(简称JS)是一种直截了当、简单易用的动态脚本语言。它最初由Netscape公司的Brendan Eich(布兰登·艾奇)于1995年创建,但后来逐渐成为事实上的通用编程语言。目前,JS已经成为世界上最流行的客户端脚本语言,广泛用于网页开发、移

AI天才研究院 2267

Python调用CANoe(2)(测试模块配置)

本节内容在Python和CANoe的数据交互(1)的基础认知上,继续探索Python如何加载TestSetup,以及运行tse测试文件

蚂蚁小兵 1万+

PopupWindow实现弹窗,可以任意自定义布局

用于实现弹窗,可以任意自定义布局,android中弹窗可以分为AlertDialog和popupWindow,AlertDialog只能显示固定在中间位置,popupWindow可以在任意位置,相对更加灵活。1.主布局设置<Button android:id="@+id/button_submit" android:layout_width="match_parent

qxb19930216的博客 1829

NSX-T 4.1部署搭建

NSX-T4.1 部署搭建

weixin_58250887的博客 564

android实现弹窗和自定义弹窗

**安卓中弹窗和自定义弹窗** 在安卓中我们有时候要实现弹窗的功能,实现弹窗有很多种实现的方法,有用系统默认的弹窗弹出窗口,但是有很多时候默认的弹窗满足不了我们,在这里我主要讲解两种自定义弹窗的方法和一种默认弹窗效果。1、 首先我们来讲解一下默认弹窗是怎么实现的,代码如下:// 创建builder实例AlertDialog.Builder builder = new AlertDia

suzhen666的博客 6558

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

安卓的几种弹窗方法

安卓的几种弹窗方法 代码片. public class MainActivity extends AppCompatActivity { private Button btn, btn2, btn3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(...

Sakura_huatex的博客 4818

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

alertdialog自定义弹窗,点击窗体文字弹窗消失

点击条目最右面的图片,弹出alertdialog(自定义的弹窗样式)先放上自定义弹窗的布局,[html] view plain copy &lt;LinearLayout xmlns:android="http://schemas.android....

zuimeirensheng的博客 725

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Android MVVM框架搭建(七)Permission、AlertDialog、拍照和相册选取

/对话框主题背景//文本颜色//存放文本的更改//存放点击事件//存放长按点击事件//存放对话框图标//存放对话框图片//对话框布局资源id//对话框的view//对话框宽度//对话框高度//对话框垂直外边距//对话框横向外边距//动画//对话框显示位置//设置对话框布局= 0) {if (mView!= null) {//将对话框布局设置到对话框//设置DialogViewHelper辅助类。

2401_89693732的博客 1110

【Flutter】【弹窗】弹窗的快速上手使用和自定义Dialog

给用户提示,让用户做出选择,或者是实现部分内容Dialog 可以完全的自己定义一个弹出框,然后可以自己定义整个弹出框的内容,比如加入图片等等// 使用dialog 来自己真正的定义一个对话框 Widget myDialog() {

自动人生博客 8119

harmonyOS鸿蒙官网教程-添加弹窗

在我们日常使用应用的时候,可能会进行一些敏感的操作,比如删除联系人,这时候我们给应用添加弹窗来提示用户是否需要执行该操作。

移动端开发与最新技术 4385

Android之自定义AlertDialog和PopupWindow实现(仿微信Dialog)

我们知道,在很多时候,我们都不用Android内置的一些控件,而是自己自定义一些自己想要的控件,这样显得界面更美观。 今天主要是讲自定义AlertDialog的使用,在很多需求中,我们往往需要这样一个功能,就是点击一个按钮或者其它控件,弹出一个对话框,让用户可以在这个对话框中做一些事,比如输入、选择、提示.....等等,那么,这个弹出对话框的功能我们都知道可以用popupWind

【博客地址迁移到】:https://zhengxiaoyong.com 8582

Flutter弹窗的简单使用

Flutter几种弹窗和自定义弹窗的简单用法

juer2017的博客 1841
上一篇: EditText把选项卡顶上去的解决方法
下一篇: android登陆记住密码的实现
睡不醒的胖子
博客等级 码龄11年 3粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值