Methods, systems, and media for presenting a user interface in a wearable device

文档序号:1440088 发布日期:2020-02-14 浏览:17次 中文

阅读说明:本技术 用于在可穿戴设备中呈现用户界面的方法、系统和介质 (Methods, systems, and media for presenting a user interface in a wearable device ) 是由 朱利叶斯·德索萨 安哲津 于 2018-08-17 设计创作,主要内容包括:提供了用于呈现偏移内容的方法、系统和介质。在一些实施例中,该方法包括:使第一用户界面呈现在用户设备的显示器上的第一位置;接收指示第一用户界面将被移动的用户输入;确定用于第一用户界面的呈现的偏移;使基于所确定的偏移将第一用户界面呈现在第二位置,使得当将第一用户界面呈现在第二位置时第一用户界面的一部分不再可见,并且使得当第一用户界面呈现在第二位置时显示器的一部分未使用;当第一用户界面呈现在第二位置时,使与在第一用户界面中呈现的内容有关的第二用户界面呈现在显示器的未使用的部分内;以及响应于确定已经过去预定的持续时间,使第一用户界面呈现在第一位置并且使第二用户界面被移除。(Methods, systems, and media for presenting offset content are provided. In some embodiments, the method comprises: causing a first user interface to appear at a first location on a display of a user device; receiving a user input indicating that the first user interface is to be moved; determining an offset for presentation of the first user interface; causing presentation of the first user interface at the second location based on the determined offset such that a portion of the first user interface is no longer visible when the first user interface is presented at the second location and such that a portion of the display is unused when the first user interface is presented at the second location; causing a second user interface related to content presented in the first user interface to be presented within the unused portion of the display when the first user interface is presented at the second location; and in response to determining that the predetermined duration of time has elapsed, causing the first user interface to be presented at the first location and the second user interface to be removed.)

1. A method for presenting offset content, the method comprising:

causing a first user interface to appear at a first location on a display of a user device;

receiving a user input indicating that the first user interface is to be moved;

determining an offset for presentation of the first user interface;

causing the first user interface to be presented at a second location based on the determined offset, such that a portion of the first user interface is no longer visible when the first user interface is presented at the second location, and such that a portion of the display is unused when the first user interface is presented at the second location;

causing a second user interface related to content presented in the first user interface to be presented within an unused portion of the display while the first user interface is presented in the second position; and

in response to determining that a predetermined duration of time has elapsed, causing the first user interface to be presented in the first location and the second user interface to be removed.

2. The method of claim 1, wherein the user input is a press of a button associated with the user device.

3. The method of claim 1 or claim 2, wherein the user input is a tilt of the user device detected by a motion sensor associated with the user device.

4. The method of claim 3, wherein the offset is determined based on a magnitude of the tilt.

5. The method of any of the preceding claims, further comprising:

identifying a contextual control associated with the content presented in the first user interface; and

causing the contextual control to be presented in the second user interface within an unused portion of the display when the first user interface is presented at the second location.

6. The method of claim 5, further comprising:

identifying a second contextual control; and

causing the second contextual control to be presented in the second user interface within the unused portion of the display in response to receiving user input that eliminates the contextual control from the portion of the display while the first user interface is presented at the second location.

7. The method of claim 5 or 6, wherein the contextual control comprises a control for manipulating playback of media content presented by the user device.

8. A system for presenting offset content, the system comprising:

a memory; and

a hardware processor, which when executing computer-executable instructions stored in the memory, is configured to:

causing a first user interface to appear at a first location on a display of a user device;

receiving a user input indicating that the first user interface is to be moved;

determining an offset for presentation of the first user interface;

causing presentation of the first user interface at a second location based on the determined offset such that a portion of the first user interface is no longer visible when the first user interface is presented at the second location and such that a portion of the display is unused when the first user interface is presented at the second location;

causing a second user interface related to content presented in the first user interface to be presented within an unused portion of the display while the first user interface is presented in the second position; and

in response to determining that a predetermined duration of time has elapsed, causing the first user interface to be presented at the first location and the second user interface to be removed.

9. The system of claim 8, wherein the user input is a press of a button associated with the user device.

10. The system of claim 8 or claim 9, wherein the user input is a tilt of the user device detected by a motion sensor associated with the user device.

11. The system of claim 10, wherein the offset is determined based on a magnitude of the tilt.

12. The system of any of claims 8 to 11, wherein the hardware processor is further configured to:

identifying a contextual control associated with the content presented in the first user interface; and

causing the contextual control to be presented in the second user interface within an unused portion of the display when the first user interface is presented at the second location.

13. The system of claim 12, wherein the hardware processor is further configured to:

identifying a second contextual control; and

causing the second contextual control to be presented in the second user interface within the unused portion of the display in response to receiving user input to eliminate the contextual control from the portion of the display while the first user interface is presented at the second location.

14. The system of claim 12 or claim 13, wherein the contextual control comprises a control for manipulating playback of media content presented by the user device.

