java如何控制分屏显示出来的_Android多窗口模式(分屏模式)

java如何控制分屏显⽰出来的_Android多窗⼝模式(分屏模
式)
Android N ⽀持多窗⼝模式,或者叫分屏模式,即在屏幕上可以同时显⽰多个窗⼝。
在⼿机模式下,两个应⽤可以并排或者上下同时显⽰,如图 1 所⽰,屏幕上半部分的窗⼝是系统的 CLOCK 应⽤,下半部分是系统设置功能。⽤户可以拖动两个应⽤之间的分界线改变两个窗⼝的⼤⼩,放⼤其中⼀个应⽤,同时缩⼩另⼀个应⽤。
图 1  分屏模式
在分屏模式下,各个窗⼝的应⽤都可以正常运⾏,但是只能有⼀个窗⼝获得焦点,⽽另外的窗⼝则属于暂停状态。
Android N ⽤户可以通过以下⽅式切换到多窗⼝模式:
瞬时速度中心⽤户打开 Overview 屏幕并长按 Activity 标题,可以拖动该 Activity ⾄屏幕突出显⽰的区域,使 Activity 进⼊多窗⼝模式。
⽤户长按 Overview 按钮,设备上当前的 Activity 将进⼊多窗⼝模式,同时将打开 Overview 屏幕,⽤户可在该屏幕中选择要共享屏幕的另⼀个 Activity。
⽤户可以在两个 Activity 共享屏幕的同时在这两个 Activity 之间拖放数据。
默认情况下,Android N 的 Activity 都是开启多窗⼝模式的。在 Nexus 6P ⼿机上,分屏模式的启动和退出是长按多任务虚拟按键。
图 2 在 Nexus 6P 上启动分屏模式的样⼦:
图 2  Nexus 6P 分屏模式
⾸先我们在 MainActivity 上添加⼀个按钮,并实现点击打开第⼆个 Activity 的功能,代码如下:public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_main);
Button btn = findViewById(R.id.button);
btn.setOnClickListener(new View.OnClickListener() {
超市手推车广告@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, Main2Activity.class);
startActivity(intent);
}
});
新菠萝灰粉蚧}
}
点击“新窗⼝”按钮后,第⼆个窗⼝会被创建,并覆盖掉第⼀个窗⼝,如图 3 所⽰。
图 3  新窗⼝
默认情况下,同⼀个应⽤的多个 Activity 会共⽤同⼀个窗⼝,且⽆法分配到不同窗⼝中。
若希望同⼀个应⽤的不同窗体可以被分配到不同窗⼝中,需要在启动新窗体时给 Intent 设置⼀个
FLAG_ACTIVITY_LAUNCH_ADJACENT 标志,这样新 Activity 就会在新的栈中被启动,独⽴于原来的 Activity,进⽽实现两个Activity 被放置于不同的窗⼝中,如图 4 所⽰。
图 4  同⼀个应⽤的两个窗⼝
关键代码如下:
Intent intent = new Intent(MainActivity.this, Main2Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_LAUNGH_ADJACENT|Intent.FLAG_ACTIVITY_NEW_TASK);
非晶硅薄膜电池
startActivity(intent);
Android N 系统为 Activity 增添了 清单元素对 Activity 在多窗⼝模式中的⾏为进⾏⽀持,包括以下⼏种属性:
属性
作⽤
android:defaultWidth
以⾃由形状模式启动时 Activity的默认宽度
支脚
android:defaultHeight
以⾃由形状模式启动时 Activity的默认⾼度
android:gravity
以⾃由形状模式启动时 Activity的初始位置
gravity 的值:center(居中),bottom(下),top(上),right(右),left(左)
android:minimalHeight、android:minimalWidth
分屏和⾃由形状模式中 Activity的最⼩⾼度和最⼩宽度。如果⽤户在分屏模式中移动分界线,使Activity 尺⼨低于指定的最⼩值,系统会将Activity 裁剪为⽤户请求的尺⼨。
例如,以下代码显⽰了如何指定 Activity 在⾃由形状模式显⽰时 Activity 的默认⼤⼩、位置和最⼩尺⼨:
android:defaultHeight="500dp"
android:gravity="top|end"
珍珠岩膨胀炉android:minmalHeight="450dp"
android:minimalWidth="300dp"/>
如果不想让 Activity 使⽤多窗⼝模式,只需要在清单⽂件中为 Activity 节点设置:
android:resizeableActivity="false"
此属性设置为 false,Activity 将不⽀持多窗⼝模式。在该值为 false 的情况下,如果⽤户尝试在多窗⼝模式下启动 Activity,该 Activity 将全屏显⽰。可⾃⾏尝试。

本文发布于:2024-09-22 03:30:05,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/328695.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:模式   分屏   屏幕   启动   个窗
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议