91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)接口圖形圖像:【@ohos.window (窗口)】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-30 10:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

窗口

窗口提供管理窗口的一些基礎(chǔ)能力,包括對(duì)當(dāng)前窗口的創(chuàng)建、銷毀、各屬性設(shè)置,以及對(duì)各窗口間的管理調(diào)度。

該模塊提供以下窗口相關(guān)的常用功能:

  • [Window]:當(dāng)前窗口實(shí)例,窗口管理器管理的基本單元。
  • [WindowStage]:窗口管理器。管理各個(gè)基本窗口單元。

說明:
開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
本模塊首批接口從API version 6開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。

導(dǎo)入模塊

import window from '@ohos.window';

WindowType7+

窗口類型枚舉。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱說明
TYPE_APP0表示應(yīng)用子窗口。此接口僅可在FA模型下使用。
TYPE_SYSTEM_ALERT1表示系統(tǒng)告警窗口。此接口僅可在Stage模型下使用。

AvoidAreaType7+

窗口內(nèi)容需要規(guī)避區(qū)域的類型枚舉。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱說明
TYPE_SYSTEM0表示系統(tǒng)默認(rèn)區(qū)域。
TYPE_CUTOUT1表示劉海屏區(qū)域。

WindowMode7+

窗口模式枚舉。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱說明
UNDEFINED1表示APP未定義窗口模式。
FULLSCREEN2表示APP全屏模式。
PRIMARY3表示APP分屏多窗口主要模式。
SECONDARY4表示APP分屏多窗口次要模式。
FLOATING5表示APP自由懸浮形式窗口模式。

WindowLayoutMode9+

窗口布局模式枚舉。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱說明
WINDOW_LAYOUT_MODE_CASCADE0表示使用層疊布局模式。
WINDOW_LAYOUT_MODE_TILE1表示使用平鋪布局模式。

SystemBarProperties

狀態(tài)欄、導(dǎo)航欄的屬性。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱參數(shù)類型可讀可寫說明
statusBarColorstring狀態(tài)欄背景顏色,為十六進(jìn)制RGB或ARGB顏色,不區(qū)分大小寫,例如#00FF00#FF00FF00。
isStatusBarLightIcon7+boolean狀態(tài)欄圖標(biāo)是否為高亮狀態(tài)。
statusBarContentColor8+string狀態(tài)欄文字顏色。
navigationBarColorstring導(dǎo)航欄背景顏色,為十六進(jìn)制RGB或ARGB顏色,不區(qū)分大小寫,例如#00FF00#FF00FF00
isNavigationBarLightIcon7+boolean導(dǎo)航欄圖標(biāo)是否為高亮狀態(tài)。
navigationBarContentColor8+string導(dǎo)航欄文字顏色。

SystemBarRegionTint8+

單個(gè)導(dǎo)航欄或狀態(tài)欄回調(diào)信息。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱參數(shù)類型可讀可寫說明
type[WindowType]當(dāng)前屬性改變的系統(tǒng)欄類型,僅支持類型為導(dǎo)航欄、狀態(tài)欄的系統(tǒng)欄。
isEnableboolean當(dāng)前系統(tǒng)欄是否顯示。
region[Rect]當(dāng)前系統(tǒng)欄的位置及大小。
backgroundColorstring系統(tǒng)欄背景顏色,為十六進(jìn)制RGB或ARGB顏色,不區(qū)分大小寫,例如#00FF00#FF00FF00。
contentColorstring系統(tǒng)欄文字顏色。

SystemBarTintState8+

當(dāng)前系統(tǒng)欄回調(diào)信息集合。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱參數(shù)類型可讀可寫說明
displayIdnumber當(dāng)前物理屏幕id。
regionTintArray<[SystemBarRegionTint]>當(dāng)前已改變的所有系統(tǒng)欄信息。

Rect7+

窗口矩形區(qū)域。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱參數(shù)類型可讀可寫說明
leftnumber矩形區(qū)域的左邊界。
topnumber矩形區(qū)域的上邊界。
widthnumber矩形區(qū)域的寬度。
heightnumber矩形區(qū)域的高度。

AvoidArea7+

窗口內(nèi)容規(guī)避區(qū)域。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱參數(shù)類型可讀可寫說明
leftRect[Rect]屏幕左側(cè)的矩形區(qū)。
topRect[Rect]屏幕頂部的矩形區(qū)。
rightRect[Rect]屏幕右側(cè)的矩形區(qū)。
bottomRect[Rect]屏幕底部的矩形區(qū)。

Size7+

窗口大小。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱參數(shù)類型可讀可寫說明
widthnumber窗口寬度。
heightnumber窗口高度。

WindowProperties

窗口屬性。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱參數(shù)類型可讀可寫說明
windowRect7+[Rect]窗口尺寸。
type7+[WindowType]窗口類型。
isFullScreenboolean是否全屏,默認(rèn)為false。
isLayoutFullScreen7+boolean窗口是否為沉浸式,默認(rèn)為false。
focusable7+boolean窗口是否可聚焦,默認(rèn)為true。
touchable7+boolean窗口是否可觸摸,默認(rèn)為true。
ightnessnumber屏幕亮度, 取值范圍為0~1,1表示最大亮度值。
dimBehindValue(deprecated)number靠后窗口的暗度值,取值范圍為0~1,1表示最暗。 -**說明:**從API version 9開始廢棄。 - 從 API version 7開始支持
isKeepScreenOnboolean屏幕是否常亮,默認(rèn)為false。
isPrivacyMode7+boolean隱私模式,默認(rèn)為false。
isRoundCorner7+boolean窗口是否為圓角。默認(rèn)為false。
isTransparent7+boolean窗口是否透明。默認(rèn)為false。

ColorSpace8+

色域模式。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱默認(rèn)值說明
DEFAULT0默認(rèn)色域模式。
WIDE_GAMUT1廣色域模式。

window.create7+

create(id: string, type: WindowType, callback: AsyncCallback): void

創(chuàng)建子窗口,使用callback異步回調(diào)。

此接口僅可在FA模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
idstring窗口id。
type[WindowType]窗口類型。
callbackAsyncCallback<[Window]>回調(diào)函數(shù)。返回當(dāng)前創(chuàng)建的子窗口對(duì)象。

示例:

var windowClass = null;
 let promise = window.create("first", window.WindowType.TYPE_APP);
 promise.then((data)= > {
 	windowClass = data;
    console.info('SubWindow created. Data: ' + JSON.stringify(data));
 }).catch((err)= >{
    console.error('Failed to create the subWindow. Cause: ' + JSON.stringify(err));
 });

window.create7+

create(id: string, type: WindowType): Promise

創(chuàng)建子窗口,使用Promise異步回調(diào)。

此接口僅可在FA模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
idstring窗口id。
type[WindowType]窗口類型。

返回值:

類型說明
Promise<[Window]>Promise對(duì)象。返回當(dāng)前創(chuàng)建的子窗口對(duì)象。

示例:

var windowClass = null;
let promise = window.create("first", window.WindowType.TYPE_APP);
promise.then((data)= > {
    windowClass = data;
    console.info('SubWindow created. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to create the subWindow. Cause: ' + JSON.stringify(err));
});

window.create8+

create(ctx: Context, id: string, type: WindowType, callback: AsyncCallback): void

創(chuàng)建子窗口,使用callback異步回調(diào),其中Context詳見[Context]。

從API version 9開始,當(dāng)Context為[ServiceExtensionContext]時(shí),創(chuàng)建系統(tǒng)窗口,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
ctxContext當(dāng)前應(yīng)用上下文信息。 API version 8的Context定義見[Context]。 API version 9的Context定義見[Context]。
idstring窗口id。
type[WindowType]窗口類型。
callbackAsyncCallback<[Window]>回調(diào)函數(shù)。返回當(dāng)前創(chuàng)建的子窗口對(duì)象。