15. A non-transitory computer-readable medium containing computer-executable instructions that, when executed by a processor, cause the processor to perform a method for presenting offset content, the method comprising:

causing a first user interface to appear at a first location on a display of a user device;

receiving a user input indicating that the first user interface is to be moved;

determining an offset for presentation of the first user interface;

causing presentation of the first user interface at a second location based on the determined offset such that a portion of the first user interface is no longer visible when the first user interface is presented at the second location and such that a portion of the display is unused when the first user interface is presented at the second location;

causing a second user interface related to content presented in the first user interface to be presented within an unused portion of the display while the first user interface is presented in the second position; and

in response to determining that a predetermined duration of time has elapsed, causing the first user interface to be presented in the first location and the second user interface to be removed.

16. The non-transitory computer-readable medium of claim 15, wherein the user input is a press of a button associated with the user device.

17. The non-transitory computer-readable medium of claim 15 or claim 16, wherein the user input is a tilt of the user device detected by a motion sensor associated with the user device.

18. The non-transitory computer-readable medium of claim 17, wherein the offset is determined based on a magnitude of the tilt.

19. The non-transitory computer-readable medium of any of claims 15 to 18, wherein the method further comprises:

identifying a contextual control associated with the content presented in the first user interface; and

causing the contextual control to be presented in the second user interface within an unused portion of the display when the first user interface is presented at the second location.

20. The non-transitory computer-readable medium of claim 19, wherein the method further comprises:

identifying a second contextual control; and

causing the second contextual control to be presented in the second user interface within the unused portion of the display in response to receiving user input to eliminate the contextual control from the portion of the display while the first user interface is presented at the second location.

21. The non-transitory computer-readable medium of claim 19 or claim 20, wherein the contextual control comprises a control for manipulating playback of media content presented by the user device.

Technical Field

The disclosed subject matter relates to methods, systems, and media for presenting offset content.

Background

Increasingly, people use user devices such as smart watches or other wearable computers. These types of user devices typically have a relatively small display size or may have a curved display (e.g., a circular display and/or any other suitable type of curved display). Such a relatively small display size or curved display may make it difficult to render content on the display. For example, in some cases, a small obstruction, such as a finger covering the display or a pair of hands of a smart watch, may make some content for presentation on the display invisible to the wearer of the device. As another example, when the display size is relatively small, it may be difficult to present user interface controls to interact with content presented on the display.

Accordingly, it is desirable to provide methods, systems, and media for presenting offset content.

Disclosure of Invention

Methods, systems, and media for presenting offset content are provided.

In accordance with some embodiments of the disclosed subject matter, there is provided a method for presenting offset content, the method comprising: causing a first user interface to appear at a first location on a display of a user device; receiving a user input indicating that the first user interface is to be moved; determining an offset for presentation of the first user interface; causing presentation of the first user interface at the second location based on the determined offset such that a portion of the first user interface is no longer visible when the first user interface is presented at the second location and such that a portion of the display is unused when the first user interface is presented at the second location; causing a second user interface related to content presented in the first user interface to be presented within the unused portion of the display when the first user interface is presented at the second location; and in response to determining that the predetermined duration of time has elapsed, causing the first user interface to be presented at the first location and the second user interface to be removed.

In accordance with some embodiments of the disclosed subject matter, there is provided a system for presenting offset content, the system comprising a memory and a hardware processor configured, when executing computer executable instructions stored in the memory, to: causing a first user interface to appear at a first location on a display of a user device; receiving a user input indicating that the first user interface is to be moved; determining an offset for presentation of the first user interface; causing presentation of the first user interface at the second location based on the determined offset such that a portion of the first user interface is no longer visible when the first user interface is presented at the second location and such that a portion of the display is unused when the first user interface is presented at the second location; causing a second user interface related to content presented in the first user interface to be presented within the unused portion of the display when the first user interface is presented at the second location; in response to determining that the predetermined duration has elapsed, the first user interface is presented at the first location and the second user interface is removed.

In accordance with some implementations of the disclosed subject matter, there is provided a non-transitory computer-readable medium containing computer-executable instructions that, when executed by a processor, cause the processor to perform a method for presenting offset content, the method comprising: causing a first user interface to appear at a first location on a display of a user device; receiving a user input indicating that the first user interface is to be moved; determining an offset for presentation of the first user interface; causing presentation of the first user interface at the second location based on the determined offset such that when the first user interface is presented at the second location, a portion of the first user interface is no longer visible and such that when the first user interface is presented at the second location, a portion of the display is unused; causing a second user interface related to content presented in the first user interface to be presented within the unused portion of the display when the first user interface is presented at the second location; and in response to determining that the predetermined duration has elapsed, causing the first user interface to be presented at the first location and the second user interface to be removed.

