首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在多窗口模式下获取Android 7的窗口宽度?

在多窗口模式下获取Android 7的窗口宽度,可以通过以下步骤实现:

  1. 首先,需要在AndroidManifest.xml文件中为应用程序添加以下属性:
代码语言:txt
复制
<activity android:name=".MainActivity"
    android:resizeableActivity="true"
    android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"/>

这样可以确保应用程序支持多窗口模式。

  1. 在MainActivity的onCreate方法中,可以使用以下代码获取窗口宽度:
代码语言:txt
复制
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int windowWidth = displayMetrics.widthPixels;

这将获取当前窗口的宽度值。

  1. 如果需要在窗口大小发生变化时获取新的宽度值,可以在MainActivity中重写onConfigurationChanged方法:
代码语言:txt
复制
@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
        // 横屏模式下的处理
    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
        // 竖屏模式下的处理
    }
    // 更新窗口宽度
    DisplayMetrics displayMetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
    int windowWidth = displayMetrics.widthPixels;
}

这样,在屏幕旋转或窗口大小发生变化时,可以获取到新的窗口宽度。

总结: 在多窗口模式下获取Android 7的窗口宽度,需要在AndroidManifest.xml中设置resizeableActivity属性为true,并在MainActivity中使用DisplayMetrics获取窗口宽度。同时,可以通过重写onConfigurationChanged方法,在窗口大小发生变化时更新宽度值。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

浅谈 Android 7.0 多窗口分屏模式实现

