Dialog显示在Activity不同的位置

Dialog默认显示在中间,要显示在其它位置时用下面的方法可以实现

private void ShowDialog() {

AlertDialog mDialog = new AlertDialog.Builder(this)

.setIcon(R.drawable.ic_launcher).setTitle("温馨提示")

.setMessage("透明对话框")

.setPositiveButton("确定", null).create();

// 获取对话框的Window对象

Window mWindow = mDialog.getWindow();

WindowManager.LayoutParams lp = mWindow.getAttributes();

// 透明度的范围为:0.0f-1.0f;0.0f表示完全透明,1.0f表示完全不透明(系统默认的就是这个)。

lp.alpha = 0.35f;

//设置对话框在屏幕的底部显示,当然还有上下左右,任意位置

//mWindow.setGravity(Gravity.LEFT);

mWindow.setGravity(Gravity.BOTTOM);

/*

*

* 这里是设置偏移量,这里的x,y并不是相对于屏幕的绝对坐标,而是相对于对话框在中心位置(默认的对话框一般显示在屏幕的中心)而言的

lp.x = -20;// 设置水平偏移量

lp.y = -90;// 设置竖直偏移量

*/

// 设置Window的属性

mWindow.setAttributes(lp);

mDialog.show();

}

时间: 2024-10-12 19:32:14

Dialog显示在Activity不同的位置的相关文章

通过setSystemUiVisibility实现状态栏跟Activity之间的位置关系

以前说到去除状态栏和标题栏总会用到动态代码的方式实现: getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN , WindowManager.LayoutParams. FLAG_FULLSCREEN); requestWindowFeature(Window.FEATURE_NO_TITLE); 但是在项目开发中,在收集资料时突然找到了一个很好用的API,这个API是 setSystemUiVisibility();

得到手机当前显示的activity的名字

/** * @return 手机当前的activity */ String getRunningActivityName(){ ActivityManager activityManager=(ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); String runningActivity=activityManager.getRunningTasks(1).get(0).topActivity.getClassName();

源码解析:dialog, popupwindow, 和activity 的第一个view是怎么来的?

问题 在慢慢熟悉android 的过程中,发现一个view 或者layout的初始化,或者构造的流程还是比较清楚的,也就是加到父控件中,然后就开始了对应的生命周期.但是整个界面的父控件,或者说系统的第一个view, 是怎么来的,如何初始化和绘制的呢? 概述 概述:带着困扰我的问题,在前文的基础上,继续分析应用界面和framework的关系,通过分析viewrootimpl 的来源,并结合dialog, popupwindow, 和activity 的 根view的创建流程,回答了问题界面的根vi

如果通过adb查看当前显示的activity

通过adb 查看最上层成activity名字: linux: adb shell dumpsys activity | grep "mFocusedActivity" windows: adb shell dumpsys activity | findstr "mFocusedActivity" 但我在as的terminal上输入命令提示: 'findstr' 不是内部或外部命令,也不是可运行的程序 或批处理文件. 而在cmd以管理员身份运行却成功输出当前显示的Ac

Dialog样式的Activity

效果图: 设置全屏模式: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.loginoutinfo_activity); getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); } 必须在setContent

【起航计划 005】2015 起航计划 Android APIDemo的魔鬼步伐 04 App->Activity->Custom Dialog Dialog形式的Activity,Theme的使用,Shape的使用

App->Activity->Custom Dialog 例子使用Activity 来实现自定义对话框 类CustomDialogActivity本身无任何特别之处.关键的一点是其在AndroidManifest.xml中的定义: <activity android:name=".app.CustomDialogActivity" android:label="@string/activity_custom_dialog" android:them

模拟物理按键;获取当前显示的Activity名

//////////模拟按键方法 private void sendKeyCode(final int keyCode){ new Thread(){ public void run(){ try { Instrumentation inst = new Instrumentation(); inst.sendKeyDownUpSync(keyCode); /////////以下方法在4.0或是3.0之前可以用 // KeyEvent k = new KeyEvent(KeyEvent.ACTI

获得当前正在显示的activity的类名

需要加一个权限: <uses-permission android:name="android.permission.GET_TASKS"/> ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); List<RunningTaskInfo> runningTasks = manager .getRunningTasks(1); Running

Dialog显示手机android安装的app信息

最近做功能开发时候需要显示当前手机安装的app信息.这里我使用Dialog来显示.截图如下: 如上截图所示,这个dialog显示了当前手机安装的app,当点击一个菜单项时候就会在上面显示一个上锁的图案(如上图:视频/相机/联系人).这时一个可以对app上锁的设计界面. 首先来看看dialog的创建: private void Init_create_dialog(){ if(null == show_app_dialog){ show_app_dialog = new Dialog(getAct