In accordance with some embodiments of the disclosed subject matter, there is provided a system for presenting offset content, the system comprising: means for presenting a first user interface at a first location on a display of a user device; means for receiving a user input indicating that the first user interface is to be moved; means for determining an offset for presentation of the first user interface; means for presenting the first user interface in a second position based on the determined offset such that when the first user interface is presented in the second position, a portion of the first user interface is no longer visible and when the first user interface is presented in the second position, a portion of the display is unused; means for causing a second user interface related to content presented in the first user interface to be presented within an unused portion of the display when the first user interface is presented at a second location; and means for causing the first user interface to be presented at the first location and the second user interface to be removed in response to determining that the predetermined duration has elapsed.

In some embodiments, the user input is a press of a button associated with the user device.

In some embodiments, the user input is a tilt of the user device detected by a motion sensor associated with the user device. In some embodiments, the offset is determined based on the magnitude of the tilt.

In some embodiments, the system further comprises: means for identifying a contextual control associated with content presented in a first user interface; and means for causing a contextual control to be presented in a second user interface within a portion of the unused display when the first user interface is presented in the second location.

In some embodiments, the system further comprises: identifying a second contextual control; and causing a second contextual control to be presented in a second user interface within a portion of the unused display when the first user interface is presented in a second location in response to receiving user input to eliminate the contextual control from the portion of the display.

In some embodiments, the contextual controls include controls for manipulating playback of media content presented by the user device.

Drawings

Various objects, features and advantages of the disclosed subject matter can be more fully understood by reference to the following detailed description of the disclosed subject matter when considered in connection with the following drawings, wherein like reference numerals identify like elements.

Fig. 1A and 1B illustrate examples of user interfaces for presenting offset content in accordance with some embodiments of the disclosed subject matter.

Fig. 2A-2D illustrate examples of user interfaces for presenting offset content associated with a context control, according to some implementations of the disclosed subject matter.

FIG. 3 shows a schematic diagram of an illustrative system suitable for implementing the mechanisms for presenting offset content described herein, in accordance with some embodiments of the disclosed subject matter.

Fig. 4 illustrates a detailed example of hardware that may be used in the server and/or user device of fig. 3, according to some embodiments of the disclosed subject matter.

FIG. 5 shows an illustrative example of a process for presenting offset content in accordance with some embodiments of the disclosed subject matter.

Detailed Description

According to various implementations, mechanisms (which may include methods, systems, and media) are provided for presenting offset content.

In some implementations, the mechanism may cause the first content to be presented on a user device such as a wearable computer (e.g., a smart watch or other wearable computing device), a vehicle computer, a tablet computer, a mobile phone, and/or any other suitable type of computing device. In some implementations, the first content may be any suitable type of content, such as a home screen of the user device, a messaging client, map content, content from a fitness tracker, a display associated with a media player, and/or any other suitable type of content. In some implementations, the mechanism may determine that the first content is to be moved in a particular direction (e.g., up, down, left, right, and/or in any other suitable direction) and by a particular amount.

In some implementations, the first content can be moved in a direction that causes a portion of the display to no longer be used to display the first content. For example, in instances where the first content is moving upward, the bottom portion of the display screen may no longer be used to display the first content. In some such implementations, the mechanism may cause the second content to be presented in an unused portion of the display. For example, in some implementations, the second content can include a context control that interacts with the first content. As a more particular example, in instances where the first content is a user interface presenting a map, the second content may include a user interface control for zooming in or out on the map, a control for obtaining directions to a particular location, and/or any other suitable control. As another example, in some implementations, the second content can include a contextual control for interacting with an application executing in the background of the user device, such as a media player that causes audio content to be presented by the user device. As a more particular example, in some implementations, in instances where the contextual control is a control for interacting with the media player, the contextual controls can include a pause button, volume adjustment, and/or any other suitable control.

In some implementations, the mechanism may determine that the first content is to be moved based on any suitable information. For example, in some implementations, the mechanism may determine that the first content is to be moved based on determining that a particular button (e.g., a power button and/or any other suitable button) associated with the user device has been pressed. As another example, in some implementations, the mechanism may determine that the first content is to move based on determining that the user device has rotated or tilted in a particular direction, which may indicate that the first content is to move in a corresponding direction. In yet another example, in some implementations, the mechanism can determine that the first content will be offset from its initial center point by a particular distance based on a desired size of the second content including one or more contextual controls.

Referring to fig. 1A and 1B, an illustrative example of a user interface for presenting offset content is shown, according to some embodiments of the disclosed subject matter. In some implementations, the user interface can be presented on any suitable type of user device. For example, as shown in fig. 1A and 1B, in some implementations, the user interface may be presented on a wearable computing device, such as a watch. As another example, in some implementations, the user interface may be presented on any other suitable type of user device, such as a mobile phone, a tablet computer, a media player, and/or any other suitable type of user device. Note that in some implementations, the user device may have a display screen of any suitable shape (e.g., circular, oval, square, rectangular, curved rectangular, and/or any other suitable shape).

