Dialog样式的Activity】的更多相关文章

一.需求触发场景: 项目中需要出发带有EditText的Dialog显示,要求在编辑完EditText时,点击Dilog的空白处隐藏软键盘.但是Dialog不会消失.示例如下: 二.实现方法: 发布需求时,我个人曾想过直接通过new的方式直接创建Dialog,经过多次尝试,无法实现要求,所以采用将Activity设置为Dialog样式进行展示,调用方法实现需求.具体实现如下: 本次演示示例的工程结构: 2.1AndroidMainfest.xml配置文件 需要在配置文件中将需要显示为dialog…
效果图: 设置全屏模式: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.loginoutinfo_activity); getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); } 必须在setContent…
首先定义一个style 在style里面加入 <style name="MyDialog" parent="@android:Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowNoTitle">true</item> <item name=…
View view= this.findViewById(android.R.id.title);view.setVisibility(View.GONE);…
android 修改系统的dialog样式 一.觉得自定义配置文件麻烦?那就来修改系统自定义XML文件来实现修改系统dialog的样式吧. 如果是在XML中样式:首先来说下样式.  在 Style.xml 文件(如果没有该文件就创建一个XML名为Style.xml) <!--重写系统弹出Dialog --> <style name="myDialogTheme" parent="android:Theme.Dialog"> <item…
新建了一个Android Studio工程,在MainActivity的主界面中添加了两个按钮,点击其中一个按钮用来启动 NormalActivity,点击另一按钮用来启动DialogActivity. 其中,NormalActivity和DialogActivity都是很简单的界面,只是在AndroidManifest.xml中,对DialogActivity添加主题 android:theme="@android:style/Theme.Dialog, AndroidManifest.xml…
自定义一个Dialog,继承了系统Dialog的样式.这时候会发现,即使布局文件中写的width和height都是match_parent,依然无法达到全屏的效果. 原因是:系统dialog的样式.默认有padding=10dip,所以即使设置为全屏,也是有10dip的间隙. 如果不得不继承这个样式,还希望改变这个dialog的大小,我们可以尝试重写一个这个Dialog的show()方法. 分析:在Dialog的show()方法中,我们可以看到代码: 1 WindowManager.Layout…
activity.finish() 和dialog.show() 同时调用的时候, 需要先调用dialog.dismiss() 后activity.finish() 如果先直接finish()后,再触发dialog.show() 会出错 . 解决策略: Activity调用了finish后,其isFinishing()会被立即置为true在Dialog.show()之前,务必检测context所属的activity的isFinishing是否为true 附:context与Activity之间相…
App->Activity->Custom Dialog 例子使用Activity 来实现自定义对话框 类CustomDialogActivity本身无任何特别之处.关键的一点是其在AndroidManifest.xml中的定义: <activity android:name=".app.CustomDialogActivity" android:label="@string/activity_custom_dialog" android:them…
将Activity设置成窗口的样式实现Dialog或者Popupwindow效果在开发中是很常用的一种方式,在AndroidMenifest.xml中将需要设置的Activity增加android:theme="@android:style/Theme.Dialog"属性即可.但是窗口化的Activity有个问题就是:点击窗口空白处Activity会finish.如何避免这个问题呢,办法如下: 一.如果API Level>=11有两种方式: 1. res\values\style…
具体做法和dialog窗口的设置类似,只需要在onCreate方法中,加入下列代码,既可以控制大小! // 设置窗体大小  ScreenUtil.getScreenWidth(LoadActivity.this)为获取屏幕宽度的自定义方法     LayoutParams params = getWindow().getAttributes();     params.height = LayoutParams.WRAP_CONTENT;     params.width = (int) (Sc…
<style name="load_dialog" parent="@android:style/Theme.Dialog"> <item name="android:colorBackgroundCacheHint">@null</item> <item name="android:windowFrame">@null</item><!--边框--> &…
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 对下拉菜单的文本区域和列表区域进行了封装.包括两种展现方式:popwindow(单选).dialog(单选+多选) 因为该封装需要在Eclipse开发环境中使用,所以列表控件使用的是ListView. 效果图 代码分析 SpinnerViewPop:自定义RelativeLayout子类[popwindow(单选).dialog(单选)] SpinnerViewMultiDialog:自定义RelativeLayout子类[di…
假设有一个activity,activity中有一个Button和一个TextView,点击按钮,弹出Dialog,对话框中有一个ListView,选中ListView中的某一项,关闭对话框,更新activity中EditText的值为你选中项的值. 分析这个问题,假设Dialog为AlertDialog,你可以直接在Button的OnClickListener事件中创建Dialog,并在AlertDialog的setPositiveButton或其他按钮监听器中完成对EditText值的更新:…
最重要的是这两行代码 dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);//设置Dialog没有标题,需在setContentView之前设置 dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);//设置Dialog背景透明效果 MainActivity public class MainActivity extends ListActi…
好久没记录文档了,拖了老半个月,终于空下来时间,为了避免以后踩坑,必须记录记录. 背景: 为activity设置样式为弹窗activity 异常一: activity设置style后,布局不能够正常显示,由于固定了activity的高度(例如500),当高度超出500后,布局展示异常,只展示底部布局. 异常二: 在有虚拟按键手机上弹出该对话框,对话框与布局会重叠在一起 异常代码如下: <!-- ActionSheet 对话框样式--> <style name="YTDialog…
概述 和普通的Activity跳转稍微不同的是,当第1个Activity跳转到第二个Activity后,如果点击'back'按钮(即Android键盘的按钮,则不会调用调用第一个Activity的onStop方法,因为弹出对话框的时候,第1个Activity对用户仍然是Visible(可见的). 如下,定义了两个继承Activity的java类: package com.example.activitydialog; import android.app.Activity; import and…
1.修改TextView字体 mTextView = (TextView) findViewById(R.id.textview1); mTextView.setText("I am here"); Resources resources = getBaseContext().getResources(); Drawable myDrawable = resources.getDrawable(R.drawable.Drawable1); mTextView.setBackground…
这个例子的主Activity定义在AlertDialogSamples.java 主要用来介绍类AlertDialog的用法,AlertDialog提供的功能是多样的: 显示消息给用户,并可提供一到三个按钮(OK, Cancel ,Yes ,No)用于选择或是显示警告. 显示一个列表以供用户选择,列表中可以是Radio Button  (单选),Check button (多选) 显示文本框来接受用户输入等. 创建AlertDialog一般是通过AlertDialog.Builder来构造: A…
第一步:定义 自定义dialog class名 第二步:全局修改自定义样式 自定义dialogStyle有三个儿子,这样只用找到他们就可以自定更改啦 .custonStyle { xxxxx } .custonStyle>div:nth-child(1){ xxxxx } 注意一定要在全局修改Class,如果你在 scoped里定义是没什么卵用的…
1.getWindow().setFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE);2.setCanceledOnTouchOutside(true)…
Dialog除了使用Dialog类来实现之外,还可以使用Dialog样式的Activity来实现,只需要在注册Activity时指明theme为adnroid:Theme.Dialog就行,这样的Dialog因为实际上是个Activity而更加丰富灵活.在API11(如果没记错的话)之前的dialog样式Activity是模式的,点击对话框外部对话框不会消失,而API11之后虽然依然是模式的,但点击对话框外部后对话框消失,相当于点击了返回键. 如何人为控制点击对话框(Activity)外部时窗口…
1.Activity简介 四大组件之一的Activity组件,在应用中一个Activity可以用来表示一个界面,中文意思也可以理解为"活动",即一个活动开始,代表Activity组件启动,活动结束,代表一个Activity的生命周期结束.一个Android应用必须通过Activity来运行和启动,Activity的生命周期交给系统统一管理. 理解以下四个基本概念,将有助于我们更好的了解Android系统内部机制: Activity:活动,程序中的界面 Application:应用程序…
首先你要知道Activity的四种状态:Active/Runing 一个新 Activity 启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可和用户交互的激活状态.Paused 当 Activity 被另一个透明或者 Dialog 样式的 Activity 覆盖时的状态.此时它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但它已经失去了焦点故不可与用户交互.Stoped 当 Activity 被另外一个 Activity 覆盖.失去焦点并不可见时处于 Stope…
知道Activity的四种状态:Active/Runing 一个新 Activity 启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可和用户交互的激活状态. Paused 当 Activity 被另一个透明或者 Dialog 样式的 Activity 覆盖时的状态.此时它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但它已经失去了焦点故不可与用户交互. Stoped 当 Activity 被另外一个 Activity 覆盖.失去焦点并不可见时处于 Stoped…
activity类处于android.app包中,继承关系: extends ContextThemeWrapper implements LayoutInflater.Factory2 Window.Callback KeyEvent.CallbackView.OnCreateContextMenuListenerComponentCallbacks2 java.lang.Object    ↳ android.content.Context      ↳ android.content.Co…
首先了解Activity的四种状态 Running状态:一个新的Activity启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可和用户交互的激活状态.Paused状态:当Activity被另一个透明或者Dialog样式的Activity覆盖时的状态.此时它依然与窗口管理器保持连接,系统继续维护其内部状态,它仍然可见,但它已经失去了焦点,故不可与用户交互.Stopped状态:当Activity不可见时,Activity处于Stopped状态.当Activity处于此状态时,一定要保存…
Activity 的生命周期 和 J2ME 的 MIDlet 一样,在 android 中,Activity 的生命周期交给系统统一管理.与 MIDlet 不同的是安装在 android 中的所有的 Activity 都是平等的. Activity 的状态及状态间的转换 在 android 中,Activity 拥有四种基本状态: Active/Runing一个新 Activity 启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可和用户交互的激活状态. Paused 当 Activ…
Activity 的生命周期 和 J2ME 的 MIDlet 一样,在 android 中,Activity 的生命周期交给系统统一管理.与 MIDlet 不同的是安装在 android 中的所有的 Activity 都是平等的. Activity 的状态及状态间的转换 在 android 中,Activity 拥有四种基本状态: Active/Runing一个新 Activity 启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可和用户交互的激活状态. Paused 当 Activ…
Running状态:一个新的Activity启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可和用户交互的激活状态.Paused状态:当Activity被另一个透明或者Dialog样式的Activity覆盖时的状态.此时它依然与窗口管理器保持连接,系统继续维护其内部状态,它仍然可见,但它已经失去了焦点,故不可与用户交互.Stopped状态:当Activity不可见时,Activity处于Stopped状态.当Activity处于此状态时,一定要保存当前数据和当前的UI状态,否则一旦A…