# US 10,120,659 B2 · Adaptive user interfaces

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,120,659 B2
- Document ID: US10120659B2
- Status: Granted
- Kind: B2
- Application number: 14/503,139
- Filed: 2014-09-30
- Published: 2015-12-03
- Granted: 2018-11-06
- Earliest claimed: 2014-05-30
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Kevin Cathey; Maxwell Oliver Drukman; Antonio Ricciardi; Jonathan Joseph Hess
- Web page: https://patentgrep.com/patent/US10120659B2

## CPC

- G06F 8/38: for implementing user interfaces
- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 3/0484: for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F 2203/04803: Split screen, i.e. subdividing the display area or the window area into separate subareas
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Described is a technique for creating and displaying adaptive user interfaces. The user interface may be provided to an application development environment that provides the ability to allow authoring of a user interface that adapts to a screen size with any first abstracted size class value and any second abstracted size class value. Accordingly, an application that includes the user interface may determine a screen size of a device and adapt the user interface according to the screen size including the first abstracted size clasp value and the second abstracted size class value. Thus, a developer may efficiently develop a user interface based on various abstracted size class values that may be adapted to a particular device.

## Claims

### Claim 1

A computer-implemented method comprising:
receiving a user interface by an application development environment, the application development environment providing an ability to allow authoring of a user interface that adapts to a screen size with any first abstracted size class value and any second abstracted size class value;
creating an application including the user interface, wherein creating the application includes:
receiving, by a tool displayed within the application development environment, a graphical selection of a first abstracted size class value corresponding to a width of the user interface and a second abstracted size class value corresponding to a height of the user interface from a predefined set of abstracted size class values provided by the tool, wherein the application is configured to:
determine a screen size of a device, the screen size including a width corresponding to the first abstracted size class value and a height corresponding to the second abstracted size class value;
adapt the user interface according to the screen size; and
display the adapted user interface on the device.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein creating the application further includes:
specifying a second user interface element as an override to a first user interface element of the user interface, wherein when the screen size does not support at least one of the selected first abstracted size class value or the selected second abstracted size class value, the user interface is adapted to override the first user interface element with the second user interface element.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein the second user interface element modifies at least one of color, text, or location of the first user interface element.

### Claim 4 (depends on 2)

The computer-implemented method of claim 2, wherein the user interface includes a multi-pane interface and overriding the first user interface element with the second user interface element applies only to one pane within the multi-pane interface.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the first abstracted size class value or the second abstracted size class value is defined as a compact or regular abstracted size class value.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the first abstracted size class value and second abstracted size class value define a circular screen size.

### Claim 7

A system comprising:
a processor;
a computer-readable storage medium having stored therein instructions which, when executed by the processor, cause the processor to perform operations comprising:
receiving a user interface by an application development environment, the application development environment providing the ability to allow authoring of a user interface that adapts to a screen size with any first abstracted size class value and any second abstracted size class value;
creating an application including the user interface, wherein creating the application includes:
receiving, by a tool displayed within the application development environment, a graphical selection of a first abstracted size class value corresponding to a width of the user interface and a second abstracted size class value corresponding to a height of the user interface from a predefined set of abstracted size class values provided by the tool, wherein the application is configured to:
determine a screen size of a device, the screen size including a width corresponding to the first abstracted size class value and a height corresponding to the second abstracted size class value;
adapt the user interface according to the screen size; and
display the adapted user interface on the device.

### Claim 8 (depends on 7)

The system of claim 7, the operations to create the application further including:
specifying a second user interface element as an override to a first user interface element of the user interface, wherein when the screen size does not support at least one of the selected first abstracted size class value or the selected second abstracted size class value, the user interface is adapted to override the first user interface element with the second user interface element.

### Claim 9 (depends on 8)

The system of claim 8, wherein the second user interface element modifies at least one of color, text, or location of the first user interface element.

### Claim 10 (depends on 8)

The system of claim 8, wherein the user interface includes a multi-pane interface and overriding the first user interface element with the second user interface element applies only to one pane within the multi-pane interface.

### Claim 11 (depends on 7)

The system of claim 7, wherein the first abstracted size class value or the second abstracted size class value is defined as a compact or regular abstracted size class value.

### Claim 12

A non-transitory computer-readable storage medium having stored therein instructions which, when executed by a processor, cause the processor to perform operations comprising:
receiving a user interface by an application development environment, the application development environment providing the ability to allow authoring of a user interface that adapts to a screen size with any first abstracted size class value and any second abstracted size class value;
creating an application including the user interface, wherein creating the application includes:
receiving, by a tool displayed within the application development environment, a graphical selection of a first abstracted size class value corresponding to a width of the user interface and a second abstracted size class value corresponding to a height of the user interface from a predefined set of abstracted size class values provided by the tool, wherein the application is configured to:
determine a screen size of a device, the screen size including a width corresponding to the first abstracted size class value and a height corresponding to the second abstracted size class value;
adapt the user interface according to the screen size; and
display the adapted user interface on the device.

### Claim 13 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, the operations further comprising:
specifying a second user interface element as an override to a first user interface element of the user interface, wherein when the screen size does not support at least one of the selected first abstracted size class value or the selected second abstracted size class value, the user interface is adapted to override the first user interface element with the second user interface element.

### Claim 14 (depends on 13)

The non-transitory computer-readable storage medium of claim 13, wherein the second user interface element modifies at least one of color, text, or location of the first user interface element.

### Claim 15 (depends on 13)

The non-transitory computer-readable storage medium of claim 13, wherein the user interface includes a multi-pane interface and overriding the first user interface element with the second user interface element applies only to one pane within the multi-pane interface.

### Claim 16 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the first abstracted size class value or the second abstracted size class value is defined as a compact or regular abstracted size class value.

### Claim 17 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the first abstracted size class value and second abstracted size class value define a circular screen size.

### Claim 18 (depends on 1)

The computer-implemented method of claim 1, wherein the tool displays a selectable grid as a graphical representation of the user interface displayed within the application development environment.

### Claim 19 (depends on 2)

The computer-implemented method of claim 2, wherein the first user interface element and the second user interface element are buttons with text, wherein a number of characters in the second user interface element is less than the number of characters in the first user interface element.

### Claim 20 (depends on 18)

The computer-implemented method of claim 18, wherein the selectable components of the grid correspond to the predefined set of abstracted size class values provided by the tool.

### Claim 21 (depends on 1)

The computer-implemented method of claim 1, wherein creating the application further includes:
providing, within the application development environment, a preview display of the user interface, and wherein the tool is displayed concurrently with the preview display.