In some implementations, as shown in FIG. 1A, the content 100 can be presented on a user device. In some implementations, the content 100 may then be moved (e.g., up, down, left, right, diagonal, and/or in any other suitable direction). For example, as shown in FIG. 1B, the content 100 may be moved upward such that a portion 140 of the content 100 is no longer within the display of the user device and the remainder 130 of the content 100 is displayed on the user device. In some implementations, a portion of the screen that no longer includes content 100, such as portion 150, may be blank, as shown in fig. 1B, and portion 150 may include any suitable additional content, as shown and described below in connection with fig. 2A-2D. Note that in some implementations, as described in more detail below in connection with block 504 of fig. 5, content 100 may be moved in response to the user device receiving any suitable type of user input, such as a button press, a motion detected by the user device, and/or any other suitable type of user input. .

It should be noted that in some implementations, in response to moving or shifting the content 100 such that the portion 140 of the content 100 will no longer be displayed within the display of the user device, the content 100 may be modified such that the content 100 fits within the remaining portion 130. In some implementations, the user device may include a display to indicate whether to offset the content 100 or resize or otherwise redraw the content 100 to fit within the remaining portion 130. Additionally or alternatively, a content provider associated with the content 100 may indicate whether to offset the content 100 (or a particular type of content) in response to receiving a request to present the second content in the portion 150. For example, the content provider may associate an indication with the content that prohibits the content from being skewed. In another example, a content provider can associate particular controls for presentation with particular types of content (e.g., media playback controls for playing back media content items and navigation controls for interacting with playlists of media content items).

It should also be noted that in some implementations, the user device can present settings, such as context controls, that indicate the direction of the offset for presenting the additional content. For example, when the user device is a wearable computing device placed on the user's left wrist, the setting may be selected to offset the content 100 so that the additional content appears at the right edge of the display. In another example, settings can be presented that cause a first type of content (e.g., a contextual control) to be presented by moving the content 100 in an upward direction while a second type of content (e.g., an indicator of additional content such as additional information about a restaurant corresponding to a location in the map content) is presented by moving the content 100 in a diagonal direction and presenting the second type of content in a corner of the display.

It should also be noted that, in some implementations, the user device may determine the offset of the content 100 in response to presenting additional content, such as context controls for interacting with the content 100. For example, the user device may analyze the content 100 to determine primary content from secondary content, and based on this determination, the content 100 may be shifted such that at least a portion of the primary content continues to be presented while additional content is presented within the area of the secondary content. In a more specific example, content 100 may be analyzed (e.g., at a user device or transmitted to an external server device for analysis) that includes map content having areas that may be of interest and areas that may not be of interest (e.g., white space, areas of a facility that do not provide additional content), and, in response to performing the analysis, the content 100 may be moved to present the additional content within the areas that are not of interest while continuing to present the areas of possible interest. In another more particular example, the content 100 may be analyzed to determine blank portions in the content 100, and the content 100 may be shifted based on the determined blank portions to present additional content in a portion of the content 100 that includes a particular number of blank portions (e.g., greater than a threshold area).

Fig. 2A and 2B show illustrative examples of user interfaces for presenting map content in accordance with some implementations of the disclosed subject matter. For example, in some implementations, the map content 200 may be presented on a user device and may include any suitable image or graphic, such as a map of a particular geographic location. In some implementations, the map content 200(, e.g., up, down, left, right, diagonal, and/or in any other suitable direction) may then be moved. For example, as shown in fig. 2B, the map content 200 may be moved upward such that a portion of the map content 200 is no longer visible on the display of the user device, while the remaining portion 210 is presented on the user device. Additionally, in some implementations, the contextual control 220 can be presented in a portion of the display that no longer includes map content 200. For example, as shown in fig. 2B, contextual controls 220 may include controls suitable for interacting with map content 200, such as selectable inputs for zooming in or out of the map content, directions to a particular location, within a geographic location for locating a particular type of facility (e.g., restaurant, store type, etc.) control, and/or any other suitable type of control.

Fig. 2C and 2D illustrate examples of user interfaces for presenting content associated with a fitness tracker (e.g., a running tracker, a pedometer, and/or any other suitable type of content), according to some embodiments of the disclosed subject matter. For example, in some implementations, the content 250 may be presented on a user device and may include any suitable text, images, icons, graphics, animations, and/or any other suitable content. As a more particular example, as shown in fig. 2C, content 250 may include a duration of time elapsed since the timer started, a distance elapsed during the elapsed time, a pace corresponding to the distance elapsed, and/or any other suitable information. In some implementations, the content 250 can then be moved (e.g., up, down, left, right, diagonal, and/or in any other suitable direction). For example, as shown in fig. 2D, content 250 may be moved in an upward direction such that a portion of content 250 is no longer visible on the display of the user device and a remaining portion 260 is presented on the user device. Additionally, in some implementations, contextual controls 270 can be presented in a portion of the display that no longer includes content 250. For example, in some implementations, contextual controls 270 may include controls suitable for interacting with the fitness tracker (e.g., selectable input for pausing the tracker, selectable input for detecting the current geographic location, and/or any other suitable controls). As another example, in some implementations, contextual controls 270 may include controls that may be useful when using a fitness tracker. As a more particular example, as shown in fig. 2D, the contextual controls 270 can include controls for manipulating playback of audio content that a user of the user device may be listening to, such as a stop button, a rewind or fast-forward button, volume adjustments, and/or any other suitable controls.