示例:

var windowClass = null;
 window.create(this.context, "alertWindow", window.WindowType.TYPE_SYSTEM_ALERT, (err, data) = > {
    if (err.code) {
        console.error('Failed to create the Window. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Window created. Data: ' + JSON.stringify(data));
    windowClass.resetSize(500, 1000);
});

window.create8+

create(ctx: Context, id: string, type: WindowType): Promise

創(chuàng)建子窗口,使用Promise異步回調(diào),其中Context詳見[Context]

從API version 9開始,當(dāng)Context為[ServiceExtensionContext]時(shí),創(chuàng)建系統(tǒng)窗口,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
ctxContext當(dāng)前應(yīng)用上下文信息。 API version 8的Context定義見[Context] API version 9的Context定義見[Context]。
idstring窗口id。
type[WindowType]窗口類型。

返回值:

類型說明
Promise<[Window]>Promise對(duì)象。返回當(dāng)前創(chuàng)建的子窗口對(duì)象。

示例:

var windowClass = null;
let promise = window.create(this.context, "alertWindow", window.WindowType.TYPE_SYSTEM_ALERT);
promise.then((data)= > {
 	windowClass = data;
    console.info('Window created. Data:' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to create the Window. Cause:' + JSON.stringify(err));
});

window.find7+

find(id: string, callback: AsyncCallback): void

查找id所對(duì)應(yīng)的窗口,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
idstring窗口id。
callbackAsyncCallback<[Window]>回調(diào)函數(shù)。返回當(dāng)前查找到的窗口對(duì)象。

示例:

var windowClass = null;
 window.find("alertWindow", (err, data) = > {
   if (err.code) {
       console.error('Failed to find the Window. Cause: ' + JSON.stringify(err));
       return;
   }
   windowClass = data;
   console.info('window found. Data: ' + JSON.stringify(data));
});

window.find7+

find(id: string): Promise

查找id所對(duì)應(yīng)的窗口,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
idstring窗口id。

返回值:

類型說明
Promise<[Window]>Promise對(duì)象。返回當(dāng)前查找的窗口對(duì)象。

示例:

var windowClass = null;
let promise = window.find("alertWindow");
promise.then((data)= > {
 	windowClass = data;
    console.info('window found. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to find the Window. Cause: ' + JSON.stringify(err));
});

window.getTopWindow

getTopWindow(callback: AsyncCallback): void

獲取當(dāng)前應(yīng)用內(nèi)最后顯示的窗口,使用callback異步回調(diào)。

此接口僅可在FA模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback<[Window]>回調(diào)函數(shù)。返回當(dāng)前應(yīng)用內(nèi)最后顯示的窗口對(duì)象。

示例:

var windowClass = null;
window.getTopWindow((err, data) = > {
    if (err.code) {
        console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
});

window.getTopWindow

getTopWindow(): Promise

獲取當(dāng)前應(yīng)用內(nèi)最后顯示的窗口,使用Promise異步回調(diào)。

此接口僅可在FA模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise<[Window]>Promise對(duì)象。返回當(dāng)前應(yīng)用內(nèi)最后顯示的窗口對(duì)象。

示例:

var windowClass = null;
let promise = window.getTopWindow();
promise.then((data)= > {
 	windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
})

window.getTopWindow8+

getTopWindow(ctx: Context, callback: AsyncCallback): void

獲取當(dāng)前應(yīng)用內(nèi)最后顯示的窗口,使用callback異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
ctxContext當(dāng)前應(yīng)用上下文信息。 API version 8的Context定義見[Context]。 API version 9的Context定義見[Context]。
callbackAsyncCallback<[Window]>回調(diào)函數(shù)。返回當(dāng)前應(yīng)用內(nèi)最后顯示的窗口對(duì)象。

示例:

var windowClass = null;
window.getTopWindow(this.context, (err, data) = > {
    if (err.code) {
        console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
});

window.getTopWindow8+

getTopWindow(ctx: Context): Promise

獲取當(dāng)前應(yīng)用內(nèi)最后顯示的窗口,使用Promise異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
ctxContext當(dāng)前應(yīng)用上下文信息。 API version 8的Context定義見[Context]。 API version 9的Context定義見[Context]。

返回值:

類型說明
Promise<[Window]>Promise對(duì)象。返回當(dāng)前應(yīng)用內(nèi)最后顯示的窗口對(duì)象。

示例:

var windowClass = null;
let promise = window.getTopWindow(this.context);
promise.then((data)= > {
 	windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
})

window.minimizeAll9+

minimizeAll(id: number, callback: AsyncCallback): void

最小化某顯示設(shè)備下的所有窗口。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
idnumber顯示設(shè)備[Display]的ID號(hào)
callbackAsyncCallback回調(diào)信息。

示例:

import display from '@ohos.display'
import window from '@ohos.window'

var displayClass = null;
display.getDefaultDisplay((err, data) = > {
    if(err.code) {
        return;
    }
    displayClass = data;
    window.minimizeAll(displayClass.id, (err, data) = > {
        if(err.code) {
            console.error('Failed to minimize all window. Cause: ' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in minimizing all window.');
    });
});

window.minimizeAll9+

minimizeAll(id: number): Promise

最小化某顯示設(shè)備下的所有窗口。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
idnumber顯示設(shè)備[Display]的ID號(hào)

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

import display from '@ohos.display'
import window from '@ohos.window'

var displayClass = null;
display.getDefaultDisplay((err, data) = > {
    if(err.code) {
        return;
    }
    displayClass = data;
    let promise = window.minimizeAll(displayClass.id);
    promise.then((data)= > {
        console.info('Succeeded in minimizing all window.');
    }).catch((err)= >{
        console.error('Failed to minimize all window. Cause: ' + JSON.stringify(err));
    })
});

window.toggleShownStateForAllAppWindows9+

toggleShownStateForAllAppWindows(callback: AsyncCallback): void

多窗口快速切換時(shí)隱藏或者恢復(fù)應(yīng)用窗口。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)信息。

示例:

window.toggleShownStateForAllAppWindows((err, data) = > {
    if (err.code) {
        console.error('Failed to toggle shown state for all app windows. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in toggling shown state for all app windows.');
})

window.toggleShownStateForAllAppWindows9+

toggleShownStateForAllAppWindows(): Promise

多窗口快速切換時(shí)隱藏或者恢復(fù)應(yīng)用窗口。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = window.toggleShownStateForAllAppWindows();
promise.then((data)= > {
    console.info('Succeeded in toggling shown state for all app windows. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to toggle shown state for all app windows. Cause: ' + JSON.stringify(err));
})

window.setWindowLayoutMode9+

setWindowLayoutMode(mode: WindowLayoutMode, callback: AsyncCallback): void

設(shè)置窗口布局模式。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
mode[WindowLayoutMode]設(shè)置的窗口布局模式
callbackAsyncCallback回調(diào)信息。

示例:

window.setWindowLayoutMode(window.WindowLayoutMode.WINDOW_LAYOUT_MODE_CASCADE, (data) = > {
    console.info('Succeeded in setting window layout mode. Data: ' + JSON.stringify(data));
});

window.setWindowLayoutMode9+

setWindowLayoutMode(mode: WindowLayoutMode): Promise

設(shè)置窗口布局模式。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
mode[WindowLayoutMode]設(shè)置的窗口布局模式

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = window.setWindowLayoutMode(window.WindowLayoutMode.WINDOW_LAYOUT_MODE_CASCADE);
promise.then((data)= > {
    console.info('Succeeded in setting window layout mode. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set window layout mode. Cause: ' + JSON.stringify(err));
})

on('systemBarTintChange')8+

on(type: 'systemBarTintChange', callback: Callback): void

開啟狀態(tài)欄、導(dǎo)航欄屬性變化的監(jiān)聽。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'systemBarTintChange',即導(dǎo)航欄、狀態(tài)欄屬性變化事件。
callbackCallback<[SystemBarTintState]>回調(diào)函數(shù)。返回當(dāng)前的狀態(tài)欄、導(dǎo)航欄信息集合。

示例:

window.on('systemBarTintChange', (data) = > {
    console.info('Succeeded in enabling the listener for systemBarTint changes. Data: ' + JSON.stringify(data));
});

off('systemBarTintChange')8+

off(type: 'systemBarTintChange', callback?: Callback): void

關(guān)閉狀態(tài)欄、導(dǎo)航欄屬性變化的監(jiān)聽。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'systemBarTintChange',即導(dǎo)航欄、狀態(tài)欄屬性變化事件。
callbackCallback<[SystemBarTintState]>回調(diào)函數(shù)。返回當(dāng)前的狀態(tài)欄、導(dǎo)航欄信息集合。

示例:

window.off('systemBarTintChange');

Window

當(dāng)前窗口實(shí)例,窗口管理器管理的基本單元。

下列API示例中都需先使用[getTopWindow()]、[create()]、[find()]中的任一方法獲取到Window實(shí)例,再通過此實(shí)例調(diào)用對(duì)應(yīng)方法。

hide7+

hide (callback: AsyncCallback): void

隱藏當(dāng)前窗口,使用callback異步回調(diào)。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.hide((err, data) = > {
    if (err.code) {
        console.error('Failed to hide the window. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('window hidden. data: ' + JSON.stringify(data));
})

hide7+

hide(): Promise

隱藏當(dāng)前窗口,使用Promise異步回調(diào)。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.hide();
promise.then((data)= > {
    console.info('window hidden. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to hide the window. Cause: ' + JSON.stringify(err));
})

show7+

show(callback: AsyncCallback): void

顯示當(dāng)前窗口,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.show((err, data) = > {
    if (err.code) {
        console.error('Failed to show the window. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in showing the window. Data: ' + JSON.stringify(data));
})

show7+

show(): Promise

顯示當(dāng)前窗口,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.show();
promise.then((data)= > {
    console.info('Succeeded in showing the window. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to show the window. Cause: ' + JSON.stringify(err));
})

destroy7+

destroy(callback: AsyncCallback): void

銷毀當(dāng)前窗口,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.destroy((err, data) = > {
    if (err.code) {
        console.error('Failed to destroy the window. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in destroying the window. Data: ' + JSON.stringify(data));
})

destroy7+

destroy(): Promise

銷毀當(dāng)前窗口,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.destroy();
promise.then((data)= > {
    console.info('Succeeded in destroying the window. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to destroy the window. Cause: ' + JSON.stringify(err));
})

moveTo7+

moveTo(x: number, y: number, callback: AsyncCallback): void

移動(dòng)窗口位置,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
xnumber窗口在x軸方向移動(dòng)的值,值為正表示右移,單位為px。
ynumber窗口在y軸方向移動(dòng)的值,值為正表示下移,單位為px。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.moveTo(300, 300, (err, data)= >{
    if (err.code) {
        console.error('Failed to move the window. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Window moved. Data: ' + JSON.stringify(data));

});

moveTo7+

moveTo(x: number, y: number): Promise

移動(dòng)窗口位置,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
xnumber窗口在x軸方向移動(dòng)的值,值為正表示右移,單位為px。
ynumber窗口在y軸方向移動(dòng)的值,值為正表示下移,單位為px。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.moveTo(300, 300);
promise.then((data)= > {
    console.info('Window moved. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to move the window. Cause: ' + JSON.stringify(err));
})

resetSize7+

resetSize(width: number, height: number, callback: AsyncCallback): void

改變當(dāng)前窗口大小,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
widthnumber目標(biāo)窗口的寬度,單位為px。
heightnumber目標(biāo)窗口的高度,單位為px。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.resetSize(500, 1000, (err, data) = > {
    if (err.code) {
        console.error('Failed to change the window size. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Window size changed. Data: ' + JSON.stringify(data));
});

resetSize7+

resetSize(width: number, height: number): Promise

改變當(dāng)前窗口大小,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
widthnumber目標(biāo)窗口的寬度,單位為px。
heightnumber目標(biāo)窗口的高度,單位為px。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.resetSize(500, 1000);
promise.then((data)= > {
    console.info('Window size changed. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to change the window size. Cause: ' + JSON.stringify(err));
});

setWindowType7+

setWindowType(type: WindowType, callback: AsyncCallback): void

設(shè)置窗口類型,使用callback異步回調(diào)。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
type[WindowType]窗口類型。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var type = window.WindowType.TYPE_APP;
windowClass.setWindowType(type, (err, data) = > {
  if (err.code) {
      console.error('Failed to set the window type. Cause: ' + JSON.stringify(err));
      return;
  }
  console.info('Succeeded in setting the window type. Data: ' + JSON.stringify(data));
});

setWindowType7+

setWindowType(type: WindowType): Promise

設(shè)置窗口類型,使用Promise異步回調(diào)。

此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
type[WindowType]窗口類型。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var type = window.WindowType.TYPE_APP;
let promise = windowClass.setWindowType(type);
promise.then((data)= > {
    console.info('Succeeded in setting the window type. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the window type. Cause: ' + JSON.stringify(err));
});

getProperties

getProperties(callback: AsyncCallback): void

獲取當(dāng)前窗口的屬性,使用callback異步回調(diào),返回WindowProperties。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback<[WindowProperties]>回調(diào)函數(shù)。返回當(dāng)前窗口屬性。

示例:

windowClass.getProperties((err, data) = > {
    if (err.code) {
        console.error('Failed to obtain the window properties. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in obtaining the window properties. Data: ' + JSON.stringify(data));
});

getProperties

getProperties(): Promise

獲取當(dāng)前窗口的屬性,使用Promise異步回調(diào),返回WindowProperties。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise<[WindowProperties]>Promise對(duì)象。返回當(dāng)前窗口屬性。

示例:

let promise = windowClass.getProperties();
promise.then((data)= > {
    console.info('Succeeded in obtaining the window properties. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to obtain the window properties. Cause: ' + JSON.stringify(err));
});

getAvoidArea7+

getAvoidArea(type: AvoidAreaType, callback: AsyncCallback): void

獲取窗口內(nèi)容規(guī)避的區(qū)域,如系統(tǒng)的系統(tǒng)欄區(qū)域、凹凸區(qū)域。使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
type[AvoidAreaType]表示規(guī)避區(qū)類型。type為TYPE_SYSTEM,表示系統(tǒng)默認(rèn)區(qū)域。type為TYPE_CUTOUT,表示劉海屏區(qū)域。
callbackAsyncCallback<[AvoidArea]>回調(diào)函數(shù)。返回窗口內(nèi)容規(guī)避區(qū)域。

示例:

var type = window.AvoidAreaType.TYPE_SYSTEM;
windowClass.getAvoidArea(type, (err, data) = > {
    if (err.code) {
        console.error('Failed to obtain the area. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in obtaining the area. Data:' + JSON.stringify(data));
});

getAvoidArea7+

getAvoidArea(type: AvoidAreaType): Promise

獲取窗口內(nèi)容規(guī)避的區(qū)域,如系統(tǒng)的系統(tǒng)欄區(qū)域、凹凸區(qū)域。使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
type[AvoidAreaType]表示規(guī)避區(qū)類型。type為TYPE_SYSTEM,表示系統(tǒng)默認(rèn)區(qū)域。type為TYPE_CUTOUT,表示劉海屏區(qū)域。

返回值:

類型說明
Promise<[AvoidArea]>Promise對(duì)象。返回窗口內(nèi)容規(guī)避區(qū)域。

示例:

let promise = windowClass.getAvoidArea();
promise.then((data)= > {
    console.info('Succeeded in obtaining the area. Data:' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to obtain the area. Cause:' + JSON.stringify(err));
});

setFullScreen

setFullScreen(isFullScreen: boolean, callback: AsyncCallback): void

設(shè)置是否為全屏狀態(tài),使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isFullScreenboolean是否設(shè)為全屏狀態(tài),且全屏狀態(tài)隱藏狀態(tài)欄導(dǎo)航欄。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var isFullScreen = true;
windowClass.setFullScreen(isFullScreen, (err, data) = > {
    if (err.code) {
        console.error('Failed to enable the full-screen mode. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in enabling the full-screen mode. Data: ' + JSON.stringify(data));
});

setFullScreen

setFullScreen(isFullScreen: boolean): Promise

設(shè)置是否為全屏狀態(tài),使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isFullScreenboolean是否設(shè)為全屏狀態(tài),且全屏狀態(tài)隱藏狀態(tài)欄導(dǎo)航欄。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var isFullScreen = true;
let promise = windowClass.setFullScreen(isFullScreen);
promise.then((data)= > {
    console.info('Succeeded in enabling the full-screen mode. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to enable the full-screen mode. Cause: ' + JSON.stringify(err));
});

setLayoutFullScreen7+

setLayoutFullScreen(isLayoutFullScreen: boolean, callback: AsyncCallback): void

設(shè)置窗口的布局是否為全屏顯示狀態(tài),使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isLayoutFullScreenboolean窗口的布局是否為全屏顯示狀態(tài),且全屏狀態(tài)下狀態(tài)欄、導(dǎo)航欄仍然顯示。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var isLayoutFullScreen= true;
windowClass.setLayoutFullScreen(isLayoutFullScreen, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window layout to full-screen mode. Data: ' + JSON.stringify(data));
});

setLayoutFullScreen7+

setLayoutFullScreen(isLayoutFullScreen: boolean): Promise

設(shè)置窗口的布局是否為全屏顯示狀態(tài),使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isLayoutFullScreenboolean窗口的布局是否為全屏顯示狀態(tài),且全屏狀態(tài)下狀態(tài)欄、導(dǎo)航欄仍然顯示。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var isLayoutFullScreen = true;
let promise = windowClass.setLayoutFullScreen(isLayoutFullScreen);
promise.then((data)= > {
    console.info('Succeeded in setting the window layout to full-screen mode. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(err));
});

setSystemBarEnable7+

setSystemBarEnable(names: Array<'status' | 'navigation'>, callback: AsyncCallback): void

設(shè)置導(dǎo)航欄、狀態(tài)欄的可見模式,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
namesArray設(shè)置狀態(tài)欄和導(dǎo)航欄是否顯示。 例如,需全部顯示,該參數(shù)設(shè)置為["status", "navigation"];不設(shè)置,則默認(rèn)不顯示。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var names = ["status", "navigation"];
windowClass.setSystemBarEnable(names, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the system bar to be visible. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the system bar to be visible. Data: ' + JSON.stringify(data));
});

setSystemBarEnable7+

setSystemBarEnable(names: Array<'status' | 'navigation'>): Promise

設(shè)置導(dǎo)航欄、狀態(tài)欄的可見模式,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
namesArray設(shè)置狀態(tài)欄和導(dǎo)航欄是否顯示。 例如,需全部顯示,該參數(shù)設(shè)置為["status", "navigation"];不設(shè)置,則默認(rèn)不顯示。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var names = ["status", "navigation"];
let promise = windowClass.setSystemBarEnable(names);
promise.then((data)= > {
    console.info('Succeeded in setting the system bar to be visible. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the system bar to be visible. Cause:' + JSON.stringify(err));
});

setSystemBarProperties

setSystemBarProperties(systemBarProperties: SystemBarProperties, callback: AsyncCallback): void

設(shè)置窗口內(nèi)導(dǎo)航欄、狀態(tài)欄的屬性,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
SystemBarProperties[SystemBarProperties]導(dǎo)航欄、狀態(tài)欄的屬性。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var SystemBarProperties={
    statusBarColor: '#ff00ff',
    navigationBarColor: '#00ff00',
    //以下兩個(gè)屬性從API Version7開始支持
    isStatusBarLightIcon: true,
    isNavigationBarLightIcon:false,
    //以下兩個(gè)屬性從API Version8開始支持
    statusBarContentColor:'#ffffff',
    navigationBarContentColor:'#00ffff'
};
windowClass.setSystemBarProperties(SystemBarProperties, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the system bar properties. Data: ' + JSON.stringify(data));
});

setSystemBarProperties

setSystemBarProperties(systemBarProperties: SystemBarProperties): Promise

設(shè)置窗口內(nèi)導(dǎo)航欄、狀態(tài)欄的屬性,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
SystemBarProperties[SystemBarProperties]導(dǎo)航欄、狀態(tài)欄的屬性。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var SystemBarProperties={
    statusBarColor: '#ff00ff',
    navigationBarColor: '#00ff00',
    //以下兩個(gè)屬性從API Version7開始支持
    isStatusBarLightIcon: true,
    isNavigationBarLightIcon:false,
    //以下兩個(gè)屬性從API Version8開始支持
    statusBarContentColor:'#ffffff',
    navigationBarContentColor:'#00ffff'
};
let promise = windowClass.setSystemBarProperties(SystemBarProperties);
promise.then((data)= > {
    console.info('Succeeded in setting the system bar properties. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
});

loadContent7+

loadContent(path: string, callback: AsyncCallback): void

為當(dāng)前窗口加載具體頁(yè)面內(nèi)容,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
pathstring設(shè)置加載頁(yè)面的路徑。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.loadContent("pages/page2/page2", (err, data) = > {
   if (err.code) {
         console.error('Failed to load the content. Cause:' + JSON.stringify(err));
         return;
   }
  console.info('Succeeded in loading the content. Data: ' + JSON.stringify(data));
});

loadContent7+

loadContent(path: string): Promise

為當(dāng)前窗口加載具體頁(yè)面內(nèi)容,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
pathstring設(shè)置加載頁(yè)面的路徑。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.loadContent("pages/page2/page2");
promise.then((data)= > {
    console.info('Succeeded in loading the content. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to load the content. Cause: ' + JSON.stringify(err));
});

loadContent9+

loadContent(path: string, storage: LocalStorage, callback: AsyncCallback): void

為當(dāng)前窗口加載與LocalStorage相關(guān)聯(lián)的具體頁(yè)面內(nèi)容,使用callback異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
pathstring設(shè)置加載頁(yè)面的路徑。
storage[LocalStorage]存儲(chǔ)單元,為應(yīng)用程序范圍內(nèi)的可變狀態(tài)屬性和非可變狀態(tài)屬性提供存儲(chǔ)。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

class myAbility extends Ability {
    storage : LocalStorage  
    onWindowStageCreate(windowStage) {
        this.storage = new LocalStorage();
        this.storage.setOrCreate("storageSimpleProp",121);
        console.log('onWindowStageCreate');
        windowStage.loadContent("pages/page2",this.storage,(err, data) = > {
            if (err.code) {
                console.error('Failed to load the content. Cause:' + JSON.stringify(err));
                return;
            }
            console.info('Succeeded in loading the content. Data: ' + JSON.stringify(data));
        });
    }
}

loadContent9+

loadContent(path: string, storage: LocalStorage): Promise

為當(dāng)前窗口加載與LocalStorage相關(guān)聯(lián)的具體頁(yè)面內(nèi)容,使用Promise異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
pathstring設(shè)置加載頁(yè)面的路徑。
storage[LocalStorage]存儲(chǔ)單元,為應(yīng)用程序范圍內(nèi)的可變狀態(tài)屬性和非可變狀態(tài)屬性提供存儲(chǔ)。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

class myAbility extends Ability {
    storage : LocalStorage 
    onWindowStageCreate(windowStage) {
        this.storage = new LocalStorage();
        this.storage.setOrCreate("storageSimpleProp",121);
        console.log('onWindowStageCreate');
        var windowClass = null;
        let promise = windowStage.loadContent("pages/page2",this.storage);
        promise.then((data)= > {
            windowClass = data;
            console.info('Succeeded in loading the content. Data: ' + JSON.stringify(data));
        }).catch((err)= >{
            console.error('Failed to load the content. Cause:' + JSON.stringify(err));
        })
    }
}

isShowing7+

isShowing(callback: AsyncCallback): void

判斷當(dāng)前窗口是否已顯示,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)函數(shù)。返回true表示當(dāng)前窗口已顯示,返回false則表示當(dāng)前窗口未顯示。

示例:

windowClass.isShowing((err, data) = > {
    if (err.code) {
        console.error('Failed to check whether the window is showing. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in checking whether the window is showing. Data: ' + JSON.stringify(data));
});

isShowing7+

isShowing(): Promise

判斷當(dāng)前窗口是否已顯示,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
PromisePromise對(duì)象。返回true表示當(dāng)前窗口已顯示,返回false則表示當(dāng)前窗口未顯示。

示例:

let promise = windowClass.isShowing();
promise.then((data)= > {
    console.info('Succeeded in checking whether the window is showing. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to check whether the window is showing. Cause: ' + JSON.stringify(err));
});

on('windowSizeChange')7+

on(type: 'windowSizeChange', callback: Callback): void

開啟窗口尺寸變化的監(jiān)聽。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'windowSizeChange',即窗口尺寸變化事件。
callbackCallback<[Size]>回調(diào)函數(shù)。返回當(dāng)前的窗口尺寸。

示例:

windowClass.on('windowSizeChange', (data) = > {
    console.info('Succeeded in enabling the listener for window size changes. Data: ' + JSON.stringify(data));
});

off('windowSizeChange')7+

off(type: 'windowSizeChange', callback?: Callback): void

關(guān)閉窗口尺寸變化的監(jiān)聽。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'windowSizeChange',即窗口尺寸變化事件。
callbackCallback<[Size]>回調(diào)函數(shù)。返回當(dāng)前的窗口尺寸。

示例:

windowClass.off('windowSizeChange');

on('systemAvoidAreaChange')7+

on(type: 'systemAvoidAreaChange', callback: Callback): void

開啟系統(tǒng)窗口規(guī)避區(qū)變化的監(jiān)聽。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'systemAvoidAreaChange',即系統(tǒng)窗口規(guī)避區(qū)變化事件。
callbackCallback<[AvoidArea]>回調(diào)函數(shù)。返回當(dāng)前的窗口規(guī)避區(qū)。

示例:

windowClass.on('systemAvoidAreaChange', (data) = > {
    console.info('Succeeded in enabling the listener for system avoid area changes. Data: ' + JSON.stringify(data));
});

off('systemAvoidAreaChange')7+

off(type: 'systemAvoidAreaChange', callback?: Callback): void

關(guān)閉系統(tǒng)窗口規(guī)避區(qū)變化的監(jiān)聽。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'systemAvoidAreaChange',即系統(tǒng)窗口規(guī)避區(qū)變化事件。
callbackCallback<[AvoidArea]>回調(diào)函數(shù)。返回當(dāng)前的窗口規(guī)避區(qū)。

示例:

windowClass.off('systemAvoidAreaChange');

on('keyboardHeightChange')7+

on(type: 'keyboardHeightChange', callback: Callback): void

開啟鍵盤高度變化的監(jiān)聽。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'keyboardHeightChange',即鍵盤高度變化事件。
callbackCallback回調(diào)函數(shù)。返回當(dāng)前的鍵盤高度。

示例:

windowClass.on('keyboardHeightChange', (data) = > {
    console.info('Succeeded in enabling the listener for keyboard height changes. Data: ' + JSON.stringify(data));
});

off('keyboardHeightChange')7+

off(type: 'keyboardHeightChange', callback?: Callback): void

關(guān)閉鍵盤高度變化的監(jiān)聽。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'keyboardHeightChange',即鍵盤高度變化事件。
callbackCallback回調(diào)函數(shù)。返回當(dāng)前的鍵盤高度。

示例:

windowClass.off('keyboardHeightChange');

isSupportWideGamut8+

isSupportWideGamut(callback: AsyncCallback): void

判斷當(dāng)前窗口是否支持廣色域模式,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)函數(shù)。返回true表示當(dāng)前窗口支持廣色域模式,返回false則表示當(dāng)前窗口不支持廣色域模式。

示例:

windowClass.isSupportWideGamut((err, data) = > {
    if (err.code) {
        console.error('Failed to check whether the window support WideGamut. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in checking whether the window support WideGamut Data: ' + JSON.stringify(data));
})

isSupportWideGamut8+

isSupportWideGamut(): Promise

判斷當(dāng)前窗口是否支持廣色域模式,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
PromisePromise對(duì)象。返回true表示當(dāng)前窗口支持廣色域模式,返回false則表示當(dāng)前窗口不支持廣色域模式。

示例:

let promise = windowClass.isSupportWideGamut();
promise.then((data)= > {
    console.info('Succeeded in checking whether the window support WideGamut. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to check whether the window support WideGamut. Cause: ' + JSON.stringify(err));
});

setColorSpace8+

setColorSpace(colorSpace:ColorSpace, callback: AsyncCallback): void

設(shè)置當(dāng)前窗口為廣色域模式或默認(rèn)色域模式,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
colorSpace[ColorSpace]設(shè)置色域模式
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.setColorSpace(window.ColorSpace.WIDE_GAMUT, (err, data) = > {
    if (err.code) {
        console.error('Failed to set window colorspace. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting window colorspace. Data: ' + JSON.stringify(data));
})

setColorSpace8+

setColorSpace(colorSpace:ColorSpace): Promise

設(shè)置當(dāng)前窗口為廣色域模式或默認(rèn)色域模式,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
colorSpace[ColorSpace]設(shè)置色域模式。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.setColorSpace(window.ColorSpace.WIDE_GAMUT);
promise.then((data)= > {
    console.info('Succeeded in setting window colorspace. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set window colorspace. Cause: ' + JSON.stringify(err));
});

getColorSpace8+

getColorSpace(callback: AsyncCallback): void

獲取當(dāng)前窗口色域模式,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback<[ColorSpace]>回調(diào)函數(shù)。當(dāng)獲取成功,err為undefined,data為當(dāng)前色域模式。

示例:

windowClass.getColorSpace((err, data) = > {
    if (err.code) {
        console.error('Failed to get window colorspace. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in getting window colorspace. Cause:' + JSON.stringify(data));
})

getColorSpace8+

getColorSpace(): Promise

獲取當(dāng)前窗口色域模式,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise<[ColorSpace]>Promise對(duì)象。返回當(dāng)前色域模式。

示例:

let promise = windowClass.getColorSpace();
promise.then((data)= > {
    console.info('Succeeded in getting window color space. Cause:' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to get window colorspace. Cause: ' + JSON.stringify(err));
});

setBackgroundColor

setBackgroundColor(color: string, callback: AsyncCallback): void

設(shè)置窗口的背景色,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
colorstring需要設(shè)置的背景色,為十六進(jìn)制顏色,不區(qū)分大小寫,例如#00FF00#FF00FF00。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var color = '#00ff33';
windowClass.setBackgroundColor(color, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the background color. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the background color. Data: ' + JSON.stringify(data));
});

setBackgroundColor

setBackgroundColor(color: string): Promise

設(shè)置窗口的背景色,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
colorstring需要設(shè)置的背景色,為十六進(jìn)制顏色,不區(qū)分大小寫,例如"#00FF00"或"#FF00FF00"。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var color = '#00ff33';
let promise = windowClass.setBackgroundColor(color);
promise.then((data)= > {
    console.info('Succeeded in setting the background color. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the background color. Cause: ' + JSON.stringify(err));
});

setBrightness

setBrightness(brightness: number, callback: AsyncCallback): void

設(shè)置屏幕亮度值,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
ightnessnumber屏幕亮度值,值為0-1之間。1表示最亮。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var brightness = 1;
windowClass.setBrightness(brightness, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the brightness. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the brightness. Data: ' + JSON.stringify(data));
});

setBrightness

setBrightness(brightness: number): Promise

設(shè)置屏幕亮度值,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
ightnessnumber屏幕亮度值,值為0-1之間。1表示最亮。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var brightness = 1;
let promise = windowClass.setBrightness(brightness);
promise.then((data)= > {
    console.info('Succeeded in setting the brightness. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the brightness. Cause: ' + JSON.stringify(err));
});

setDimBehind(deprecated)

setDimBehind(dimBehindValue: number, callback: AsyncCallback): void

窗口疊加時(shí),設(shè)備有子窗口的情況下設(shè)置靠后的窗口的暗度值,使用callback異步回調(diào)。

說明: 從API version 9開始廢棄。

從 API version 7開始支持。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
dimBehindValuenumber表示靠后的窗口的暗度值,取值范圍為0-1,1表示最暗。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.setDimBehind(0.5, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the dimness. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the dimness. Data:' + JSON.stringify(data));
});

setDimBehind(deprecated)

setDimBehind(dimBehindValue: number): Promise

窗口疊加時(shí),設(shè)備有子窗口的情況下設(shè)置靠后的窗口的暗度值,使用Promise異步回調(diào)。

說明: 從API version 9開始廢棄。

從 API version 7開始支持。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
dimBehindValuenumber表示靠后的窗口的暗度值,取值范圍為0-1,1表示最暗。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.setDimBehind(0.5);
promise.then((data)= > {
    console.info('Succeeded in setting the dimness. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the dimness. Cause: ' + JSON.stringify(err));
});

setFocusable7+

setFocusable(isFocusable: boolean, callback: AsyncCallback): void

設(shè)置點(diǎn)擊時(shí)是否支持切換焦點(diǎn)窗口,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isFocusableboolean點(diǎn)擊時(shí)是否支持切換焦點(diǎn)窗口。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var isFocusable= true;
windowClass.setFocusable(isFocusable, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the window to be focusable. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window to be focusable. Data: ' + JSON.stringify(data));
});

setFocusable7+

setFocusable(isFocusable: boolean): Promise

設(shè)置點(diǎn)擊時(shí)是否支持切換焦點(diǎn)窗口,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isFocusableboolean點(diǎn)擊時(shí)是否支持切換焦點(diǎn)窗口。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var isFocusable= true;
let promise = windowClass.setFocusable(isFocusable);
promise.then((data)= > {
    console.info('Succeeded in setting the window to be focusable. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the window to be focusable. Cause: ' + JSON.stringify(err));
});

setKeepScreenOn

setKeepScreenOn(isKeepScreenOn: boolean, callback: AsyncCallback): void

設(shè)置屏幕是否為常亮狀態(tài),使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isKeepScreenOnboolean設(shè)置屏幕是否為常亮狀態(tài)。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var isKeepScreenOn = true;
windowClass.setKeepScreenOn(isKeepScreenOn, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the screen to be always on. Data: ' + JSON.stringify(data));
});

setKeepScreenOn

setKeepScreenOn(isKeepScreenOn: boolean): Promise

設(shè)置屏幕是否為常亮狀態(tài),使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isKeepScreenOnboolean設(shè)置屏幕是否為常亮狀態(tài)。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var isKeepScreenOn = true;
let promise = windowClass.setKeepScreenOn(isKeepScreenOn);
promise.then((data) = > {
    console.info('Succeeded in setting the screen to be always on. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.info('Failed to set the screen to be always on. Cause:  ' + JSON.stringify(err)); 
});

setOutsideTouchable(deprecated)

setOutsideTouchable(touchable: boolean, callback: AsyncCallback): void

設(shè)置是否允許可點(diǎn)擊子窗口之外的區(qū)域,使用callback異步回調(diào)。

說明: 從API version 9開始廢棄。

從 API version 7開始支持。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
touchableboolean設(shè)置是否可點(diǎn)擊。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

windowClass.setOutsideTouchable(true, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the area to be touchable. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the area to be touchable. Data: ' + JSON.stringify(data));
})

setOutsideTouchable(deprecated)

setOutsideTouchable(touchable: boolean): Promise

設(shè)置是否允許可點(diǎn)擊子窗口之外的區(qū)域,使用Promise異步回調(diào)。。

說明: 從API version 9開始廢棄。

從 API version 7開始支持。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
touchableboolean設(shè)置是否可點(diǎn)擊。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

let promise = windowClass.setOutsideTouchable(true);
promise.then((data)= > {
    console.info('Succeeded in setting the area to be touchable. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the area to be touchable. Cause: ' + JSON.stringify(err));
});

setPrivacyMode7+

setPrivacyMode(isPrivacyMode: boolean, callback: AsyncCallback): void

設(shè)置窗口是否為隱私模式,使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isPrivacyModeboolean窗口是否為隱私模式。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var isPrivacyMode = true;
windowClass.setPrivacyMode(isPrivacyMode, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the window to privacy mode. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window to privacy mode. Data:' + JSON.stringify(data));

});

setPrivacyMode7+

setPrivacyMode(isPrivacyMode: boolean): Promise

設(shè)置窗口是否為隱私模式,使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isPrivacyModeboolean窗口是否為隱私模式。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var isPrivacyMode = true;
let promise = windowClass.setPrivacyMode(isPrivacyMode);
promise.then((data)= > {
    console.info('Succeeded in setting the window to privacy mode. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the window to privacy mode. Cause: ' + JSON.stringify(err));
});

setTouchable7+

setTouchable(isTouchable: boolean, callback: AsyncCallback): void

設(shè)置窗口是否為可觸狀態(tài),使用callback異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isTouchableboolean窗口是否為可觸狀態(tài)。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

var isTouchable = true;
windowClass.setTouchable(isTouchable, (err, data) = > {
    if (err.code) {
        console.error('Failed to set the window to be touchable. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window to be touchable. Data:' + JSON.stringify(data));

});

setTouchable7+

setTouchable(isTouchable: boolean): Promise

設(shè)置窗口是否為可觸狀態(tài),使用Promise異步回調(diào)。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
isTouchableboolean窗口是否為可觸狀態(tài)。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

var isTouchable = true;
let promise = windowClass.setTouchable(isTouchable);
promise.then((data)= > {
    console.info('Succeeded in setting the window to be touchable. Data: ' + JSON.stringify(data));
}).catch((err)= >{
    console.error('Failed to set the window to be touchable. Cause: ' + JSON.stringify(err));
});

WindowStageEventType9+

WindowStage生命周期。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

名稱默認(rèn)值說明
FOREGROUND1切到前臺(tái)。
ACTIVE2獲焦?fàn)顟B(tài)。
INACTIVE3失焦?fàn)顟B(tài)。
BACKGROUND4切到后臺(tái)。

WindowStage9+

窗口管理器。管理各個(gè)基本窗口單元,即[Window]實(shí)例。

下列API示例中都需在[onWindowStageCreate()]函數(shù)中使用WindowStage的實(shí)例調(diào)用對(duì)應(yīng)方法。

getMainWindow9+

getMainWindow(callback: AsyncCallback): void

獲取該WindowStage實(shí)例下的主窗口,使用callback異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback<[Window]>回調(diào)函數(shù)。返回當(dāng)前WindowStage下的主窗口對(duì)象。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        var windowClass = null;
        windowStage.getMainWindow((err, data) = > {
            if (err.code) {
                console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
                return;
            }
            windowClass = data;
            console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
        });
    }
}

getMainWindow9+

getMainWindow(): Promise

獲取該WindowStage實(shí)例下的主窗口,使用Promise異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise<[Window]>Promise對(duì)象。返回當(dāng)前WindowStage下的主窗口對(duì)象。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        var windowClass = null;
        let promise = windowStage.getMainWindow();
        promise.then((data)= > {
        windowClass = data;
            console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
        }).catch((err)= >{
            console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
        });
    }
}

createSubWindow9+

createSubWindow(name: string, callback: AsyncCallback): void

創(chuàng)建該WindowStage實(shí)例下的子窗口,使用callback異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
nameString子窗口的名字。
callbackAsyncCallback<[Window]>回調(diào)函數(shù)。返回當(dāng)前WindowStage下的子窗口對(duì)象。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        var windowClass = null;
        windowStage.createSubWindow("mySubWindow", (err, data) = > {
            if (err.code) {
                console.error('Failed to create sub window. Cause: ' + JSON.stringify(err));
                return;
            }
            windowClass = data;
            console.info('Succeeded in create sub window. Data: ' + JSON.stringify(data));
            windowClass.resetSize(500, 1000);
        });
    }
}

createSubWindow9+

createSubWindow(name: string): Promise

創(chuàng)建該WindowStage實(shí)例下的子窗口,使用Promise異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
nameString子窗口的名字。

返回值:

類型說明
Promise<[Window]>Promise對(duì)象。返回當(dāng)前WindowStage下的子窗口對(duì)象。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        var windowClass = null;
        let promise = windowStage.createSubWindow("mySubWindow");
        promise.then((data)= > {
            windowClass = data;
            console.info('Succeeded in create sub window. Data: ' + JSON.stringify(data));
        }).catch((err)= >{
            console.error('Failed to create sub window. Cause: ' + JSON.stringify(err));
        })
    }
}

getSubWindow9+

getSubWindow(callback: AsyncCallback>): void

獲取該WindowStage實(shí)例下的所有子窗口,使用callback異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback>回調(diào)函數(shù)。返回當(dāng)前WindowStage下的所有子窗口對(duì)象。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        var windowClass = null;
        windowStage.getSubWindow((err, data) = > {
            if (err.code) {
                console.error('Failed to obtain the sub window. Cause: ' + JSON.stringify(err));
                return;
            }
            windowClass = data;
            console.info('Succeeded in obtaining the sub window. Data: ' + JSON.stringify(data));
        });
    }
}

getSubWindow9+

getSubWindow(): Promise>

獲取該WindowStage實(shí)例下的所有子窗口,使用Promise異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

返回值:

類型說明
Promise>Promise對(duì)象。返回當(dāng)前WindowStage下的所有子窗口對(duì)象。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        var windowClass = null;
        let promise = windowStage.getSubWindow();
        promise.then((data)= > {
            windowClass = data;
            console.info('Succeeded in obtaining the sub window. Data: ' + JSON.stringify(data));
        }).catch((err)= >{
            console.error('Failed to obtain the sub window. Cause: ' + JSON.stringify(err));
        })
    }
}

