AndroidN多窗口支持

Android N 可以同时显示多个应用窗口。 在手机上,两个应用可以在“分屏”模式中左右并排或上下并排显示。例如,用户可以 在上面窗口聊QQ,下面窗口发送短信。

如图所示,两个app在分屏模式中上下显示:

如何让你的app支持多窗口?

如果你的app支持Adnroid N,在AndroidManifest.xml文件中对 或 节点设置android:resizeableActivity就能启用或者禁用多窗口显示:

android:resizeableActivity=["true" | "false"]

如果这个属性的值为true,Activity能分屏和自由模式启动,如果这个属性的值为false,Activity不支持多窗口模式。

如果你的app支持Adnroid N,但是没有对该属性设置值。则该属性的值默认为true。也就是默认支持多窗口模式。

用户可以通过以下方式切换到多窗口模式

  • 若用户打开 Overview 屏幕并长按 Activity 标题,则可以拖动该 Activity 至屏幕突出显示的区域,使 Activity 进入多窗口模式。
  • 若用户长按 Overview 按钮,设备上的当前 Activity 将进入多窗口模式,同时将打开 Overview 屏幕,用户可在该屏幕中选择要共享屏幕的另一个 Activity。

多窗口生命周期

多窗口模式不会更改 Activity 生命周期。

在多窗口模式中,在指定时间只有最近与用户交互过的 Activity 为活动状态。 该 Activity 将被视为顶级 Activity。 所有其他 Activity 虽然可见,但均处于暂停状态。 但是,这些已暂停但可见的 Activity 在系统中享有比不可见 Activity 更高的优先级。 如果用户与其中一个暂停的 Activity 交互,该 Activity 将恢复,而之前的顶级 Activity 将暂停。

多窗口模式下的布局属性

对于 Android N,可以在activity标签中设置标签。 标签支持以下几种属性,这些属性影响 Activity 在多窗口模式中的效果:

- android:defaultWidth 多窗口模式下的默认宽度。

- android:defaultHeight 多窗口模式下的默认高度。

- android:gravity 多窗口模式下的初始位置。

- android:minimalHeight、android:minimalWidth 多窗口模式下的最小高度和最小宽度。如果用户在分屏模式中移动分界线,使 Activity 尺寸低于指定的最小值,系统会将 Activity 裁剪为用户请求的尺寸。

例如,以下配置如何指定 Activity 在多窗口模式中显示时 Activity 的默认大小、位置和最小尺寸:

<activity android:name=".MyActivity">
    <layout android:defaultHeight="500dp"
          android:defaultWidth="600dp"
          android:gravity="top|end"
          android:minimalHeight="450dp"
          android:minimalWidth="300dp" />
</activity>

多窗口变更通知和查询

Activity 类中添加了以下新方法,以支持多窗口显示。

Activity.isInMultiWindowMode()  判断是否处于多窗口模式
Activity.onMultiWindowModeChanged()  进入或退出多窗口模式时会回调这个方法。 

其实多窗口在工作中应该使用的机会不大,毕竟手机屏幕比较小,分屏都看不到什么界面了。不过作为开发者我们有必要去了解一下Android 7.0更新了什么。

源码下载

Android N多窗口

时间: 2024-10-19 22:08:52

AndroidN多窗口支持的相关文章

是时候来了解android7了:多窗口支持

本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 这篇文章开始, 我们来了解一下android 7的一些新特性, 话说今年android 7预览版本来的比以往都稍早一些, 这样对于我们开发者来说算是一个好消息, 我们可以有充足的时间来看新版android的一些特性, 让我们的应用更快的支持到android 7. 前段时间android 7发送了最终预览版本, 这也表示现在的sdk已经是最终的sdk了, 所以我们从现在开始, 完全可以让应用支持到android

Win10 Mobile RS2版Continuum支持多窗口,演示视频放出

根据IT之家此前报道,Win10 Mobile RS2版将注重Continuum功能升级,其中多窗口支持就是重点之一.现在微软放出了该功能的演示视频,我们可以先行了解Continuum多窗口的基本特性. 其实“多窗口”功能从各个方面来说都是诠释“Windows”的最好方式.让Win10 Mobile实现多窗口支持,也就是让Win10手机名副其实,尽管这要借助Continuum功能在显示器上实现.不过对于多窗口来说,貌似也只有显示器这种较大屏幕的设备才有实际意义,小屏只会让人眼花缭乱. 这项功能演