Note that the examples of map content and fitness tracker content described above in connection with fig. 2A-2D are described merely as illustrative examples, and the content presented on the user device may be any suitable type of content, such as a home screen of the user device, a messaging screen of the user device, presentation of media content items, and/or any other suitable type of content. Additionally, note that in some implementations, content presented in a portion of the display that no longer includes moving content may be manipulated. For example, referring to fig. 2D, in some implementations, a user of the user device can swipe the contextual control 270 (e.g., to the right, to the left, and/or in any other suitable direction), which can result in a different set of contextual controls being presented.

Referring to fig. 3, an illustrative example 300 of hardware for presenting offset content that may be used in accordance with some embodiments of the disclosed subject matter is shown. As shown, hardware 300 may include one or more servers, such as server 302, communication network 304, and/or one or more user devices 306, such as user device 308 and user device 310.

In some implementations, the server 302 can be any suitable server for storing content, information, and/or data. For example, in some implementations, the server 302 may be a server that stores data related to applications executing on the user device 206 and/or has one or more applications executing on the user device 206 suitable for download. As another example, in some implementations, the server 302 can be a server that streams media content (e.g., music, audiobooks, live streaming audio content, video content, and/or any other suitable type of media content) to the user device 306 via the communication network 304. In some implementations, the server 302 can be omitted.

In some implementations, the communication network 304 can be any suitable combination of one or more wired and/or wireless networks. For example, communication network 304 may include any one or more of the internet, an intranet, a Wide Area Network (WAN), a Local Area Network (LAN), a wireless network, a Digital Subscriber Line (DSL) network, a frame relay network, an Asynchronous Transfer Mode (ATM) network, a Virtual Private Network (VPN), and/or any other suitable communication network. The user device 306 may be connected to the communication network 304 through one or more communication links 312, and the communication network 304 may be linked to the server 302 via one or more communication links (e.g., communication link 314). Communication link 312 and/or communication link 314 may be any communication links suitable for communicating data between user device 306 and server 302, such as network links, dial-up links, wireless links, hard-wired links, any other suitable communication links, or any suitable combination of these links.

In some implementations, user device 306 may include one or more computing devices suitable for viewing content and/or any other suitable functionality. For example, in some implementations, the user device 306 may be implemented as a mobile device, such as a wearable computer, a smartphone, a tablet computer, a vehicle (e.g., an automobile, a boat, an airplane, or any other suitable vehicle) information or entertainment system, a portable media player, and/or any other suitable mobile device. As another example, in some implementations, user device 306 may be implemented as a non-mobile device, such as a desktop computer, a set-top box, a television, a streaming media player, a gaming console, and/or any other suitable non-mobile device.

Although the server 302 is illustrated as a single device, in some implementations, any suitable number of devices may be used to perform the functions performed by the server 302. For example, in some implementations, multiple devices may be used to implement the functions performed by the server 302.

Although two user devices 308 and 310 are shown in fig. 3, any suitable number of user devices and/or any suitable type of user device may be used in some embodiments.

In some implementations, the server 302 and the user device 306 can be implemented using any suitable hardware. For example, in some implementations, device 302 and device 306 may be implemented using any suitable general purpose or special purpose computers. For example, the server may be implemented using a dedicated computer. Any such general purpose or special purpose computer may include any suitable hardware. For example, as illustrated in the example hardware 400 of fig. 4, such hardware may include a hardware processor 402, memory and/or storage 404, an input device controller 406, an input device 408, a display/audio driver 410, display and audio output circuitry 412, a communication interface 414, an antenna 416, and a bus 418.

In some embodiments, hardware processor 402 may include any suitable hardware processor, such as a microprocessor, microcontroller, digital signal processor, dedicated logic, and/or any other suitable circuitry for controlling the functions of a general purpose or special purpose computer. In some implementations, the hardware processor 402 can be controlled by a server program stored in a memory of the server and/or storage 404 (e.g., such as the server 302). For example, the server program may cause the hardware processor 402 of the server 302 to transmit content to and/or receive information from the user device. In some implementations, the hardware processor 402 may be controlled by a computer program stored in a memory and/or storage 404 of the user device 306. For example, the computer programs may cause hardware processor 402 of user device 306 to perform any of the functions described in conjunction with fig. 5 and/or to perform any other suitable functions.

In some implementations, memory and/or storage 404 may be any suitable memory and/or storage for storing programs, data, media content, advertisements, and/or any other suitable information. For example, memory and/or storage 404 may include random access memory, read only memory, flash memory, hard disk memory, optical media, and/or any other suitable memory.