loadContent9+

loadContent(path: string, storage: LocalStorage, callback: AsyncCallback): void

為當(dāng)前WindowStage的主窗口加載與LocalStorage相關(guān)聯(lián)的具體頁(yè)面內(nèi)容,使用callback異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
pathstring設(shè)置加載頁(yè)面的路徑。
storage[LocalStorage]存儲(chǔ)單元,為應(yīng)用程序范圍內(nèi)的可變狀態(tài)屬性和非可變狀態(tài)屬性提供存儲(chǔ)。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    storage : LocalStorage  
    onWindowStageCreate(windowStage) {
        this.storage = new LocalStorage();
        this.storage.setOrCreate("storageSimpleProp",121);
        console.log('onWindowStageCreate');
        windowStage.loadContent("pages/page2",this.storage,(err, data) = > {
            if (err.code) {
                console.error('Failed to load the content. Cause:' + JSON.stringify(err));
                return;
            }
            console.info('Succeeded in loading the content. Data: ' + JSON.stringify(data));
        });
    }
}

loadContent9+

loadContent(path: string, storage?: LocalStorage): Promise

為當(dāng)前WindowStage的主窗口加載與LocalStorage相關(guān)聯(lián)的具體頁(yè)面內(nèi)容,使用Promise異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
pathstring設(shè)置加載頁(yè)面的路徑。
storage[LocalStorage]存儲(chǔ)單元,為應(yīng)用程序范圍內(nèi)的可變狀態(tài)屬性和非可變狀態(tài)屬性提供存儲(chǔ)。