Android 7.0 开始,Google 推出了一个名为“多窗口模式新功能,也就是我们常说“分屏模式”。那么,这个功能有什么用呢?作为开发者,我们又能做些什么?...Android 7.0 添加了对同时显示多个 APP 支持。在手持设备上,两个 APP 可以在分屏模式并排运行。...if (isInMultiWindowMode) { // 已进入分屏模式 } else { // 未进入分屏模式 } } 分屏模式生命周期 需要注意是:进入和退出分屏模式时...分屏模式判断 我们可以通过 Activity isInMultiWindowMode() 方法获取当前是否进入分屏模式,该方法返回true 表示当前已进入分屏模式,返回false 则表示当前未进入分屏模式...到此这篇关于浅谈 Android 7.0 多窗口分屏模式实现文章就介绍到这了,更多相关Android7.0 多窗口分屏内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持

2.7K31
  • 折叠屏上应用设计规范,了解一

    △ 主页横幅 规范布局实践 采用响应式界面不仅仅是为不同屏幕尺寸提供并行结构,应用还要足够灵活,这样才能根据各种需要调整尺寸,例如旋转设备、多窗口模式以及折叠和非折叠姿态。...平板电脑,部分屏幕区域难以用大拇指触及,用户也很难腾出整只手来自由操控屏幕。用户轻易就能触及屏幕底部角落,但可能无法触及屏幕最顶端,尤其是在竖屏模式。...大多数设备上铰链区域宽度约为 48 dp,在桌面模式也请避免将界面元素放在铰链区域,因为在这种设备模式,用户几乎无法使用该区域任何功能。...在 多窗口模式 ,您应用可以与其他应用并排使用,除了响应式调整之外,还可以考虑如何让应用在这种模式下发挥更大作用,比如支持拖拽等。这种小功能可以提高用户工作效率,用户便更乐意使用您应用。...△ 多窗口模式效果 除了通过触摸进行交互外,大屏幕设备还支持其他交互形式。设备屏幕尺寸越大,用户就越有可能使用键盘、手写笔、鼠标、游戏手柄或其他外接设备。

    4.5K20

    FAQ | 为大屏幕设备构建应用常见问题解答

    另外也大大增加了多任务处理机会,用户可以利用多窗口模式同时执行多项任务,那么我们就有新机会来考虑,比如,多个应用在彼此相邻时形态、交互、状态切换等,这些都是不错切入点。...数据显示,因为更大屏幕空间,可折叠设备多任务处理量增加了 7 倍,开发者有必要平衡布局简单性与灵活性以优化应用,例如开发者在使用新窗口尺寸类别和视口断点时,如果要优化断点布局,可以将其视为 3...个基于宽度断点。...如果您已经做到了这一点,那么接下来您应该确保应用能够在多窗口模式运行,并且应用大小可动态调整。...答: 从不同屏幕尺寸角度来说,平板设备需要考虑是横屏模式中等高度 (Medium height) 和展开宽度 (Expanded width),断点分别是 480dp+ 和 840dp+,桌面设备需要考虑展开高度

    3.5K10

    华为EMUI多窗口模式适配指南

    ; (3)在最近任务提供悬浮窗入口; (4)系统导航(Home、Back、Recent)操作在多窗口和独占模式实现了体验归一,多窗口模式退到后台以后,可以通过最近任务进行快速切换。...如果在悬浮窗使用是 Application Context处理UI 相关事情,会导致加载资源无法感知到多窗口而显示异常,而使用Activity Context在全屏模式和投屏等模式依然可以正常显示...activity如何获取特定窗口类型窗口尺寸,参考代码: 获取dp: activity.getResources().getConfiguration().screenWidthDp activity.getResources...|orientation" /> 2.4 正确处理多窗口沉浸式 在华为智慧分屏或者多窗口模式,在应用顶部有一个功能bar,因此应用在布局时,需要调用安卓原生WindowInsetsListener...针对分屏和多窗口模式一些创新功能,华为SDK还提供了一些专门接口,来帮助应用实现快速适配,具体接口和描述如下表所示.

    1.5K30

    三星折叠屏开发者设计指南揭秘

    image 在可折叠设备上提供出色用户体验,首要确保您应用程序已准备好两件事: 其一,可在两个屏幕之间无缝切换; 其二,在多窗口模式下处于活动状态。 ? image 1....而Multi-resume就是为了让多窗口分屏体验更佳而出现。...从 Android P (9.0) 开始,谷歌提供了名为Multi-resume新功能,允许设备厂商在多窗口模式保持所有可见应用处于活动状态,解决了分屏多个应用仅有一个能保持活动状态问题。...备用布局,Android允许应用针对不同屏幕配置提供多种备选布局。可以利用配置限定符实现此目的,它允许系统根据当前配置(针对不同屏幕尺寸不同布局设计)自动选择合适资源。...image 在多窗口模式运行您应用程序 通过点击其他应用将焦点从第一个应用移动到另一个应用 检查应用程序是否仍处于resumed状态 当您应用意外丢失资源(例如相机)时,检查应用是否有任何意外行为

    4.1K40

    Android学习--还有一些小技巧

    七、禁止多窗口模式 八、lambda表达式    这个表达式是JAVA 8 新特性,我们直接在后面完整Demo中使用,用到时候再具体说明 获取全局Context ----      ...  多窗口 ----       Android在7.0之后导入了多窗口模式,在这里我们可以大概学习一多窗口模式。      ...在这里我们说一,在多窗口模式并不会改变活动原有的生命周期,只是会将用户最近交互过那个活动设置为运行状态,而将多窗口模式另外一个可见活动设置为暂停状态,如果这时候用户又和暂停活动进行交互,那么该活动就会进入运行状态...前面我们说到在多窗口模式,活动生命周期是不会发生改变,那么有一些问题我们就可以随之考虑一:       比如说,在多窗口模式,用户任然处于可以看到暂停状态应用,那么像视频播放之类应用在此时就应该是继续播放视频才对...禁止多窗口模式 ----       上面我们说了一些关于多窗口模式一些问题,现在我们再想一个场景,如果我们做是游戏,要是进入了多窗口模式是不是很尴尬,总不是一边发微信一遍玩游戏吧,看着自己GG,

    61230

    Android7.0新特性

    启用该模式,系统将拦截后台数据使用,在适当情况减少前台应用使用数据量,通过配置厂商白名单可以让应用免受该模式影响。...因为这些广播可能会一次唤醒多个应用后台进程,同时会耗尽内存和电池,开发者想进行进程保活越来越难。 多窗口生命周期 targetSdkVersion设置为24,代表该App是支持多窗口。...进入多窗口模式: onPause OnStop OnDestory onCreate onStart onResume onPause 这个时候手机已经开启了多窗口模式,只不过当前焦点在另外一个App...退出多窗口模式回到我们App: OnStop OnDestory onCreate onStart onResume onPause onResume App会经历一次销毁重建后再次失去焦点获取焦点。...禁用多窗口模式 在targetSdkVersion大于24时在清单文件中加入resizeableActivity=false这个属性当开启多窗口模式时会提示用户该应用不支持多窗口; 在小于24情况是通过设置禁用横竖屏切换属性来设置不支持多窗口模式

    38820

    为任意屏幕尺寸构建 Android 界面

    val heightClass: WindowSizeClass get() {...} } 有一点比较重要是,从 Android 12 开始,将允许应用任意调整尺寸,且允许所有应用都以多窗口模式运行...其中,较小型代表了竖屏模式下手机典型模式,中等型代表了大部分平板电脑和更大可折叠设备尺寸,展开型则代表了平板电脑或更大可折叠设备,或是桌面设备在横屏模式显示情况。...△ Phone Reference Device 效果 △ Tablet Reference Device 效果 SlidingPanelLayout 接下来让我们继续基于展开型宽度设备来实现双窗口视图布局...在 JetNews 中我们首先获取窗口大小类信息,在较小和中等型宽度显示单窗口,而在展开型宽度显示列表/详情布局。...获取更好用户体验 在前文中,我们提到为了提供更好用户体验,请添加对应用有意义功能,支持可折叠设备。

    4.2K20

    可折叠设备、平板设备和大屏设备更新一览

    开发者还应该让应用支持纵向和横向模式,因为更大屏幕更可能在横向模式使用。稍后我们会介绍 Material 自适应组件,来帮助您更好地利用更大屏幕空间。...△ 由于可折叠和大屏设备窗口尺寸是可变,使用自适应布局比根据屏幕尺寸分割体验效果更好 多任务处理 在大屏设备上,用户会默认期待应用支持分屏 (或多窗口模式) 和拖放等互动模式。...您应用应该允许调整窗口大小,来无缝地支持多任务。请正确处理折叠和展开事件,并让您应用支持多窗口模式,避免应用窗口区域内出现黑边。...△ SlidingPaneLayout 会自动适应配置变化,在不同布局尺寸提供良好用户体验 在较小屏幕上不得不堆叠起来 UI,在大屏幕上则可以轻松实现并排布局。...例如,如果列表窗格最小宽度为 200dp,而细节窗格需要 400dp,那么当窗口宽度在 600dp 或以上时,SlidingPaneLayout 会自动将两个窗格并排显示。

    2.1K20

    折叠屏开发指导系列④丨支持分屏和悬浮窗模式,正确获取应用布局资源

    前言 有时候,我们在运行多个任务时,需要把窗口同时显示在屏幕上,这样操作比较方便,而且可以避免频繁切换窗口麻烦。折叠屏设备分屏模式可以让两个应用或者任务同时在一个屏幕显示,提高工作效率。...Android多窗口开发指导: https://developer.android.com/guide/topics/ui/multi-window.html?...hl=zh-cn 2.正确获取应用布局资源 1) 在多窗口模式,应用布局View要以窗口大小进行,不可以按照屏幕大小布局,如果在窗口模式还是以屏幕宽高进行布局,会导致应用图标截断,布局错乱等布局问题...2) 在多窗口模式,运行时锁定朝向方法都是无效。...(1)宽:高 >= 1:横屏 (2)宽:高 < 1:竖屏 二 数据拖拽 Android原生拖拽方案详见: https://developer.android.com/guide/topics/ui/drag-drop

    98440

    深入理解 Android Window系统

    多窗口支持:Window支持多窗口模式,允许在同一屏幕上同时运行多个应用程序或Activity,提供了更多多任务处理灵活性。...使用DecorView示例 以下是一个示例代码,演示如何在Activity中获取DecorView并更改其背景颜色: // 获取当前ActivityDecorView View decorView =...存在于特殊情况窗口 除了上述主要类型窗口外,还存在一些特殊情况窗口: Toast窗口:用于显示短暂通知消息。它们是一种轻量级提示框,通常不需要用户交互。...系统提示框:用于显示系统级提示,权限请求、应用更新等。 创建一个简单Window 首先,让我们创建一个简单Android Window,这个Window将包含一个文本视图。...例如,我们可以设置Window为全屏模式,设置窗口透明度等。

    65120

    剖析桌面化 Android操作系统发展与未来

    2013 年,Tieto 公司提出了在手机上实现类是 PC 多窗口显示想法,并展示了基于 Android 4.2/4.4 多窗口支持技术方案,这个扩展原型系统可运行在 Nexus7 手机上和 Android...且 Android OS 在 6.x 后,也逐步添加了多窗口支持,只是相对与上述三个多窗口扩展 Android 系统而言,还略显简单了一些。...且 Google 没有把 Android 扩展到桌面,并不是没有这个技术实力(其实 Android-6.x 已经有平铺式多窗口探索性支持,在 Android-7.x 已进一步有堆叠式多窗口支持),...Remix OS、Phoenix OS、OPNENTHOS 特点主要体现在支持多窗口,适配面向键盘鼠标的人机交互模式,让典型 Android 应用更贴近传统桌面应用展现形式。...Android 多窗口移植改进等。

    1.9K50

    为长屏幕设备做好准备

    原文作者: Android 开发者平台 Fred Chung 最近几个月发布 Android 手机型号,全面屏,特长纵横比(16:9 以上)和圆角设计都已成为了一种潮流( Pixel 2 XL...触摸点击区和 UI 模块(:按钮)不对齐,从而困惑用户。 在圆角屏幕设备上全屏模式,任何非常靠近角落 UI 元素都可能位于弯曲可视角度区域之外。...请参阅文档细节: developer.android.google.cn/guide/pract… 多应用窗口显示 特长屏幕设备为多窗口显示场景提供了更多可能性,这往往可以提高用户生产力。...Android 7.0 以上版本更为开发者提供了多窗口标准支持。...如果多窗口模式不适用于您场景(例如全屏游戏),您可以在 API level 24 以上,利用 manifest android:resizeableActivity="false" 属性来禁用多窗口模式

    77530

    Android开发笔记(一百六十七)Android8.0画中画模式

    前面的博文《Android开发笔记(一百五十九)Android7.0分屏模式》介绍了Android7.0多窗口特性,但是这个分屏区域是固定,要么在屏幕上半部分...为此Android8.0又带了另一种更高级多窗口模式,号称“Picture in Picture”(简称PIP,即“画中画”)。...App页面从全屏模式切换到画中画模式,它Activity生命周期也会经历销毁后重建过程,如果开发者想保持App页面不被重建,则需给该页面的activity节点加上以下属性描述: android...PictureInPictureParams.Builder(); // 设置宽高比例值,第一个参数表示分子,第二个参数表示分母 // 下面的10/5=2,表示画中画窗口宽度是高度两倍...若要退出画中画模式,则可点击缩小了画中画窗口,如下图所示这时该窗口放大些许且画面呈现灰影,表示此刻画中画模式正处于控制操作。

    2.3K30

    全民K歌折叠屏适配探索

    对于宽比高短视频来说: 在首页(容器高宽固定)情况,展开时视频高度填满,宽度居中对齐;视频高度填满,宽度按比例溢出。...更好适配方案 为此,我们得采取自行处理配置变更方案,一般来说有如下解决策略: 填充适配模式(K歌采取方案) 多窗口模式 应用内分屏模式 兼容模式 下面,我们先来谈谈全民K歌适配策略。...填充适配模式 开始之前,我们先了解一 “什么是填充适配模式?” 在该模式,应用所处屏幕发生改变时,总能以相对合理方式重新调整布局,以便能给予用户更好视觉体验。...填充适配模式(K歌采取方案) 多窗口模式 应用内分屏模式 兼容模式 多窗口模式 Android 7.0 新增了对同时显示多个应用窗口支持。...简单来说,其效果还是分屏模式效果类似,但同一屏幕两半展示均为同一应用不同Activity。

    2.5K30

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

    多任务处理 从 Android 12 开始多任务处理已经成为日常操作,所有应用均可以在多窗口模式运行。但是需要注意是应用可能以分屏模式运行或以窗口形式出现在另一个应用旁边。...多窗口模式多窗口支持相较之前更易访问 为了支持多任务处理,Android 12L 更新了界面,包括经过改进供应用切换任务栏。我们都知道过去用户要进入分屏模式操作比较繁杂。...兼容模式 △ 兼容模式 — 稳定性和视觉提升 如果您应用锁定为横向或者纵向模式,并且无法调整大小,那么当用户进入分屏、打开折叠设备,亦或是在 ChromeOS 那样多窗口环境,应用也能以兼容模式显示...当需要针对不同设备类型选择合适布局时或者在多窗口模式需要响应窗口变化时,就需要用到 WindowSize 类。 之前在竖屏模式,用户大多数时间仅仅操作一个应用,但是平板电脑通常是横屏模式。...该库还支持运行时屏幕和窗口尺寸变更,如果用户折叠或展开设备或在多窗口模式重新调整窗口大小,展示将会自动更新,您无需额外操作。

    2.4K40

    Android程序员 安卓7.0新特性奉上 重视这些改变

    安卓7.0牛轧糖系统 开篇 本文章主要介绍android 7.0中引入新特性和新功能。 安卓程序员开发者你需要重视一,以方便日后对android7.0开发工作。...接下来我们就汇总一安卓7.0出现新特性,安卓程序员可查看这些特性,并在此基础之上尝试进行开发工作。 新特性如下: 多窗口支持 从安卓7.0开始,安卓系统开始支持多窗口操作了。...同时这种多窗口模式在平板或者电视等大屏幕上尤为突出,这些大屏设备甚至可以进行诸如画中画格式。 在多窗口模式中,增加了拖动功能,你可以拖动内容到窗口或者拖动窗口内内容到其他界面了。...对于开发者来说,你只需要设置activity 允许最小尺寸,这样用户进行缩放时候,就只能缩放至此大小。当然你也可以禁用多窗口。 ?...安卓多窗口界面 如何使用多窗口模式: 打开多任务管理界面,选择一个应用卡片,拖动至屏幕顶部,即可开启多窗口模式。现在支持上下分屏和左右分屏。 通知增强 安卓7.0中对通知进行了许多增强。

    86130

    Android刘海屏、水滴屏全面屏适配详解

    针对需要适配第二点应用,需要获取刘海位置和宽高,然后将显示内容避开即可。 声明最大长宽比 以前普通屏长宽比为16:9,全面屏手机屏幕长宽比增大了很多,如果不适配的话就会类似下面这样: ?...这个属性是控制多窗口显示,决定当前应用或者Activity是否支持多窗口。...可以在清单或 节点中设置该属性,启用或禁用多窗口显示,配置如下: android:resizeableActivity=["true" | "false"...如果此属性设置为 false,Activity 将不支持多窗口模式。 如果该值为 false,且用户尝试在多窗口模式启动 Activity,该 Activity 将全屏显示。...全新窗口布局属性 layoutInDisplayCutoutMode 让您应用可以为设备凹口屏幕周围内容进行布局。

    3K40
    领券