In some implementations, the input device controller 406 can be any suitable circuitry for controlling and receiving input from one or more input devices 408. For example, the input device controller 406 may be circuitry for receiving input from a touch screen, a keyboard, a mouse, one or more buttons, voice recognition circuitry, a microphone, a camera, an optical sensor, an accelerometer, a gyroscope, a temperature sensor, a near field sensor, and/or any other type of input device.

In some implementations, the display/audio driver 410 can be any suitable circuitry for controlling and driving output to one or more display/audio output devices 412. For example, the display/audio driver 410 may be circuitry for driving a touch screen, a flat panel display, a cathode ray tube display, a projector, a speaker or speakers, and/or any other suitable display and/or presentation device.

Communication interface 414 may be any suitable circuitry for interfacing with one or more communication networks, such as network 304 shown in fig. 3. For example, the interface 414 may include a network interface card circuit, a wireless communication circuit, and/or any other suitable type of communication network circuit.

In some implementations, the antenna 416 may be any suitable antenna or antennas for wireless communication with a communication network (e.g., communication network 304). In some embodiments, antenna 416 may be omitted.

In some implementations, bus 418 can be any suitable mechanism for communicating between two or more of component 402, component 404, component 406, component 410, and component 414.

According to some embodiments, any other suitable components may be included in hardware 400.

Referring to fig. 5, an example 500 of a process for presenting offset content is shown, in accordance with some embodiments of the disclosed subject matter. In some implementations, the blocks of process 500 may be performed on a user device.

In some implementations, the process 500 can begin at 502 by causing a first user interface to be presented on a user device. In some implementations, the first user interface can include any suitable content, such as a home screen of the user device, map content, fitness tracker content, a user interface corresponding to a media content player, and/or any other suitable content. In some implementations, the process 500 may cause the first user interface to be presented in any suitable manner. For example, as shown in fig. 1A, 2A, and 2C, the first user interface may be presented in a manner that occupies the entire display.

At 504, the process 500 may receive input from the user device to move the first user interface. For example, in some implementations, the input may indicate that the first user interface is to be moved upward (or in any other suitable direction), as shown in fig. 1B, 2B, and 2D. In some implementations, the user input can be any suitable input. For example, in some implementations, the user input can be a button press of a button (e.g., a power button and/or any other suitable button) associated with the user device, a swipe or other gesture on a touch screen of the user device, and/or any other suitable user input. As another example, in some implementations, the user input may come from a change in direction or motion of the user device, such as from a tilt or rotation of the user device in a particular direction. As a more particular example, in some implementations, the input may be a detection that a user of the user device has tilted the user device upward, which may indicate that the first user interface is to be moved downward. As another more particular example, in some implementations, the input may be detection of a finger near a display of the user device, which may indicate a user's interest in interacting with content presented on the first user interface.

In some implementations, the process 500 can determine an offset for the first user interface at 506. The offset may indicate any suitable information, such as an amount by which the first user interface is to be moved and/or a direction in which the first user interface is to be moved (e.g., up, down, left, right, diagonal, and/or any other suitable direction). For example, in some implementations, the offset may indicate that the first user interface is to be offset by a particular fraction or percentage, a particular number of pixels, a particular number of millimeters, and/or any other suitable offset. In some implementations, the process 500 may determine the offset based on any suitable information. For example, in some implementations, the offset may be a fixed offset of a predetermined size or fraction (e.g., 25%, 30%, 20 pixels, 50 pixels, 10 millimeters, 20 millimeters, and/or any other suitable size) and/or a direction determined based on any suitable information, such as the size of a user interface including the contextual controls (e.g., as described above in connection with fig. 2A-2D). As a more specific example, a fixed offset may be received from a user of the user device, such as a selected setting indicating a preference for offsetting the first user interface such that the size of the additional content is set to occupy 40% of the available display of the user device. As another example, in some implementations, the offset may be determined based on user input. As a more particular example, in instances in which the user input is a button press, the process 500 may determine the offset based on a duration of time the button is pressed. As a particular example, in some implementations, the process 500 may begin moving the first user interface in a particular direction (e.g., up, down, left, right, and/or any other suitable direction) and may continue moving the first user interface until the process 500 determines that the button has been released. As another more particular example, in instances in which the user input is based on input from a motion sensor (e.g., a gyroscope, an accelerometer, and/or any other suitable type of motion sensor), process 500 may determine the size and direction of the sensor based on an offset in the magnitude and direction of motion detected by the motion sensor. As a particular example, in some implementations, the process 500 may determine that the offset will have a direction corresponding to a direction of rotation or tilt detected by the motion sensor. As another particular example, in some implementations, the process 500 may determine that the magnitude of the offset will be proportional to the degree of rotation detected by the motion sensor. As yet another particular example, the process 500 may determine that the first user interface will begin moving in a particular direction in response to determining that the user device is rotating or tilting, and may continue to move the first user interface until the process 500 determines that the rotation has stopped.

