Android雙屏機雙屏異顯
阿新 • • 發佈:2019-02-12
主要類:Presentation、DisplayManager、Display
1.如何獲取裝置上的螢幕?
DisplayManager mDisplayManager;//螢幕管理類 Display[] displays;//螢幕陣列 mDisplayManager = (DisplayManager)context.getSystemService(Context.DISPLAY_SERVICE); displays =mDisplayManager.getDisplays();
2.主屏和副屏的區分?
主屏:displays[0]
副屏:displays [1]
3.如何在副屏上展示內容?
通過Presentation來實現,Presentation繼承了Dialog。假設我們寫了一個DifferentDislay的類,這個類是要繼承
Presentation類的。程式碼:
privateclass DifferentDislay extends Presentation{ public DifferentDislay(Context outerContext, Display display) { super(outerContext,display); //TODOAuto-generated constructor stub } @Override protectedvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.diffrentdisplay_basket); } }
4.開啟副屏
//context用getApplicationContext在點選home鍵時只要程式還在後臺副屏就還顯示,displays[1]是副屏 DifferentDislay mPresentation = new DifferentDislay ( getApplicationContext,displays[1]); //setType()中的引數可以使用TYPE_SYSTEM_ALERT,TYPE_TOAST,不過倆個都過時了; //介意過時的話可以改成FLA_LAYOUT_IN_OVERSCAN; mPresentation.getWindow().setType( WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); mPresentation.show();