Android 多屏显示
背景:
车载操作系统,现在的折叠屏手机, 已经售货机等,都会需要有多屏异显的功能
具体代码实现
添加显示到第二屏需要的代码
package com.mine.myapplication;import android.app.Presentation;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.Display;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;public class DifferentDislay extends Presentation {public DifferentDislay(Context outerContext, Display display) {super(outerContext,display);//TODOAuto-generated constructor stub}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.diffrentdisplay);Button btn = (Button)this.findViewById(R.id.button);TextView tv = (TextView) this.findViewById(R.id.textView);btn.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v){tv.setText("hello different display");}});}
}
第二屏显示需要额外的权限
添加mainfest 权限
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/><uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />
该显示的权限需要显式的进行声明
if (!Settings.canDrawOverlays(this)) {Intent intent = new Intent();intent.setAction(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);startActivity(intent);}
调用代码显示第二屏的内容
DisplayManager mDisplayManager = (DisplayManager)MainActivity.this.getSystemService(Context.DISPLAY_SERVICE);Display[] displays = mDisplayManager.getDisplays();DifferentDislay mPresentation =new DifferentDislay (getApplicationContext(), displays[1]);//displays[1]是副屏mPresentation.getWindow().setType(WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY);mPresentation.show();
测试
启动模拟器, 配置模拟器的第二个屏幕
程序运行效果
参考:
https://blog.csdn.net/hello_1995/article/details/120739601
https://blog.csdn.net/u014361280/article/details/115539355
包含具体的android的实现的代码参考
https://blog.csdn.net/Jason_Lee155/article/details/116465425
Android 多屏显示相关推荐
- Android全屏显示
Android全屏显示 一.获取状态栏和导航条的高度: 1. 获取状态栏的高度: public int getStatusBarHeight() {Resources resources = mAct ...
- Android 全屏显示
全屏显示主要是设置下面这两个属性: this.requestWindowFeature(Window.FEATURE_NO_TITLE); this.getWindow().setFlags(Wind ...
- Android 多屏显示分析
双屏异显 系统提供了Presentation类,可以实现在两块屏幕上同时显示不同的内容:Presentation是一个特殊的dialog,它的目的是显示内容到第二屏幕. <!-- 显示系统窗口权 ...
- android锁屏显示应用程序,今日应用:微软又给 Android 做了一款锁屏应用
微软又做了一款 Android 锁屏应用,质量还不错.如果你已经设置了锁屏,Picturesque可能让你再解锁一次你真的需要在锁屏就处理这么多任务吗? 微软又来给 Android 提供应用了,他们昨 ...
- Android分屏显示(多窗口支持) 开发总结
最近公司有分屏显示需求,遇到几点问题 ,在此记录,以做备忘. 我所谓的分屏显示,是在同一个界面内,分屏显示两个app的界面 或者是 注意点1: 系统好像没有获取应用显示的左右或者上下位置的方法,所以我 ...
- Android分屏显示
1,定义 Android N以上系统支持的模式,可上下,左右分屏显示,画中画,多窗口模式 2,方式 要是全局分屏,可在application里设置标签resizeableActivity为true & ...
- Android全屏显示和屏幕旋转的处理
全屏显示 全屏隐藏状态栏 Window window = getWindow(); int flag = WindowManager.LayoutParams.FLAG_FULLSCREEN; req ...
- android 锁屏显示音乐播放器,Android锁屏界面控制音乐播放
目前,在锁屏界面控制音乐播放有两种常用方式. 第一种方式:原生Android系统及自带音乐播放器. 锁屏界面端: 原生Android中,锁屏界面相关的UI由KeyguardHostView提供,Key ...
- Android全屏显示隐藏状态栏
1,概论 工作中经常需要用到全屏的页面,还要隐藏系统状态栏或沉浸式 2,设置全屏 2.1,设置有代码中设置,也有Mainfest.xml中设置theme 2.2,要是全局生效就在application ...
最新文章
- R语言使用moments包计算偏度(Skewness)和峰度(Kurtosis)实战:计算偏度(Skewness)和峰度(Kurtosis)、确定样本数据是否具有与正态分布匹配的偏度和峰度(假设检验)
- GDCM:gdcm::Sorter的测试程序
- 基于visual Studio2013解决C语言竞赛题之0502最小数替换
- HDU - 1151 Air Raid(最小路径覆盖-二分图最大匹配)
- [ASP.NET Core 3框架揭秘] 依赖注入:依赖注入模式
- 腾讯开源国内首个H.266/VVC视频播放器
- 数据结构员工通讯录管理系统 C语言,数据结构课程设计报告单位员工通讯录管理系统.doc...
- VS工程中混有.c文件时出现fatal error C1853错误
- Python实现支持人机对战的五子棋软件(超详细)
- 爬豆瓣读书Top250
- Elasticsearch Nested类型深入详解
- 如何通过数据包套接字攻击Linux内核?
- (文献研读)ContainerCloudSim:云数据中心中容器建模和仿真的环境
- 优秀的产品,离不开这4个 层面
- python入门---日常经验分享
- 4:3 背景图片素材
- 帝国织梦和各种php网页将局部广告进行屏蔽搜索引擎蜘蛛
- 伦敦经济学院开设加密货币相关课程
- 台式计算机显示屏不亮,电脑开机显示屏不亮怎么办 电脑连接显示屏不显示怎么办...
- 成功解决:XXX不在 sudoers 文件中,此事将被报告