Note that in some implementations, the process 500 may determine that the first user interface is to be moved to present a portion of the first user interface that is blocked or not fully visible due to an obstruction (e.g., a hand of a watch and/or a hinge on the watch, a finger covering a display of the user device, and/or any other suitable type of obstruction). In some such implementations, the process 500 may determine the magnitude and/or direction of the offset based on the size and location of the obstacle. For example, in instances where the obstacle is a pair of watch hands or a hinge to which the watch hands are connected, the process 500 may determine the amount of offset based on the size of the hands or hinge (e.g., length, width, and/or any other suitable size information), and may determine the direction of offset based on any suitable information, such as the direction in which the watch hands point.

It should also be noted that in some implementations, the process 500 may determine that the first user interface is to be moved in a particular direction based on content presented in the first user interface. For example, the process 500 may analyze the first user interface and determine which portion of the first user interface may be offset removed. In a more particular example, the process may analyze content presented in the first user interface and determine which portions of the first user interface are likely to contain primary content and which portions of the first user interface are likely to contain secondary content. Based on this determination, the process 500 may determine an offset such that additional user interface portions or offset content may be presented, while portions that may contain secondary content are removed by the offset. For example, in response to determining that the first user interface contains a portion with blank content, the process 500 may determine an offset in which a portion of the first user interface containing blank content is removed from display by the offset and additional user interface portions or offset content is presented in portions previously containing blank content.

It should also be noted that in some implementations, the process 500 may determine that the first user interface is to be offset by a particular offset amount based on additional content to be presented on the user device. For example, process 500 may analyze additional user interface portions that include context controls and may determine an offset to apply to the first user interface such that the context controls may be displayed at a given size (e.g., based on user preferences). In another example, process 500 can analyze additional user interface portions that include multiple sets of context controls and can determine offsets to apply to the first user interface such that each of the multiple sets of context controls can be displayed without continuously modifying the offsets.

Alternatively, the process 500 may determine whether to modify the offset of the first user interface based on content currently presented in the first user interface and/or context controls presented in the additional user interface. For example, in response to receiving user input selecting the second set of contextual controls, process 500 may determine whether to modify the offset of the first user interface based on properties of the second set of contextual controls.

In some implementations, the process 500 can identify a contextual control to be presented in conjunction with the first user interface at 508. In some implementations, the process 500 can identify a contextual control based on any suitable information. For example, in some implementations, the process 500 can identify a contextual control based on content presented in the first user interface. As a more specific example, as shown and described above in connection with fig. 2A and 2B, in an instance in which the first user interface presents map content, the process 500 may determine that the contextual control is to be a control for interacting with the map content, such as a selectable input for zooming in or out on the map, a search function for searching for a location or business on the map, a selectable input for obtaining directions based on the map, and/or any other suitable control. As another more particular example, as shown and described above in connection with fig. 2C and 2D, in instances in which the first user interface presents content from a fitness tracker (e.g., a pedometer, a running tracker, and/or any other suitable type of fitness tracker), the contextual control may be a control for interacting with the fitness tracker (e.g., a selectable input for pausing the distance tracker, and/or any other suitable control). Additionally or alternatively, in some implementations, the contextual control may be a control for interacting with an application, such as a media player, a messaging application (e.g., an email client, a text messaging application, and/or any other suitable messaging application), and/or any other suitable type of application, operating in the background on the user device. For example, in some implementations, a contextual control can be a control for starting or stopping audio content being presented, a control for skipping songs being played, a control for volume adjustment, and/or any other suitable control. As another example, in some implementations, the context control can be a control for previewing received messages, composing new messages, reading particular messages, and/or any other suitable control. Note that in some implementations, the process 500 can determine multiple sets of context controls. For example, in some implementations, the process 500 can identify a first set of controls adapted to interact with content presented in a first user interface and a second set of controls adapted to interact with an application operating in the background of the user device.

The process 500 may present the moving first user interface by the offset at 510. For example, as shown in fig. 1B, 2B, and 2D, the first user interface may be moved such that a portion of the first user interface is no longer visible on the display of the user device. As a more specific example, in instances where the first user interface is moving upward, an upper portion of the first user interface may no longer be visible after the first user interface is moved. In some implementations, as described and illustrated above in connection with fig. 2B-2D, process 500 may additionally present a second user interface that includes a contextual control in a portion of the display that no longer includes the first user interface. Note that in instances in which process 500 identifies multiple sets of contextual controls as described above, process 500 may cause a first set of contextual controls (e.g., controls for interacting with content presented in a first user interface) to be presented, as described and illustrated above in connection with fig. 2B-2D. In some such implementations, the process 500 may cause presentation of the first set of contextual controls to be disabled and may cause the second set of contextual controls to be presented, for example, in response to determining that the user of the user device has scribed the first set of contextual controls in a particular direction or otherwise indicating that the second set of contextual controls is to be presented.