返回值:

類型說明
Promise無返回結(jié)果的Promise對(duì)象。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    storage : LocalStorage 
    onWindowStageCreate(windowStage) {
        this.storage = new LocalStorage();
        this.storage.setOrCreate("storageSimpleProp",121);
        console.log('onWindowStageCreate');
        var windowClass = null;
        let promise = windowStage.loadContent("pages/page2",this.storage);
        promise.then((data)= > {
            windowClass = data;
            console.info('Succeeded in loading the content. Data: ' + JSON.stringify(data));
        }).catch((err)= >{
            console.error('Failed to load the content. Cause:' + JSON.stringify(err));
        })
    }
}

loadContent9+

loadContent(path: string, callback: AsyncCallback): void

為當(dāng)前WindowStage的主窗口加載具體頁(yè)面內(nèi)容,使用callback異步回調(diào)。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
pathstring設(shè)置加載頁(yè)面的路徑。
callbackAsyncCallback回調(diào)函數(shù)。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        windowStage.loadContent("pages/page2", (err, data) = > {
            if (err.code) {
                console.error('Failed to load the content. Cause:' + JSON.stringify(err));
                return;
            }
            console.info('Succeeded in loading the content. Data: ' + JSON.stringify(data));
        });
    }
}

on('windowStageEvent')9+

