1e41f4b71Sopenharmony_ci# @system.mediaquery (Media Query)
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ciThe **mediaquery** module provides different styles for different media types.
4e41f4b71Sopenharmony_ci
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ci> **NOTE**
7e41f4b71Sopenharmony_ci>
8e41f4b71Sopenharmony_ci> - The APIs of this module are no longer maintained since API version 7. You are advised to use [`@ohos.mediaquery`](js-apis-mediaquery.md) instead.
9e41f4b71Sopenharmony_ci> - The initial APIs of this module are supported since API version 3. Newly added APIs will be marked with a superscript to indicate their earliest API version.
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci## Modules to Import
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci
15e41f4b71Sopenharmony_ci```ts
16e41f4b71Sopenharmony_ciimport mediaquery from '@system.mediaquery';
17e41f4b71Sopenharmony_ci```
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ci## mediaquery.matchMedia
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_cimatchMedia(condition: string): MediaQueryList
23e41f4b71Sopenharmony_ci
24e41f4b71Sopenharmony_ciCreates a **MediaQueryList** object based on the query condition.
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci**System capability**: SystemCapability.ArkUI.ArkUI.Full
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ci**Parameters**
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ci| Name      | Type    | Mandatory  | Description      |
31e41f4b71Sopenharmony_ci| --------- | ------ | ---- | -------- |
32e41f4b71Sopenharmony_ci| condition | string | Yes   | Query condition.|
33e41f4b71Sopenharmony_ci
34e41f4b71Sopenharmony_ci**Return value**
35e41f4b71Sopenharmony_ci
36e41f4b71Sopenharmony_ci| Type          | Description                                      |
37e41f4b71Sopenharmony_ci| -------------- | ---------------------------------------- |
38e41f4b71Sopenharmony_ci| MediaQueryList | Attributes of the **MediaQueryList** object created. For details, see **MediaQueryList** attributes.|
39e41f4b71Sopenharmony_ci
40e41f4b71Sopenharmony_ci**Example**
41e41f4b71Sopenharmony_ci
42e41f4b71Sopenharmony_ci```ts
43e41f4b71Sopenharmony_cilet mMediaQueryList = mediaquery.matchMedia('(max-width: 466)');    
44e41f4b71Sopenharmony_ci```
45e41f4b71Sopenharmony_ci
46e41f4b71Sopenharmony_ci## MediaQueryEvent
47e41f4b71Sopenharmony_ci
48e41f4b71Sopenharmony_ciDefines a media query event.
49e41f4b71Sopenharmony_ci
50e41f4b71Sopenharmony_ci**System capability**: SystemCapability.ArkUI.ArkUI.Full
51e41f4b71Sopenharmony_ci
52e41f4b71Sopenharmony_ci| Name     | Type   | Mandatory  | Description   |
53e41f4b71Sopenharmony_ci| ------- | ------- | ---- | ----- |
54e41f4b71Sopenharmony_ci| matches | boolean | Yes   | Matching result.|
55e41f4b71Sopenharmony_ci
56e41f4b71Sopenharmony_ci## MediaQueryList
57e41f4b71Sopenharmony_ci
58e41f4b71Sopenharmony_ciDefines a media query list.
59e41f4b71Sopenharmony_ci
60e41f4b71Sopenharmony_ci### Attributes
61e41f4b71Sopenharmony_ci
62e41f4b71Sopenharmony_ci**System capability**: SystemCapability.ArkUI.ArkUI.Full
63e41f4b71Sopenharmony_ci
64e41f4b71Sopenharmony_ci| Name     | Type   | Mandatory  | Description               |
65e41f4b71Sopenharmony_ci| ------- | ------- | ---- | ----------------- |
66e41f4b71Sopenharmony_ci| media   | string  | No   | Serialized media query condition. This parameter is read-only.|
67e41f4b71Sopenharmony_ci| matches | boolean | Yes   | Matching result.            |
68e41f4b71Sopenharmony_ci
69e41f4b71Sopenharmony_ci### onchange
70e41f4b71Sopenharmony_ci
71e41f4b71Sopenharmony_cionchange?: (matches: boolean) => void
72e41f4b71Sopenharmony_ci
73e41f4b71Sopenharmony_ciCalled when the **matches** value changes.
74e41f4b71Sopenharmony_ci
75e41f4b71Sopenharmony_ci**System capability**: SystemCapability.ArkUI.ArkUI.Full
76e41f4b71Sopenharmony_ci
77e41f4b71Sopenharmony_ci**Parameters**
78e41f4b71Sopenharmony_ci
79e41f4b71Sopenharmony_ci| Name    | Type     | Mandatory  | Description            |
80e41f4b71Sopenharmony_ci| ------- | ------- | ---- | -------------- |
81e41f4b71Sopenharmony_ci| matches | boolean | Yes   | New **matches** value.|
82e41f4b71Sopenharmony_ci
83e41f4b71Sopenharmony_ci
84e41f4b71Sopenharmony_ci### MediaQueryList.addListener
85e41f4b71Sopenharmony_ci
86e41f4b71Sopenharmony_ciaddListener(callback: (event: MediaQueryEvent) => void): void
87e41f4b71Sopenharmony_ci
88e41f4b71Sopenharmony_ciAdds a listener for this **MediaQueryList** object. The listener must be added before **onShow** is called, that is, it must be added in the **onInit** or **onReady** API.
89e41f4b71Sopenharmony_ci
90e41f4b71Sopenharmony_ci**System capability**: SystemCapability.ArkUI.ArkUI.Full
91e41f4b71Sopenharmony_ci
92e41f4b71Sopenharmony_ci**Parameters**
93e41f4b71Sopenharmony_ci
94e41f4b71Sopenharmony_ci| Name     | Type                              | Mandatory  | Description            |
95e41f4b71Sopenharmony_ci| -------- | -------------------------------- | ---- | -------------- |
96e41f4b71Sopenharmony_ci| callback | (event: MediaQueryEvent) => void | Yes   | Callback invoked when the query condition changes.|
97e41f4b71Sopenharmony_ci
98e41f4b71Sopenharmony_ci**Example**
99e41f4b71Sopenharmony_ci
100e41f4b71Sopenharmony_ci```ts
101e41f4b71Sopenharmony_ciimport mediaquery, { MediaQueryEvent } from '@system.mediaquery';
102e41f4b71Sopenharmony_cilet mMediaQueryList = mediaquery.matchMedia('(max-width: 466)');
103e41f4b71Sopenharmony_ci
104e41f4b71Sopenharmony_cifunction maxWidthMatch(e: MediaQueryEvent): void {
105e41f4b71Sopenharmony_ci  if(e.matches){
106e41f4b71Sopenharmony_ci    // do something
107e41f4b71Sopenharmony_ci  }
108e41f4b71Sopenharmony_ci}
109e41f4b71Sopenharmony_cimMediaQueryList.addListener(maxWidthMatch);
110e41f4b71Sopenharmony_ci```
111e41f4b71Sopenharmony_ci
112e41f4b71Sopenharmony_ci
113e41f4b71Sopenharmony_ci### MediaQueryList.removeListener
114e41f4b71Sopenharmony_ci
115e41f4b71Sopenharmony_ciremoveListener(callback: (event: MediaQueryEvent) => void): void
116e41f4b71Sopenharmony_ci
117e41f4b71Sopenharmony_ciRemoves the listener for this **MediaQueryList** object.
118e41f4b71Sopenharmony_ci
119e41f4b71Sopenharmony_ci**System capability**: SystemCapability.ArkUI.ArkUI.Full
120e41f4b71Sopenharmony_ci
121e41f4b71Sopenharmony_ci**Parameters**
122e41f4b71Sopenharmony_ci
123e41f4b71Sopenharmony_ci| Name     | Type                               | Mandatory  | Description            |
124e41f4b71Sopenharmony_ci| -------- | --------------------------------- | ---- | -------------- |
125e41f4b71Sopenharmony_ci| callback | (event: MediaQueryEvent) => void) | Yes   | Callback invoked when the query condition changes.|
126e41f4b71Sopenharmony_ci
127e41f4b71Sopenharmony_ci**Example**
128e41f4b71Sopenharmony_ci
129e41f4b71Sopenharmony_ci```ts
130e41f4b71Sopenharmony_ciimport mediaquery, { MediaQueryEvent } from '@system.mediaquery';
131e41f4b71Sopenharmony_cilet mMediaQueryList = mediaquery.matchMedia('(max-width: 466)');
132e41f4b71Sopenharmony_ci
133e41f4b71Sopenharmony_cifunction maxWidthMatch(e: MediaQueryEvent): void {
134e41f4b71Sopenharmony_ci  if(e.matches){
135e41f4b71Sopenharmony_ci    // do something
136e41f4b71Sopenharmony_ci  }
137e41f4b71Sopenharmony_ci}
138e41f4b71Sopenharmony_cimMediaQueryList.removeListener(maxWidthMatch);
139e41f4b71Sopenharmony_ci```
140