The process 500 may use any suitable technique or combination of techniques to cause the first user interface to move. For example, in some implementations, the process 500 may use an event handler that detects a particular type of user input (e.g., button presses, motion of the user device, and/or any other suitable user input as described above) that indicates that the first user interface is to be moved. Then, in some such embodiments, the event handler may then invoke the function of applying the offset to the currently displayed content. For example, in some implementations, the function may take as input the magnitude and direction of the offset, as described above in connection with block 506. As a more specific example, in some embodiments, the function used may be the same as or similar to a function for age protection that causes content displayed on the screen to move periodically by a predetermined amount. In some implementations, the process 500 may cause the first user interface to move by modifying a mapping between a logical display representing content to be presented on the user device and a physical display representing a display screen of the user device. For example, in some implementations, when the first user interface is presented in the first position without an offset (e.g., as shown in fig. 1A, 2A, and 2C, and described above in connection with block 502), there may be a one-to-one mapping between the logical display and the physical display such that each pixel represented in the logical display corresponds to a pixel of the physical display. The process 500 may then apply the offset by adding the offset to the representation of the first user interface in the logical display. For example, in some implementations, the process 500 may add a blank row or column to represent an unused portion of the display and/or may redraw a representation of the first user interface in the logical display in any other suitable manner based on the determined offset. Note that in some implementations, the process 500 may cause the first user interface to move in any suitable animation or transition. For example, in some implementations, the process 500 can cause the first user interface to be displayed as sliding in the direction of movement when moved.

Note that in some implementations, in response to moving or shifting the content such that a portion of the content in the first user interface will no longer be displayed within the display of the user device, the process 500 can determine whether the content should be modified such that the content fits within the remaining portion of the display. In some implementations, the user device can include a display for indicating whether to offset or resize or otherwise redraw content presented within the first user interface to fit within a remainder of the display. Additionally or alternatively, a content provider associated with content presented in the first user interface may indicate whether to offset the content (or a particular type of content) in response to receiving a request to present additional user interface options.

At 512, the process 500 may resume the first user interface being presented in the original position (e.g., without the offset). In some implementations, in the instance that the second user interface with the contextual control is presented at block 510, process 500 can cause the second user interface to no longer be presented. In some implementations, in response to determining the predetermined duration (e.g., 400 milliseconds, 500 milliseconds, one second, and/or any other suitable duration), the process 500 can resume the first user interface being presented in the original position. In some implementations, the process 500 can cause the first user interface to resume presentation using any suitable technique or combination of techniques. For example, in some implementations, the process 500 may invoke a function that causes the content to be presented, and the process 500 may indicate (e.g., in a function call and/or in any other suitable manner) that the offset is not to be used. In some implementations, the process 500 can invoke the same functionality for rendering the first user interface with the offset to resume presentation of the first user interface without the offset.

In some embodiments, at least some of the above-described blocks of the process of fig. 5 may be performed or may be performed in any order or sequence, and are not limited to the order and sequence shown and described in connection with the figures. Also, where appropriate or in parallel, some of the above blocks of fig. 5 may be performed or may be performed substantially simultaneously to reduce latency and processing time. Additionally or alternatively, some of the above-described blocks of the process of fig. 5 may be omitted.

In some embodiments, any suitable computer readable medium may be used for storing instructions for performing the functions and/or processes herein. For example, in some implementations, the computer-readable medium may be transitory or non-transitory. For example, non-transitory computer-readable media may include media such as non-transitory forms of magnetic media (such as hard disks, floppy disks, and/or any other suitable magnetic media), non-transitory forms of optical media (such as compact disks, digital video disks, blu-ray disks, and/or any other suitable optical media), non-transitory forms of semiconductor media (such as flash memory, electrically programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and/or any other suitable semiconductor media), any suitable media that does not have a transitory or permanent appearance during transmission, and/or any suitable tangible media. As another example, a transitory computer-readable medium may include a network, a wire, a conductor, an optical fiber, a circuit, any suitable medium that has no permanent appearance for a brief period of time during transmission, and/or a signal on any suitable intangible medium.

Where the systems described herein collect or utilize personal information about a user, the user may be provided with an opportunity to control whether programs or functions collect user information (e.g., information about the user's social network, social behavior or activity, profession, user preferences, or the user's current location). In addition, some data may be processed in one or more ways to delete personal information before it is stored or used. For example, the identity of the user may be processed so that no personal information can be determined for the user, or the geographic location of the user may be summarized when location information is obtained (e.g., to a city, zip code, or state level), so that no particular location of the user can be determined. Thus, the user may control how information is collected about the user and used by the content server.

Accordingly, methods, systems, and media for presenting offset content are provided.

While the invention has been described and illustrated in the foregoing illustrative embodiments, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the details of the embodiments of the invention may be made without departing from the spirit and scope of the invention, which is limited only by the claims which follow. The features of the disclosed embodiments may be combined and rearranged in various ways.

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:图像处理方法、图像处理装置、电子装置和存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类