在Android开发中,Dialog和Activity都可以用于与用户进行交互。但是,它们的使用场景有所不同。
Dialog通常用于以下场景:
Activity通常用于以下场景:
总的来说,Dialog和Activity都可以用于与用户进行交互,但是它们的使用场景不同。在开发过程中,开发者需要根据具体的需求选择合适的方式进行交互。
点击标题栏一个按钮显示此筛选页面,想了一下 将个做成activity ,原因 1.方便公用 ,我们这边两个页面都有这个筛选 2.处理里面复杂业务逻辑 不影响原有业务数据的逻辑,分开显得代码清晰。...实现的原理就是直接在布局中设置Activity的主题 AndroidManifest.xml配置 @style/AnimBottom...-- true --> @android:color/transparent <!
第一个例子,显示网址 首先创建工程 按照提示填入 我使用的是2.3版本,所以Min SDK Version填10 修改/res/layout/下main.xml文件 加入按钮 对应的程序文件如下:...> Activity,需要在AndroidManifest.xml中添加设置 添加的登陆页面效果 使用的是TableLayout login.xml中信息 <?
一、首先我们先看下Activity是如何显示View 平常我们在Activity的onCreate会调用setContentView(R.layout.xxx),Activity启动过程与window的源码流程可参考...总结几个步骤: 1、创建Activity:ActivityThread的performLaunchActivity函数中创建Activity后,调用Activity.attach函数 2、创建PhoneWindow...的onResume, 然后设置Activity的PhoneWindow的type类型: r.window = r.activity.getWindow(); View decor = r.window.getDecorView.... */ public static final int TYPE_APPLICATION = 2; 这个Dialog的window就需要依赖Activity...三、直接使用系统级的Window类型,来添加View: WindowManager.LayoutParams layoutParams = new WindowManager.LayoutParams(
lp.dimAmount =0f; 方法二:在style 的xml 里 设置如下 false 设置为true, 背景变暗 Dialog = new Dialog(Activity, R.style.dialog
我传入Dialog的context-直都没用activity 我:那第一个dialog的context应该是需要activity的 A:没有Activity的应用-样是可以显示Dialog的,setType...相信大家曾经都有遇到过需要在Application或者Service里弹出Dialog的情景,就算平时做的正式项目没有这种需求,那也应该在刚开始学习Android或者写Demo的时候试过。...使用Service或Application就找不到容器,换成Activity就能找到,这是为什么?...这边的各个容器的关系吧(深色箭头是extends的意思): (试了好多办法,一张完整的图都没法让大家在手机上看清,于是我干了成两半) image.png image.png 2.现在来回答第一问:为什么使用非...关于这一点,在我当时确立好Android方向时,就已经开始梳理自己的成长路线了,包括技术要怎么系统地去学习,都列得非常详细。
想必大家都用过Dialog主题的Activity吧,用它来显示自定义对话框效果绝对是一个非常不错的选择。...即把activity交互界面以Dialog的形式展现出来,Dialog主题的Activity大小将以内容的宽高来决定 <activity android:name=”MainActivity” android...:theme=”@android:style/Theme.Dialog”> 可以看到设置为Theme.Dialog主题的activity显示效果, 是类似对话框的形式显示出来的...那么让我们自己做一个漂亮点的对话框形式的Activity 首先,要把Activity自带的标题去掉 使用 requestWindowFeature(Window.FEATURE_NO_TITLE); 语句...android:theme=”@android:style/Theme.Dialog” 主题的Activity是方方正正的对话框样式的。
Android 开发之Dialog中隐藏键盘的正确使用方法 场景:弹出一个Dialog,里面有一个EditText,用来输入内容,因为输入时,需要弹出键盘,所以当Dialog消失时,键盘要一起隐藏。...现在我们做一个自定义的Dialog MyDialog extends Dialog 一开始认为这个功能很容易实现,于是写了下面的代码 //Dialog的构造函数中写 this.setOnDismissListener...也就是说,你监听Cancel或者Dismiss都是不行的,因为此时Dialog已经消失,用于输入的服务窗体已经是null了,所以你要想 隐藏键盘,就需要在Dismiss之前处理,那这个入口在哪呢?...为了当点击空白处时,可以隐藏Dialog,所以我们在构造函数中加了一句话 this.setCanceledOnTouchOutside(true); 所以当我们点击空白区域时,会触发Dialog的onTouchEvent...(mCancelMessage).sendToTarget(); } dismiss(); } 这里面就会dismiss掉Dialog,所以我们发现,在dismiss前,我们根本无法干预
本文实例讲述了Android 开发使用Activity实现加载等待界面功能。...用PopupWindow实现方法请见我的另一篇博客: android使用PopupWindow实现加载等待界面 好了,下面开始。先上效果: ?...activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop...activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop...更多关于Android相关内容感兴趣的读者可查看本站专题:《Android控件用法总结》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity
本文实例讲述了Android开发之缓冲dialog对话框创建、使用与封装操作。...分享给大家供大家参考,具体如下: package com.hstech.handysystem.prompt; import android.app.Dialog; import android.content.Context...; public class LoadingDialog { private Dialog loadingDialog; private TextView textView; private...(context, R.style.MyTheme_AppCompat_Light_Dialog); loadingDialog.setContentView(R.layout.loading)...Android布局layout技巧总结》及《Android控件用法总结》 希望本文所述对大家Android程序设计有所帮助。
一开始我想到的是PopupWindow,但是由于里面有EditText,与软键盘交互起来很是头疼,于是改用了Activity。这样一来我们就可以像用Activity一样使用这个对话框,方便多了。...不过毕竟跟我们平时使用的Activity还是有所不同的,特别是要设置好它的样式,否则也是一堆的坑啊。 2、对话框Activity的布局与样式 下面就来着手实现我们想要的对话框了。...|stateHidden</item //Dialog的windowFrame框为无 <item name="<em>android</em>:windowFrame" @null</item //是否显示标题...name="<em>android</em>:windowAnimationStyle" @android:style/Animation.Dialog</item //背景是否模糊显示,为false时效果为全透明...下面介绍两种方法: 3.1、使用InputMethodManager类显示软键盘 我们平时要让某个EditText获得焦点自动弹出软键盘可以这样写: InputMethodManager inputManager
我须要使用Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK来開始新的activity同一时候移除之前全部的activity。...为了測试,使用其它的flag。...如FLAG_ACTIVITY_CLEAR_TOP等均没有发生黑屏的情况,可是依据需求我又必需要使用Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK...那么我们在AndroidManifest里的mainpart的配置应该是这种: android:name=”com.ci123.jiayuanbao.school.MainPart” android:screenOrientation...=”portrait” android:theme=”@style/AppTheme_yu” > 同一时候,在style里我们要配置style: true 0 true 主要是true。
练习使用Dialog实习对话框 package com.example.tsh; import android.app.Activity; import android.app.Dialog; import...(R.layout.activity_two); dialog.show(); } } styles.xml @null 练习使用PopupWindow实现对话框 package...com.example.tsh; import android.app.Activity; import android.app.Dialog; import android.os.Bundle; import...dialog.setContentView(R.layout.activity_two); // dialog.show(); //使用PopupWindow
public static Dialog getProcessDialog(Activity activity, CharSequence message, boolean dismissTouchOutside...new FullScreenDialogHUD(activity, theme) // : new Dialog(activity, R.style.Dialog_FullScreen...); Dialog dialog = new Dialog(activity, R.style.Dialog_FullScreen); dialog.setContentView(view...} }); } return dialog; } public static Dialog getOneButtonDialog(final Activity activity...} }); } return dialog; } public static Dialog getButtonsDialog(Activity activity, int
2.2.3 在 AndroidManifest 文件注册 任何 Activity 都需要在 AndroidManifest.xml 中注册才可以使用。...除此之外,使用 android:label 属性来指定 Activity 的标题栏中的内容,标题栏是显示在 Activity 最顶部的(当然可以去掉)。...2.2.4 在 Activity 中使用 Toast Toast 是 Android 系统中一种非常好的提醒方式,可以将一些短小的信息通知给用户,这些信息一段时间后会自动消失,并且不会占用任何屏幕空间。...要想使用 Toast ,首先我们需要有一个触发事件。我们就设置点击按钮的时候弹出 Toast 吧。...Toast 的使用方法很简单,通过调用它的静态方法makeText 会创建一个 Toast 对象,然后调用 show 方法,展示 Toast。
) { Dialog dialog = new Dialog(activity, R.style.Dialog_FullScreen); dialog.setContentView... @android:style/Animation.Dialog true</item...); boolean isShow = false; if (activityTag.equals(DIALOG_TIPS_ACTIVITY_HOMEPAGE)) {..., true); } else if (activityTag.equals(DIALOG_TIPS_ACTIVITY_LIVING)) { isShow =
) 底部dialog关闭动画(dialog_out_anim.xml) 5.添加权限 6.在AndroidManifest.xml中添加剪切activity活动 代码实现 DialogManager.java...dialog_bottom_menu.xml activity_main.xml MainActivity.java 不使用剪切框(点击拍摄直接替换) 使用方形图片方法 效果图 ~~~~~~~~~~~...样式 如果使用弹出提示的XUI自定义dialog则需要在AndroidManifest.xml中application的主题添加样式 添加以下样式: <style name="Theme.HeadPhotoTest...样式 如果需要<em>使用</em>底部弹出<em>dialog</em>则需要在AndroidManifest.xml在application的主题中添加以下样式代码: <!...<em>使用</em>方形图片方法 圆形图片代码注释,方形图像取消注释即可 效果图
6.7.1.预定样式对话框 在 Android 中,定义了一些具体的样式,它们可以在应用程序中被使用。本示例介绍如何使用 Android 中的预定义样式。...布局文件:custom_dialog_activity.xml AndroidManifest.xml 中的定义如下所示: <activity android:name=".app.DialogActivity..." android:label="@string/activity_dialog" android:theme="@android:style/Theme....6.7.2.自定义样式对话框 除了使用 Android 系统中已有的样式,还可是使用自定义的样式。本示例介绍如何使用自定义样式。...布局文件:dialog_activity.xml 样式文件:values/styles.xml AndroidManifest.xml 中的定义如下所示: <activity android:name
总结一下遇到的问题: 一、dialog必须依赖activity 二、因为单例的原因,dialog只能在第一次创建单例的activity显示 三、不能使用系统级弹窗 OK,基于这些问题和要求,结合自己所掌握的知识...dialog必须依赖activity,那我就创建一个activity,专门去承载这个dialog,activity背景设置为透明,效果达到。...我既然已经创建出一个专门承载这个dialog的activity了,而且activity的死活是完全和dialog一致的,那么我为什么还要再去创建一个dialog呢?...<com.facebook.drawee.view.SimpleDraweeView android:id="@+id/netwait_dialog_gif" android:layout_width...; } } 这里还有一点需要注意,就是activity的启动模式,推荐使用singletask。
在DialogFragment产生之前,我们创建对话框:一般采用AlertDialog和Dialog。注:官方不推荐直接使用Dialog创建对话框。...onCreateView即使用定义的xml布局文件展示Dialog。onCreateDialog即利用AlertDialog或者Dialog创建出Dialog。...4、 重写onCreateDialog创建Dialog 在onCreateDialog中一般可以使用AlertDialog或者Dialog创建对话框,不过既然google不推荐直接使用Dialog,我们就使用...5、传递数据给Activity 从dialog传递数据给Activity,可以使用“fragment interface pattern”的方式,下面通过一个改造上面的登录框来展示这种模式。...可以看到,传统的Dialog旋转屏幕时就消失了,且后台log会报异常~~~使用DialogFragment则不受影响。 好了,关于DialogFragment的介绍结束~~~~ 源码点击下载
领取专属 10元无门槛券
手把手带您无忧上云