on(eventType: 'windowStageEvent', callback: Callback): void

開啟WindowStage生命周期變化的監(jiān)聽。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明
typestring監(jiān)聽事件,固定為'windowStageEvent',即WindowStage生命周期變化事件。
callbackCallback<[WindowStageEventType]>回調(diào)函數(shù)。返回當(dāng)前的WindowStage生命周期狀態(tài)。

示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        windowStage.on('windowStageEvent', (data) = > {
            console.info('Succeeded in enabling the listener for window stage event changes. Data: ' + JSON.stringify(data));
        });
    }
}

off('windowStageEvent')9+

off(eventType: 'windowStageEvent', callback?: Callback): void

關(guān)閉WindowStage生命周期變化的監(jiān)聽。

此接口僅可在Stage模型下使用。

系統(tǒng)能力: SystemCapability.WindowManager.WindowManager.Core

參數(shù):

參數(shù)名類型必填說明HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿
typestring監(jiān)聽事件,固定為'windowStageEvent',即WindowStage生命周期變化事件。
callbackCallback<[WindowStageEventType]>回調(diào)函數(shù)。返回當(dāng)前的WindowStage生命周期狀態(tài)。

鴻蒙文檔.png
示例:

import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        windowStage.off('windowStageEvent');
    }
}

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    9519

    瀏覽量

    157020
  • 圖形圖像
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    1077
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2963

    瀏覽量

    45883
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    鴻蒙開發(fā)接口圖形圖像:【@ohos.screen (屏幕)】

    本模塊提供管理屏幕的一些基礎(chǔ)能力,包括獲取屏幕對(duì)象,監(jiān)聽屏幕變化,創(chuàng)建和銷毀虛擬屏幕等。
    的頭像 發(fā)表于 05-29 10:49 ?2020次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>圖形圖像</b>:【@<b class='flag-5'>ohos</b>.screen (屏幕)】

    鴻蒙開發(fā)接口圖形圖像:【@ohos.screenshot (屏幕截圖)】

    本模塊提供屏幕截圖的能力,截取屏幕時(shí)支持設(shè)置截取的區(qū)域、大小等圖像信息。
    的頭像 發(fā)表于 05-29 15:47 ?2084次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>圖形圖像</b>:【@<b class='flag-5'>ohos</b>.screenshot (屏幕截圖)】

    鴻蒙應(yīng)用/元服務(wù)開發(fā)-窗口(Stage模型)設(shè)置懸浮窗

    窗進(jìn)行屬性設(shè)置等操作。 二、開發(fā)步驟 前提條件:創(chuàng)建WindowType.TYPE_FLOAT即懸浮窗類型的窗口,需要申請(qǐng)ohos.permission.SYSTEM_FLOAT_WINDOW權(quán)限
    發(fā)表于 02-04 14:05

    鴻蒙應(yīng)用/元服務(wù)開發(fā)-窗口(Stage模型)設(shè)置應(yīng)用主窗口

    getMainWindow接口獲取應(yīng)用主窗口。 2.設(shè)置主窗口屬性。 可設(shè)置主窗口的背景色、亮度值、是否可觸等多個(gè)屬性,開發(fā)者可根據(jù)需要選擇
    發(fā)表于 02-05 14:45

    鴻蒙原生應(yīng)用元服務(wù)開發(fā)-WebGL網(wǎng)頁(yè)圖形庫(kù)開發(fā)接口說明

    一、場(chǎng)景介紹 WebGL主要幫助開發(fā)者在前端開發(fā)中完成圖形圖像的相關(guān)處理,比如繪制彩色圖形等。目前該功能僅支持使用兼容JS的類Web開發(fā)范式
    發(fā)表于 03-11 15:51

    OpenHarmony實(shí)戰(zhàn)開發(fā)-管理系統(tǒng)窗口(僅Stage模型支持)

    窗口開發(fā) 本文以音量條窗口為例,介紹系統(tǒng)窗口的基本開發(fā)和管理步驟。 開發(fā)步驟 創(chuàng)建系統(tǒng)
    發(fā)表于 05-06 15:32

    北京將召開圖形圖像技術(shù)應(yīng)用交流大會(huì) 2013年11月將在北京...

    北京將召開圖形圖像技術(shù)應(yīng)用交流大會(huì) 2013年11月將在北京舉行圖形圖像技術(shù)應(yīng)用大會(huì),大會(huì)將邀請(qǐng)國(guó)內(nèi)圖像圖形處理技術(shù)領(lǐng)域的著名專家,就圖形圖像處理技術(shù)的應(yīng)用和最新動(dòng)態(tài)特邀報(bào)告。敬請(qǐng)關(guān)注
    發(fā)表于 09-17 15:02

    北京將召開圖形圖像技術(shù)應(yīng)用交流大會(huì) 2013年11月將在北京...

    北京將召開圖形圖像技術(shù)應(yīng)用交流大會(huì)2013年11月將在北京舉行圖形圖像技術(shù)應(yīng)用大會(huì),大會(huì)將邀請(qǐng)國(guó)內(nèi)圖像圖形處理技術(shù)領(lǐng)域的著名專家,就圖形圖像處理技術(shù)的應(yīng)用和最新動(dòng)態(tài)特邀報(bào)告。敬請(qǐng)關(guān)注中
    發(fā)表于 09-17 15:06

    計(jì)算機(jī)圖形圖像處理最新應(yīng)用分析

    計(jì)算機(jī)圖形圖像處理最新應(yīng)用分析 圖形圖像處理是研究計(jì)算機(jī)除了圖形圖像的原理、方法和技術(shù)的科學(xué)。它是計(jì)算機(jī)科學(xué)和應(yīng)用的重要分支之一,同時(shí)隨著計(jì)算機(jī)技術(shù)的發(fā)展,圖形圖像技術(shù)在土木工程、機(jī)械
    發(fā)表于 09-23 14:56

    圖形圖像處理實(shí)驗(yàn)的工程文件免費(fèi)下載

      本文檔的主要內(nèi)容詳細(xì)介紹的是圖形圖像處理實(shí)驗(yàn)的工程文件免費(fèi)下載。
    發(fā)表于 11-03 17:50 ?9次下載
    <b class='flag-5'>圖形圖像</b>處理實(shí)驗(yàn)的工程文件免費(fèi)下載

    鴻蒙開發(fā)圖形圖像——@ohos.effectKit (圖像效果)

    圖像效果提供處理圖像的一些基礎(chǔ)能力,包括對(duì)當(dāng)前圖像的亮度調(diào)節(jié)、模糊化、灰度調(diào)節(jié)、智能取色等。 該模塊提供以下圖像效果相關(guān)的常用功能: Filter:效果類,用于添加指定效果到
    的頭像 發(fā)表于 02-22 16:08 ?1101次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>圖形圖像</b>——@<b class='flag-5'>ohos</b>.effectKit (<b class='flag-5'>圖像</b>效果)

    鴻蒙開發(fā)圖形圖像:【圖形子系統(tǒng)】

    圖形子系統(tǒng)主要包括UI組件、布局、動(dòng)畫、字體、輸入事件、窗口管理、渲染繪制等模塊,構(gòu)建基于輕量OS應(yīng)用框架滿足硬件資源較小的物聯(lián)網(wǎng)設(shè)備或者構(gòu)建基于標(biāo)準(zhǔn)OS的應(yīng)用框架滿足富設(shè)備的OpenHarmony系統(tǒng)應(yīng)用開發(fā)
    的頭像 發(fā)表于 03-23 16:50 ?1464次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>圖形圖像</b>:【<b class='flag-5'>圖形</b>子系統(tǒng)】

    鴻蒙OS元服務(wù)開發(fā)說明:【W(wǎng)ebGL網(wǎng)頁(yè)圖形庫(kù)開發(fā)接口

    WebGL主要幫助開發(fā)者在前端開發(fā)中完成圖形圖像的相關(guān)處理,比如繪制彩色圖形等。目前該功能僅支持使用兼容JS的類Web開發(fā)范式
    的頭像 發(fā)表于 04-02 17:02 ?921次閱讀
    <b class='flag-5'>鴻蒙</b>OS元服務(wù)<b class='flag-5'>開發(fā)</b>說明:【W(wǎng)ebGL網(wǎng)頁(yè)<b class='flag-5'>圖形</b>庫(kù)<b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b>】

    鴻蒙開發(fā)接口圖形圖像:【W(wǎng)ebGL】

    WebGL提供圖形繪制的能力,包括對(duì)當(dāng)前繪制圖形的位置、顏色等進(jìn)行處理。
    的頭像 發(fā)表于 05-30 09:31 ?1521次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>圖形圖像</b>:【W(wǎng)ebGL】

    鴻蒙開發(fā)接口圖形圖像:【W(wǎng)ebGL2】

    WebGL2支持圖形的繪制,包括對(duì)當(dāng)前繪制圖形的位置、顏色等進(jìn)行處理,其中相對(duì)WebGL來說對(duì)渲染管道和著色語(yǔ)言進(jìn)行了增強(qiáng)。
    的頭像 發(fā)表于 05-30 15:19 ?1246次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>圖形圖像</b>:【W(wǎng)ebGL2】