Android N 多窗口布局 省电模式 全新通知功能

今年google 16 i/o 强势推出 android n 迄今为止还没有给他命名.有兴趣的可以登录网站 https://www.android.com/versions/name-n/ 会中提到android N 运行环境有很大提升,30%到600%提升.应用安装提速75%. AndroidN 新增Vulkan 现代3D图形API.实现高帧率游戏,即时应用 OK.好东西用了才知道.那么如何运行Android N呢 会学到什么 多窗口布局互动 确保后台服务继续工作,而打盹模式激活 更新通知,以

Qt窗口定制

qt中的QWidget窗口支持窗体绘制,但是不支持窗口标题栏绘制,想要美观的界面,还需要自己去定制,下面我就介绍一种定制窗体的方法 一个窗口无非就3部分,标题栏.窗体和状态栏,接下来我定制的窗口没有状态栏,如果自己想加状态栏的话,照着这个模式自己也可以添加,说白了,窗口定制就是把完整的窗口分3部分定制,而每个部分又都是一个qt窗口 定制窗口效果图如下,根据个人喜好,自己也可以定制不同的效果 图1 定制窗口 如图1所示,这个窗口包含两部分,标题栏和窗体,这两部分其实分别是一个没有标题栏的QWidg

[ATL/WTL]_[初级]_[拖放文件到窗口]

场景: 1. 软件需要支持从桌面拖动文件到软件里,避免从文件打开窗口选择文件,这样效率快很多,这时就需要窗口支持拖放技术. drag and drop. 2. 软件需要复制文件到远程或设备里,支持拖放的话就很方便. 两种方案: 1. 如果是Windows 窗口程序, 可以使用监听WM_DROPFILES 消息来实现, 这里讲解第一种, 比较方便. http://blog.csdn.net/laogaoav/article/details/9152181 2. 如果不想监听 WM_DROPFILE

dialog窗口编程的入门使用

dialog:能够动态生成一个文本窗口,并且这个窗口支持众多的窗口元素. dialog: 命令 窗口元素: 文本框 单选框 复选框 进度条 dialog所能够提供给我们的窗体,选择完成以后(敲了回车之后),其相关信息没有输出到标准输出,而是输出到错误输出 # yum -y install dialog # dialog --print-maxsize  #这个只是自己的值,换个人大小可能就不一样了,所以以后设置的时候尽可能不要把窗口设置的过大 MaxSize: 35, 134 # dialog 

WPF 自定义窗口

在WPF中我们经常需要抛去windows自带的窗口的样式,设定一些自定义样式的窗口,这个时候我们需要设定 WindowStyle="None" 来移除windows自带的界面样式.除此之外我们还需要设定 AllowsTransparency ="True" 来让窗口支持透明的效果. 这里分享一个 自定义窗口的demo,该demo实现的基本功能有: 实现自定义窗口的最小化.最大化.还原.关闭功能,默认为最大化: 最小化.最大化.还原.关闭按钮在捕获鼠标之后会有动画改变

【转】如何:排列和停靠窗口

原文网址:http://msdn.microsoft.com/zh-cn/library/vstudio/z4y0hsax(v=vs.110).aspx 如何:排列和停靠窗口 Visual Studio 2012 其他版本 1(共 1)对本文的评价是有帮助 - 评价此主题 集成开发环境 (IDE) 包含两种类型的窗口:工具窗口和文档窗口. 根据 IDE 中的窗口排列方式,可以调整代码的查看和编辑空间. 以下选项只是可用于排列窗口的一部分方式: 很好地锁定文档窗口左侧的选项卡. 以选项卡形式将窗口

Android服务端本地窗口FramebufferNativeWindow

Android窗口系统 我们知道Android系统采用OpenGL来绘制3D图形,OpenGL ES提供了本地窗口(NativeWindow)的概念,无论是在Android平台中还是其他平台中,只要实现OpenGL ES中的本地窗口定义的接口,就可以利用OpenGL ES来绘制图形.由于Android系统所有服务都建立在C/S模式下,因此Android系统在实现OpenGL ES的本地窗口时仍然包括两种本地窗口,服务进程端的本地窗口定义为FramebufferNativeWindow,该本地窗口