首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    获取屏幕上正在显示的activity 博客分类: Android小技巧

    用过ActivityManager的童鞋估计都知道,可以从ActivityManager里面可以获取到当前运行的所有任务,所有进程和所有服务,这是任务管理器的核心。...仔细看getRunningTasks的文档,里面说获取的是系统中"running"的所有task,"running"状态包括已经被系统冻结的task。...而且返回的这个列表是按照顺序排列的,也就是说第一个肯定比第二个后运行。 getRunningTasks有个整型参数,表示返回列表的最大个数。...那么,我们如果把1作为参数给进去,那么他返回的task就是当前运行的那个task,然后从task中获取到最顶层的activity,这个activity就是当前显示给用户的那个activity了。...("", "pkg:"+cn.getPackageName()); Log.d("", "cls:"+cn.getClassName());           至于这个能做什么,嘿嘿,我相信你知道的。

    2.9K30

    Android 软键盘的那些事

    android:windowSoftInputMode activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。...这个属性能影响两件事情: 【一】当有焦点产生时,软键盘是隐藏还是显示 【二】是否减少活动主窗口大小以便腾出空间放软键盘 它的设置必须是下面列表中的一个值,或一个”state…”值加一个”adjust…”...【G】adjustUnspecified:默认设置,通常由系统自行决定是隐藏还是显示 【H】adjustResize:该Activity总是调整屏幕的大小以便留出软键盘的空间(可以显示全部屏幕) 【I...】adjustPan:当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分(软键盘会遮挡屏幕) android:windowSoftInputMode 活动的主窗口如何与包含屏幕上的软键盘窗...故而,我建议我们的配置中,统一使用如下设置: android:windowSoftInputMode=" stateAlwaysHidden | adjustPan "

    2K10

    Android笔记:软键盘弹出遮盖原来界面的布局控件

    ); 2.直接在项目的MainFest.xml中该Activity中设置: <activity android:name="com.drain.main.LoginControlActivity...如果加上的是 android:windowSoftInputMode="adjustPan"这样键盘就会覆盖屏幕。...:当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示   【C】stateHidden:用户选择activity时,软键盘总是被隐藏   【D】stateAlwaysHidden...:当该Activity主窗口获取焦点时,软键盘也总是被隐藏的   【E】stateVisible:软键盘通常是可见的   【F】stateAlwaysVisible:用户选择activity时,软键盘总是显示的状态...  【G】adjustUnspecified:默认设置,通常由系统自行决定是隐藏还是显示   【H】adjustResize:该Activity总是调整屏幕的大小以便留出软键盘的空间   【I】adjustPan

    1.1K20

    Android开发常用的知识点

    Activity而导致另一个被覆盖的Activity显示出来时,软键盘会使用默认的设置。...stateVisible 当用户导航到Activity主窗口时,软键盘是可见的。不过当用户离开一个Activity而导致另一个被覆盖的Activity显示出来时,软键盘会使用默认的设置。...stateAlwaysVisible 当该Activity主窗口获取焦点时,软键盘总是显示的,不管是确认导航到该Activity还是Activity被覆盖后显示出来。...adjustUnspecified 这个是软件盘行为默认的设置。它不被指定是否该Activity主窗口调整大小以便留出软键盘的空间,或是否窗口上的内容得到屏幕上当前的焦点是可见的。...adjustResize 该Activity主窗口总是被调整屏幕的大小以便留出软键盘的空间 adjustPan 该Activity主窗口并不调整屏幕的大小以便留出软键盘的空间。

    2.6K10

    Android获得控件在屏幕中的绝对坐标

    (location);//获取在整个屏幕内的绝对坐标 location [0]--->x坐标,location [1]--->y坐标 getLocationOnScreen 计算该视图在全局坐标系中的x...,y值,(注意这个值是要从屏幕顶端算起,也就是索包括了通知栏的高度)//获取在当前屏幕内的绝对坐标 getLocationInWindow 计算该视图在它所在的widnow的坐标x,y值,获取在整个窗口内的绝对坐标...在onWindowFocusChanged(boolean hasFocus)中获取为好 即覆写Activity的onWindowFocusChanged(boolean hasFocus)方法 XXX_Activity...int[] location2 = new int[2] ; view.getLocationOnScreen(location2);//获取在整个屏幕内的绝对坐标...//do something } 更多资料: Android View各种尺寸位置相关的方法探究 PS:本文为转载,首发地址不可考,网上搜到的全是转载的,故不能贴出原地址,如果你是作者可以留言原地址或者要求删除

    2.1K20

    Android开发笔记(一百四十八)自定义输入法软键盘

    然而系统软键盘即使切换到123数字模式,依旧显示包括标点符号在内的冗余按键。 2、系统软键盘固定在屏幕下方弹出,无法做为控件嵌入到页面布局中,更无法指定软键盘的显示位置。...3、系统软键盘会自动响应EditText的焦点变更事件,常常在意料之外突然之间蹦出来,弄得开发者要么剥夺EditText的焦点,要么强行关闭软键盘显示,但无论哪种方式都得开发者强行**,很不方便。...那么这个软键盘又是如何实现的呢?其实它跟平常的自定义控件基本类似,只在细节上有所差异,下面分步说明自定义软键盘的过程。...2、自定义控件的主要工作是书写自定义的控件类,自定义软键盘也不例外,有了自定义的控件类,才能处理十个数字键的按键动作,才能把软键盘做为普通的控件嵌入到其它布局文件中。...3、软键盘不是一个孤立的控件,它的按键动作需要实时在某个编辑框中把数字显示出来,所以在使用时还得给它绑定一个EditText,这样软键盘才知道我的按键要输出给这个EditText,而不是输出给那个EditText

    2.6K30

    Android开发中的全屏背景显示方案

    这个启动画面中往往会将ActionBar和Status Bar隐藏掉,然后用户进入一种沉浸的状态,形成更强烈的视觉冲击。...一方面,这可以给用户留下更深刻的使用体验,从而产生一定品牌效应;另一方面,也给应用的启动初始化留下了充裕的时间,避免因为启动时间过长而给用户留下不良的印象。因此,全屏显示在手机应用中得到了广泛的应用。...那么这篇博客中就记录下全屏显示的一些实现方案。 实现 方案一:给布局管理器设置背景图片。这种方案是通过设置android:background和NoActionBar主题来实现的。 1 <!...WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 方案二、在FrameLayout中添加一个全屏的子视图...但是要注意当加载分辨率较大的图片时、或者图片较多时,容易导致内存溢出。 方案三、使用Java代码动态加载图片设置全屏背景。这种方案的原理是,根据显示屏幕的大小对图片进行缩放,从而对屏幕尺寸进行适配。

    2.7K50

    Android爬坑之旅:软键盘挡住输入框问题的终极解决方案

    ↑↑↑ OK,这只是入门,基本上地球上所有的Android工程师都能搞定。 别急,看下面~ 加上WebView试试看?坑来了…… 上面的入门篇中,软键盘是由原生的EditText触发弹出的。...如果Activity是全屏模式,那么android.R.id.content就是占满全部屏幕区域的。...3.界面变化之后,获取"可用高度" 当软键盘弹出了之后,接下来的事情是获取改变之后的界面的可用高度(可以被开发者用以显示内容的高度)。...因为能触发OnGlobalLayout事件的原因有很多,不止是软键盘的弹出变化,还包括各种子View的隐藏显示变化等,它们对界面高度的影响有限。...加上了这个判断之后,只有界面的高度变化超过1/4的屏幕高度,才会进行重新设置高度,基本能保证代码只响应软键盘的弹出。

    4.9K20

    如何使用机器学习来检测手机上的聊天屏幕截图

    如果发送或接收了大量这些屏幕截图,那么最终手机的大部分内存都将被阻塞。在保留重要图像安全的同时查找和删除这些屏幕快照是一项非常耗时的任务。...因此想用机器学习来完成这项工作 理念 从普通图像中检测聊天屏幕截图的任务可以表述为经典的二进制图像分类问题!可以使用卷积神经网络(CNN)来完成这项工作。...CNN的输入层将是一幅图像,输出层将仅包含一个神经元,告诉输入图像是正常图像还是聊天屏幕截图。在接下来的部分中,将介绍构建模型的所有细节。 数据采集 在机器学习中,一切都始于数据。...第一个表示聊天屏幕截图,另一个表示普通图像。因此从不同的消息传递应用程序(如WhatsApp,Messenger,Instagram等)中收集了与朋友聊天的屏幕截图。...在卷积基础中,使用了两个卷积块,每个包含32个过滤器。内核大小为3 * 3。第一卷积层的输入尺寸为64 * 64 * 3(大小为64 px * 64 px的 RGB图像)。

    2.1K10

    Android 与 Chrome OS 中针对大屏幕设备的更新

    并排显示的 Activity △ Jetpack WindowManager 中的 Activity embedding 它的初版界面实现专注于通过在多列布局中并排显示 Activity 从而充分利用大屏幕空间...开启新窗格时,之前创建的窗格将移至屏幕外。此示例中,如果现有分块显示 Activity A 和 B,而您需要将新的 Activity C 在一侧显示,则会创建第二个分块显示 B 和 C。...同时,如果在较小的屏幕上开启应用,并且在设备折叠之后,我们不希望在顶部显示空白页。 我们在库中添加了一个专门的选项来支持占位符的使用场景,来一起看一下如何在应用中集成该功能。...接下来我们聊聊在 Chrome 操作系统以及 Android 平板电脑和可折叠设备中避免应用出现在兼容模式中所需要做到的重要的几件事: △ 运行在开放形式模式充分利用屏幕空间 为不同的设备类型提供合适的大屏幕布局...如需更深入了解,请移步至我们在 Android 开发者峰会 上推出的更多关于大屏幕主题的技术分享,了解如何使布局更加美观、契合度更高,同时可以正确处理输入。

    2.4K40

    Android 中屏幕点击事件的实现Android onTouchEvent, onClick及onLongClick的调用机制

    “;这里就是获得button的实例,然后对他进行监听,当用户点击时就会发生onClick事件,这里还用到一个方法,就是显示一个短消息,在屏幕停留几秒钟就会自己主动消失,其方法例如以下: publicvoid...(keyCode, repeatCount, event); } Android onTouchEvent, onClick及onLongClick的调用机制 针对屏幕上的一个View控件,Android...在Android中,一次用户操作能够被不同的View按次序分别处理,并将全然响应了用户一次UI操作称之为消费了该事件(consume),那么Android是按什么次序将事件传递的呢?...这三个事件标识出了最主要的用户触摸屏幕的操作,含义也非常清楚。...从Android的源码中能看到基于这样的不同重要性的理解而实现的一些交互机制,SDK中也有明白的提及,比如在ViewGroup的onInterceptTouchEvent方法中,假设在ACTION_DOWN

    3.7K30

    AndroidMainifest标签说明2——<activity>

    (这通常不应该发生) “screenLayout” 屏幕布局改变了——这可能是因为不同的显示被激活。...android:multiprocess 默认false 一个activity实例能否被创它的组件在一个进程中启动。...android:process activity所在的进程名,通常不须要设置。 android:screenOrientation activity所显示的方向。...“splitActionBarWhenNarrow”加入栏位于屏幕的底部。在动作条显示操作项,当约束的水平空间。而不是少数出如今屏幕上方操作栏中的行动项目。操作栏被分成顶部导航部分和操作项的底部栏。...“adjustResize” 活动的主窗体总是会去调整大小使软键盘在窗体中 “adjustPan” 活动的主窗体不是软键盘调整大小以腾出空间。

    1.5K00

    Android中图片大小和屏幕密度的关系讲解

    Android手机适配是非常让人头疼的一件事,尤其是图片,android为了做到是适配提供了很多文件夹来存放不同大小的图片,比如:drawable-ldpi、drawable-mdpi、drawable-hdpi...由此我们采用与分辨率无关的度量单位来开发程序就能够解决这个问题。Android应用开发支持不同的度量单位。 1.相关概念 屏幕密度:指的就是单位英寸面积上的像素点数,与分辨率是两个不同的概念。...不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。...的字号最好使用 sp 做单位,而且查看TextView的源码可知Android默认使用sp作为字号单位。...图片放在drawable中,等同于放在drawable-mdpi中,原因为:drawable目录不具有屏幕密度特性,所以采用基准值,即mdpi 图片放在某个特定drawable中,比如drawable-hdpi

    1.1K60

    Android中的像素密度,屏幕密度,屏幕大小,分辨率,ldpi,mdpi,xhdpi,xxhdpi

    大家好,又见面了,我是你们的朋友全栈君。 Android开发为适配不同屏幕需要在资源文件中添加多套图片或者多套布局文件,这篇文章讲解多套图片。...如何使用。 1屏幕大小 智能手机普及,屏幕也随之越来越大,从经典的iPhone 4的3.5英寸到iphone XR 6英寸多,Android手机也逐渐进入了6.x英寸行列。...分辨率越大屏幕越细腻,能够显示的细节就更多。...,Android中获取的屏幕密度,不是对应屏幕真实的屏幕密度值,类似1280720和1290730都会被认为是720p的手机,屏幕密度都是2.0。...注意:对于平板,只能电视和车载系统的开发,一般xhdpi和xxhdpi用不到,ldpi,mdpi用的比较多 6 dp 和px的转换 dp是android中用于适配的尺寸,他能保证在不同尺寸密度屏幕上显示的大小相同

    6.1K41

    Android解析WindowManager(二)Window的属性

    为了方便窗口显示次序的管理,手机屏幕可以虚拟的用X、Y、Z轴来表示,其中Z轴垂直于屏幕,从屏幕内指向屏幕外,这样确定窗口显示次序也就是确定窗口在Z轴上的次序,这个次序称为Z-Oder。...3.Window的标志 Window的标志也就是Flag,用于控制Window的显示,同样被定义在WindowManager的内部类LayoutParams中,一共有20多个,这里我们给出几个比较常用。...为了使得软键盘窗口能够按照期望来显示,WindowManager的静态内部类LayoutParams中定义了软键盘相关模式,这里给出常用的几个: ?...从上面给出的SoftInputMode ,可以发现,它们与AndroidManifest中Activity的属性android:windowSoftInputMode是对应的。...因此,除了在AndroidMainfest中为Activity设置android:windowSoftInputMode以外还可以在Java代码中为Window设置SoftInputMode: ?

    1.1K80

    实现边到边的体验 | 让您的软键盘动起来 (一)

    Android 11 中的新功能之一是可以让应用在对于屏幕上的软键盘打开和关闭的过程创建无缝过渡的动画效果,这一功能源自 Android 11 中对 WindowInsets API 的大量改进。...在 Android 11 上有两个针对该功能的例子——这个功能已经被集成到 Google Search 应用和 Messages 应用中了: 两个 Android 11 中软键盘动画效果的示例: Google...上面的每一步都环环相扣,所以我们会在不同的文章中分别介绍。在这个系列的第一部中,我们会介绍如何实现边到边,以及 Android 11 中相关 API 的改动。...在姗姗来迟了十年后,我们终于可以回答这个关于如何查看软键盘可见性的 StackOverflow 问题。 在 Android 中如何查看软键盘的可见性?...如何关闭/隐藏 Android 软键盘? 这一次我们要介绍 Android 11 的一个新 API,它叫 WindowInsetsController。

    35620
    领券