Android 双屏异显
android双屏是克隆模式,如果要在第二屏幕显示不同内容,需要自定义一个Presentation类
1.先设置权限
(刚开始折腾很久没有效果,后来发现是没设置权限)
<!-- 显示系统窗口权限 --> <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> <!-- 在 屏幕最顶部显示addview--> <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />
2.自定义类
public class DifferentDislay extends Presentation{ public DifferentDislay(Context outerContext, Display display) { super(outerContext,display); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test); } }
3.然后这段代码,就可以让第二屏幕显示不同内容了
DisplayManager mDisplayManager;// 屏幕管理类 mDisplayManager = (DisplayManager) this .getSystemService(Context.DISPLAY_SERVICE); Display[] displays = mDisplayManager.getDisplays(); if (mPresentation == null) { mPresentation = new DifferentDislay(this, displays[displays.length - 1]);// displays[1]是副屏 mPresentation.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); mPresentation.show(); }