KR102734876B1 - User interfaces for customizing graphic objects - Google Patents
User interfaces for customizing graphic objects Download PDFInfo
- Publication number
- KR102734876B1 KR102734876B1 KR1020227009281A KR20227009281A KR102734876B1 KR 102734876 B1 KR102734876 B1 KR 102734876B1 KR 1020227009281 A KR1020227009281 A KR 1020227009281A KR 20227009281 A KR20227009281 A KR 20227009281A KR 102734876 B1 KR102734876 B1 KR 102734876B1
- Authority
- KR
- South Korea
- Prior art keywords
- customizable
- user interface
- individual
- customized
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000000007 visual effect Effects 0.000 claims abstract description 231
- 230000004044 response Effects 0.000 claims abstract description 123
- 238000000034 method Methods 0.000 claims description 79
- 230000008859 change Effects 0.000 claims description 15
- 230000014509 gene expression Effects 0.000 claims description 11
- 230000036961 partial effect Effects 0.000 claims description 2
- 230000033001 locomotion Effects 0.000 description 52
- 230000003993 interaction Effects 0.000 description 32
- 238000004891 communication Methods 0.000 description 30
- 230000009471 action Effects 0.000 description 29
- 210000003811 finger Anatomy 0.000 description 19
- 230000002093 peripheral effect Effects 0.000 description 19
- 238000003780 insertion Methods 0.000 description 17
- 230000037431 insertion Effects 0.000 description 17
- 230000003287 optical effect Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 16
- 238000010079 rubber tapping Methods 0.000 description 16
- 230000007423 decrease Effects 0.000 description 15
- 238000001514 detection method Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 14
- 230000009466 transformation Effects 0.000 description 14
- 241001422033 Thestylus Species 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 12
- 241000699666 Mus <mouse, genus> Species 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000007726 management method Methods 0.000 description 10
- 238000005259 measurement Methods 0.000 description 8
- 238000009499 grossing Methods 0.000 description 7
- 230000001965 increasing effect Effects 0.000 description 7
- 238000006073 displacement reaction Methods 0.000 description 5
- 238000000844 transformation Methods 0.000 description 5
- 230000003213 activating effect Effects 0.000 description 4
- 238000004040 coloring Methods 0.000 description 4
- 230000036541 health Effects 0.000 description 4
- 230000021317 sensory perception Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 230000002708 enhancing effect Effects 0.000 description 3
- 230000010365 information processing Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 241000699670 Mus sp. Species 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000001149 cognitive effect Effects 0.000 description 2
- 238000013503 de-identification Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000035807 sensation Effects 0.000 description 2
- 210000003813 thumb Anatomy 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000019577 caloric intake Nutrition 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229920001746 electroactive polymer Polymers 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] 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
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] 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 using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] 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
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] 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
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] 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
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] 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 for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] 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
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04886—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/7243—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
- H04M1/72436—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for text messaging, e.g. short messaging services [SMS] or e-mails
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04809—Textured surface identifying touch areas, e.g. overlay structure for a virtual keyboard
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/22—Details of telephonic subscriber devices including a touch pad, a touch sensor or a touch detector
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/70—Details of telephonic subscriber devices methods for entering alphabetical characters, e.g. multi-tap or dictionary disambiguation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
일부 실시예들에서, 전자 디바이스는 가상 키보드를 디스플레이하며, 여기서 가상 키보드는 복수의 그래픽 객체들의 복수의 선택가능 표현들을 포함한다. 일부 실시예들에서, 전자 디바이스는 제1 그래픽 객체의 제1 선택가능 표현을 선택하는 사용자 입력을 수신하며, 여기서 제1 그래픽 객체는 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소와 연관된다. 일부 실시예들에서, 사용자 입력을 수신하는 것에 응답하여 그리고 하나 이상의 제1 기준들이 만족된다는 결정에 따라, 전자 디바이스는 디스플레이 디바이스를 통해, 제1 맞춤화가능 시각적 요소를 맞춤화하기 위한 제1 섹션, 제2 맞춤화가능 시각적 요소를 맞춤화하기 위한 제2 섹션, 및 제1 그래픽 객체의 현재 맞춤화 상태를 표시하는 제1 그래픽 객체의 제1 개개의 표현을 디스플레이하기 위한 제3 섹션을 포함하는 맞춤화 사용자 인터페이스를 디스플레이한다.In some embodiments, the electronic device displays a virtual keyboard, wherein the virtual keyboard includes a plurality of selectable representations of a plurality of graphical objects. In some embodiments, the electronic device receives user input selecting a first selectable representation of a first graphical object, wherein the first graphical object is associated with a first customizable visual element and a second customizable visual element. In some embodiments, in response to receiving the user input and upon a determination that one or more first criteria are satisfied, the electronic device displays, via the display device, a customization user interface including a first section for customizing the first customizable visual element, a second section for customizing the second customizable visual element, and a third section for displaying a first individual representation of the first graphical object indicating a current customization state of the first graphical object.
Description
관련 출원에 대한 상호 참조Cross-reference to related applications
본 출원은 2019년 9월 27일자로 출원된 미국 가출원 제62/907,437호의 이익을 주장하며, 그 출원의 내용은 이로써 모든 목적들을 위해 그 전체가 참고로 포함된다.This application claims the benefit of U.S. Provisional Application No. 62/907,437, filed September 27, 2019, the contents of which are hereby incorporated by reference in their entirety for all purposes.
기술분야Technical field
본 개시내용은 일반적으로 사용자가 전자 디바이스 상에서 이모지들과 같은 그래픽 객체들을 맞춤화(customize)하고 삽입할 수 있게 하는 사용자 인터페이스들에 관한 것이다.The present disclosure generally relates to user interfaces that enable a user to customize and insert graphical objects, such as emojis, on an electronic device.
전자 디바이스들과의 사용자 상호작용은 최근 몇년간 현저하게 증가했다. 이러한 디바이스들은 컴퓨터들, 스마트 폰들, 태블릿 컴퓨터들, 텔레비전들, 멀티미디어 디바이스들, 모바일 디바이스들, 웨어러블 디바이스들 등과 같은 디바이스들일 수 있다.User interaction with electronic devices has increased significantly in recent years. These devices may be computers, smart phones, tablet computers, televisions, multimedia devices, mobile devices, wearable devices, etc.
일부 상황들에서, 사용자들은 전자 디바이스 상의 가상 키보드를 사용하여 이모지들과 같은 그래픽 객체들을 입력한다. 일부 상황들에서, 사용자들은 특정 그래픽 객체들 또는 이모지들의 상이한 양태들을 맞춤화하기를 원한다. 이러한 상호작용들을 강화하는 것은 디바이스와의 사용자의 경험을 개선하고 사용자 상호작용 시간을 감소시킬 수 있는데, 이는 입력 디바이스들이 배터리 작동형인 경우에 특히 중요하다.In some situations, users input graphical objects, such as emojis, using a virtual keyboard on the electronic device. In some situations, users want to customize different aspects of certain graphical objects or emojis. Enhancing these interactions can improve the user experience with the device and reduce user interaction time, which is especially important when the input devices are battery-operated.
개인 식별가능 정보의 사용은 사용자들의 프라이버시를 유지하기 위한 산업 또는 정부 요구사항들을 충족시키거나 초과하는 것으로 일반적으로 인식되는 프라이버시 정책들 및 관례들을 따라야 하는 것이 잘 이해된다. 특히, 개인 식별가능 정보 데이터는 의도하지 않은 또는 인가되지 않은 액세스 또는 사용의 위험들을 최소화하도록 관리되고 처리되어야 하며, 인가된 사용의 성질(nature)은 사용자들에게 명확히 표시되어야 한다.It is well understood that the use of personally identifiable information should follow privacy policies and practices generally recognized as meeting or exceeding industry or governmental requirements for maintaining the privacy of users. In particular, personally identifiable information data should be managed and processed to minimize the risks of unintended or unauthorized access or use, and the nature of authorized use should be clearly indicated to users.
본 개시내용에 설명된 일부 실시예들은 이모지들과 같은 그래픽 객체들을 맞춤화하고 삽입하기 위한 맞춤화 사용자 인터페이스들을 제시하는 것에 관한 것이다. 실시예들의 충분한 설명들은 도면 및 발명을 실시하기 위한 구체적인 내용에서 제공되며, 위에서 제공된 발명의 내용은 어떤 방식으로든 본 개시내용의 범주를 제한하지 않는다는 것이 이해된다.Some embodiments described in the present disclosure relate to presenting customized user interfaces for customizing and inserting graphical objects such as emojis. It is to be understood that a sufficient description of the embodiments is provided in the drawings and the detailed description for carrying out the invention, and that the disclosure provided above does not limit the scope of the present disclosure in any way.
다양하게 설명된 실시예들의 보다 양호한 이해를 위해, 유사한 도면 부호들이 도면 전체에 걸쳐서 대응 부분들을 나타내는 하기의 도면들과 관련하여 하기의 발명을 실시하기 위한 구체적인 내용이 참조되어야 한다.
도 1a는 일부 실시예들에 따른, 터치 감응형 디스플레이를 갖는 휴대용 다기능 디바이스를 예시하는 블록도이다.
도 1b는 일부 실시예들에 따른, 이벤트 처리를 위한 예시적인 컴포넌트들을 예시하는 블록도이다.
도 2는 일부 실시예들에 따른, 터치 스크린을 갖는 휴대용 다기능 디바이스를 예시한다.
도 3은 일부 실시예들에 따른, 디스플레이 및 터치 감응형 표면을 갖는 예시적인 다기능 디바이스의 블록도이다.
도 4a는 일부 실시예들에 따른, 휴대용 다기능 디바이스 상의 애플리케이션들의 메뉴에 대한 예시적인 사용자 인터페이스를 예시한다.
도 4b는 일부 실시예들에 따른, 디스플레이와는 별개인 터치 감응형 표면을 갖는 다기능 디바이스에 대한 예시적인 사용자 인터페이스를 예시한다.
도 5a는 일부 실시예들에 따른 개인용 전자 디바이스를 예시한다.
도 5b는 일부 실시예들에 따른 개인용 전자 디바이스를 예시하는 블록도이다.
도 5c 및 도 5d는 일부 실시예들에 따른, 터치 감응형 디스플레이 및 세기 센서들을 갖는 개인용 전자 디바이스의 예시적인 컴포넌트들을 예시한다.
도 5e 내지 도 5h는 일부 실시예들에 따른, 개인용 전자 디바이스의 예시적인 컴포넌트들 및 사용자 인터페이스들을 예시한다.
도 6a 내지 도 6xx는 본 개시내용의 일부 실시예들에 따른, 전자 디바이스가 이모지들을 맞춤화하고 삽입하기 위한 맞춤화 사용자 인터페이스를 제시하는 예시적인 방식들을 예시한다.
도 7a 내지 도 7m은 본 개시내용의 일부 실시예들에 따른, 이모지들을 맞춤화하고 삽입하기 위한 맞춤화 사용자 인터페이스를 제시하는 방법을 예시하는 흐름도들이다.For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the drawings in which like reference numerals represent corresponding parts throughout the drawings.
FIG. 1A is a block diagram illustrating a portable multifunction device having a touch-sensitive display, according to some embodiments.
FIG. 1b is a block diagram illustrating exemplary components for event processing according to some embodiments.
FIG. 2 illustrates a portable multifunction device having a touch screen, according to some embodiments.
FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments.
FIG. 4A illustrates an exemplary user interface for a menu of applications on a portable multifunction device according to some embodiments.
FIG. 4b illustrates an exemplary user interface for a multifunction device having a touch-sensitive surface separate from a display, according to some embodiments.
FIG. 5A illustrates a personal electronic device according to some embodiments.
FIG. 5b is a block diagram illustrating a personal electronic device according to some embodiments.
FIGS. 5C and 5D illustrate exemplary components of a personal electronic device having a touch-sensitive display and intensity sensors, according to some embodiments.
FIGS. 5E-5H illustrate exemplary components and user interfaces of a personal electronic device according to some embodiments.
FIGS. 6A through 6XX illustrate exemplary ways in which an electronic device presents a customized user interface for customizing and inserting emojis, according to some embodiments of the present disclosure.
FIGS. 7A through 7M are flowcharts illustrating a method of presenting a customized user interface for customizing and inserting emojis, according to some embodiments of the present disclosure.
이하의 설명은 예시적인 방법들, 파라미터들 등을 기재하고 있다. 그러나, 이러한 설명이 본 발명의 범주에 대한 제한으로서 의도되지 않고 그 대신에 예시적인 실시예들의 설명으로서 제공된다는 것을 인식해야 한다.The following description sets forth exemplary methods, parameters, etc. However, it should be recognized that such description is not intended to be a limitation on the scope of the present invention, but instead is provided as a description of exemplary embodiments.
다수의 맞춤화가능 컴포넌트들을 갖는 이모지들과 같은 그래픽 객체들을 맞춤화하기 위한 효율적인 방법들을 제공하는 전자 디바이스에 대한 필요성이 존재한다. 그러한 기법들은 그러한 디바이스들을 사용하는 사용자의 인지적 부담을 감소시킬 수 있다. 추가로, 그러한 기법들은 과다한 사용자 입력들에 달리 낭비되는 프로세서 및 배터리 전력을 감소시킬 수 있다.There is a need for electronic devices that provide efficient methods for customizing graphical objects, such as emojis, having multiple customizable components. Such techniques may reduce the cognitive burden on users of such devices. Additionally, such techniques may reduce processor and battery power otherwise wasted on excessive user inputs.
이하의 설명이 다양한 요소들을 설명하기 위해 "제1", "제2" 등과 같은 용어들을 사용하지만, 이들 요소들이 그 용어들에 의해 제한되어서는 안된다. 이러한 용어들은 하나의 요소를 다른 요소와 구별하는 데에만 사용된다. 예를 들어, 설명된 다양한 실시예들의 범주로부터 벗어남이 없이, 제1 터치가 제2 터치로 지칭될 수 있고, 이와 유사하게, 제2 터치가 제1 터치로 지칭될 수 있다. 제1 터치 및 제2 터치는 양측 모두가 터치이지만, 그들이 동일한 터치인 것은 아니다.Although the following description uses terms such as "first," "second," etc. to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of the various embodiments described, a first touch could be referred to as a second touch, and similarly, a second touch could be referred to as a first touch. Although the first touch and the second touch are both touches, they are not the same touch.
본 명세서에서 다양하게 설명된 실시예들의 설명에 사용되는 용어는 특정 실시예들을 설명하는 목적만을 위한 것이고, 제한하려는 의도는 아니다. 다양한 설명된 실시예들의 설명 및 첨부된 청구범위에 사용되는 바와 같이, 단수의 형태("a", "an", 및 "the")는 문맥상 명백히 달리 나타내지 않는다면 복수의 형태도 마찬가지로 포함하려는 것으로 의도된다. 또한, 본 명세서에서 사용되는 바와 같은 용어 "및/또는"은 열거되는 연관된 아이템들 중 하나 이상의 아이템들의 임의의 및 모든 가능한 조합들을 나타내고 그들을 포괄하는 것임이 이해될 것이다. 용어들 "포함한다(include)", "포함하는(including)", "포함한다(comprise)", 및/또는 "포함하는(comprising)"은, 본 명세서에서 사용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않음이 추가로 이해될 것이다.The terminology used in the description of the various described embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used in the description of the various described embodiments and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that the term "and/or," as used herein, refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "include," "including," "comprise," and/or "comprising," when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
용어 "~할 경우(if)"는, 선택적으로, 문맥에 따라 "~할 때(when)" 또는 "~할 시(upon)" 또는 "결정하는 것에 응답하여(in response to determining)" 또는 "검출하는 것에 응답하여(in response to detecting)"를 의미하는 것으로 해석된다. 유사하게, 어구 "~라고 결정된 경우" 또는 "[언급된 조건 또는 이벤트가] 검출된 경우"는, 선택적으로, 문맥에 따라 "~라고 결정할 때" 또는 "~라고 결정하는 것에 응답하여" 또는 "[언급된 조건 또는 이벤트]를 검출할 시" 또는 "[언급된 조건 또는 이벤트]를 검출하는 것에 응답하여"를 의미하는 것으로 해석된다.The term "if" is optionally interpreted to mean "when" or "upon" or "in response to determining" or "in response to detecting", as the context requires. Similarly, the phrase "if it is determined that" or "if [the stated condition or event] is detected" is optionally interpreted to mean "when determining that" or "in response to determining that" or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]", as the context requires.
전자 디바이스들, 그러한 디바이스들에 대한 사용자 인터페이스들, 및 그러한 디바이스들을 사용하기 위한 연관된 프로세스들의 실시예들이 설명된다. 일부 실시예들에서, 디바이스는 PDA 및/또는 음악 재생기 기능들과 같은 다른 기능들을 또한 포함하는 휴대용 통신 디바이스, 예컨대 이동 전화기이다. 휴대용 다기능 디바이스들의 예시적인 실시예들은 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크.(Apple Inc.)로부터의 아이폰(iPhone)®, 아이팟 터치(iPod Touch)®, 및 아이패드(iPad)® 디바이스들을 제한 없이 포함한다. 터치 감응형 표면들(예를 들어, 터치 스크린 디스플레이들 및/또는 터치패드들)을 갖는 랩톱 또는 태블릿 컴퓨터들과 같은 다른 휴대용 전자 디바이스들이 선택적으로 사용된다. 일부 실시예들에서, 디바이스는 휴대용 통신 디바이스가 아니라 터치 감응형 표면(예를 들어, 터치 스크린 디스플레이 및/또는 터치패드)을 갖는 데스크톱 컴퓨터임이 또한 이해되어야 한다.Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communications device, such as a mobile telephone, that also includes other functionality, such as PDA and/or music player functionality. Exemplary embodiments of portable multifunction devices include, without limitation, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, Calif. Other portable electronic devices, such as laptop or tablet computers having touch-sensitive surfaces (e.g., touch screen displays and/or touchpads), are optionally used. It should also be understood that in some embodiments, the device is a desktop computer having a touch-sensitive surface (e.g., a touch screen display and/or touchpad) rather than a portable communications device.
이하의 논의에서, 디스플레이 및 터치 감응형 표면을 포함하는 전자 디바이스가 설명된다. 그러나, 전자 디바이스가 선택적으로 물리적 키보드, 마우스 및/또는 조이스틱과 같은 하나 이상의 다른 물리적 사용자 인터페이스 디바이스들을 포함한다는 것이 이해되어야 한다.In the discussion below, an electronic device including a display and a touch-sensitive surface is described. However, it should be understood that the electronic device optionally includes one or more other physical user interface devices, such as a physical keyboard, mouse, and/or joystick.
디바이스는 전형적으로 다음 중 하나 이상과 같은 다양한 애플리케이션들을 지원한다: 드로잉 애플리케이션, 프레젠테이션 애플리케이션, 워드 프로세싱 애플리케이션, 웹사이트 제작 애플리케이션, 디스크 저작 애플리케이션, 스프레드시트 애플리케이션, 게임 애플리케이션, 전화 애플리케이션, 화상 회의 애플리케이션, 이메일 애플리케이션, 인스턴트 메시징 애플리케이션, 운동 지원 애플리케이션, 사진 관리 애플리케이션, 디지털 카메라 애플리케이션, 디지털 비디오 카메라 애플리케이션, 웹 브라우징 애플리케이션, 디지털 음악 재생기 애플리케이션, 및/또는 디지털 비디오 재생기 애플리케이션.The device typically supports a variety of applications, such as one or more of the following: a drawing application, a presentation application, a word processing application, a website creation application, a disk authoring application, a spreadsheet application, a gaming application, a telephony application, a video conferencing application, an email application, an instant messaging application, a fitness assistance application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and/or a digital video player application.
디바이스 상에서 실행되는 다양한 애플리케이션들은, 선택적으로, 터치 감응형 표면과 같은 적어도 하나의 보편적인 물리적 사용자 인터페이스 디바이스를 사용한다. 터치 감응형 표면의 하나 이상의 기능들뿐만 아니라 디바이스 상에 디스플레이되는 대응하는 정보는, 선택적으로, 하나의 애플리케이션으로부터 다음 애플리케이션으로 그리고/또는 개개의 애플리케이션 내에서 조정 및/또는 변화된다. 이러한 방식으로, 디바이스의 (터치 감응형 표면과 같은) 보편적인 물리적 아키텍처는, 선택적으로, 사용자에게 직관적이고 투명한 사용자 인터페이스들을 이용하여 다양한 애플리케이션들을 지원한다.Various applications running on the device optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface, as well as corresponding information displayed on the device, are optionally adjusted and/or varied from one application to the next and/or within individual applications. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports various applications using user interfaces that are intuitive and transparent to the user.
이제, 터치 감응형 디스플레이들을 갖는 휴대용 디바이스들의 실시예들에 주목한다. 도 1a는 일부 실시예들에 따른, 터치 감응형 디스플레이 시스템(112)을 갖는 휴대용 다기능 디바이스(100)를 예시하는 블록도이다. 터치 감응형 디스플레이(112)는 때때로 편의상 "터치 스크린"이라고 지칭되고, 때때로 "터치 감응형 디스플레이 시스템"으로 알려져 있거나 또는 그렇게 지칭된다. 디바이스(100)는 메모리(102)(선택적으로, 하나 이상의 컴퓨터 판독가능 저장 매체들을 포함함), 메모리 제어기(122), 하나 이상의 프로세싱 유닛(CPU)들(120), 주변기기 인터페이스(118), RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 입/출력(I/O) 서브시스템(106), 다른 입력 제어 디바이스들(116), 및 외부 포트(124)를 포함한다. 디바이스(100)는 선택적으로 하나 이상의 광 센서(optical sensor)들(164)을 포함한다. 디바이스(100)는 선택적으로, 디바이스(100)(예를 들어, 디바이스(100)의 터치 감응형 디스플레이 시스템(112)과 같은 터치 감응형 표면) 상의 접촉들의 세기를 검출하기 위한 하나 이상의 접촉 세기 센서들(165)을 포함한다. 디바이스(100)는 선택적으로, 디바이스(100) 상의 촉각적 출력들을 생성하기 위한 (예를 들어, 디바이스(100)의 터치 감응형 디스플레이 시스템(112) 또는 디바이스(300)의 터치패드(355)와 같은 터치 감응형 표면 상의 촉각적 출력들을 생성하기 위한) 하나 이상의 촉각적 출력 생성기들(167)을 포함한다. 이들 컴포넌트는 선택적으로 하나 이상의 통신 버스들 또는 신호 라인들(103)을 통해 통신한다.Now, we turn to embodiments of portable devices having touch-sensitive displays. FIG. 1A is a block diagram illustrating a portable multifunction device (100) having a touch-sensitive display system (112), according to some embodiments. The touch-sensitive display (112) is sometimes conveniently referred to as a "touch screen" and sometimes known or referred to as a "touch-sensitive display system." The device (100) includes memory (102) (optionally including one or more computer-readable storage media), a memory controller (122), one or more processing units (CPUs) (120), a peripheral interface (118), RF circuitry (108), audio circuitry (110), a speaker (111), a microphone (113), an input/output (I/O) subsystem (106), other input control devices (116), and an external port (124). The device (100) optionally includes one or more optical sensors (164). The device (100) optionally includes one or more contact intensity sensors (165) for detecting the intensity of contacts on the device (100) (e.g., a touch-sensitive surface such as the touch-sensitive display system (112) of the device (100). The device (100) optionally includes one or more tactile output generators (167) for generating tactile outputs on the device (100) (e.g., for generating tactile outputs on a touch-sensitive surface such as the touch-sensitive display system (112) of the device (100) or the touchpad (355) of the device (300). These components optionally communicate via one or more communication buses or signal lines (103).
명세서 및 청구범위에서 사용되는 바와 같이, 터치 감응형 표면 상에서의 접촉의 "세기"라는 용어는 터치 감응형 표면 상에서의 접촉(예를 들어, 손가락 접촉)의 힘 또는 압력(단위 면적 당 힘), 또는 터치 감응형 표면 상에서의 접촉의 힘 또는 압력에 대한 대체물(대용물(proxy))을 지칭한다. 접촉의 세기는, 적어도 4개의 구별되는 값들을 포함하고 더 전형적으로는 수백 개(예를 들어, 적어도 256개)의 구별되는 값들을 포함하는 일정 범위의 값들을 갖는다. 접촉의 세기는 다양한 접근법들, 및 다양한 센서들 또는 센서들의 조합들을 사용하여 선택적으로 결정(또는 측정)된다. 예를 들어, 터치 감응형 표면 아래의 또는 그에 인접한 하나 이상의 힘 센서들은 터치 감응형 표면 상의 다양한 지점들에서 힘을 측정하는 데 선택적으로 사용된다. 일부 구현예들에서는, 다수의 힘 센서들로부터의 힘 측정치들이 접촉의 추정되는 힘을 결정하기 위해 조합(예를 들어, 가중 평균)된다. 유사하게, 스타일러스의 압력 감응형 팁(tip)이 터치 감응형 표면 상의 스타일러스의 압력을 결정하는 데 선택적으로 사용된다. 대안적으로, 터치 감응형 표면 상에서 검출된 접촉 면적의 크기 및/또는 그에 대한 변화들, 접촉 부근의 터치 감응형 표면의 정전용량 및/또는 그에 대한 변화들, 및/또는 접촉 부근의 터치 감응형 표면의 저항 및/또는 그에 대한 변화들은 터치 감응형 표면 상에서의 접촉의 힘 또는 압력에 대한 대체물로서 선택적으로 사용된다. 일부 구현예들에서, 접촉 힘 또는 압력에 대한 대체 측정치들은 세기 임계치가 초과되었는지 여부를 결정하는 데 직접 사용된다(예를 들어, 세기 임계치는 대체 측정치들에 대응하는 단위로 설명된다). 일부 구현예들에서, 접촉 힘 또는 압력에 대한 대체 측정치들은 추정된 힘 또는 압력으로 변환되고, 추정된 힘 또는 압력은 세기 임계치가 초과되었는지의 여부를 결정하기 위해 이용된다(예를 들어, 세기 임계치는 압력의 단위로 측정된 압력 임계치이다). 사용자 입력의 속성으로서 접촉의 세기를 사용하는 것은, 그렇지 않았으면 어포던스(affordance)들을 (예를 들어, 터치 감응형 디스플레이 상에) 디스플레이하고 그리고/또는 (예를 들어, 터치 감응형 디스플레이, 터치 감응형 표면, 또는 노브(knob) 또는 버튼과 같은 물리적/기계적 제어부를 통해) 사용자 입력을 수신하기 위하여 제한된 실면적을 갖는 감소된 크기의 디바이스 상에서 사용자에 의해 액세스 가능하지 않을 수 있는 부가적인 디바이스 기능에 대한 사용자 액세스를 허용한다.As used in the specification and claims, the term "intensity" of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values, including at least four distinct values, and more typically hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various approaches, and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated force of the contact. Similarly, the pressure-sensitive tip of the stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and/or changes therein, the capacitance of the touch-sensitive surface near the contact and/or changes therein, and/or the resistance of the touch-sensitive surface near the contact and/or changes therein are optionally used as surrogates for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measurements of the contact force or pressure are used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measurements). In some implementations, the surrogate measurements of the contact force or pressure are converted to an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using intensity of contact as a property of user input allows users access to additional device functionality that might not otherwise be accessible to users on reduced-size devices with limited real-world area for displaying affordances (e.g., on a touch-sensitive display) and/or receiving user input (e.g., via a touch-sensitive display, a touch-sensitive surface, or a physical/mechanical control such as a knob or button).
명세서 및 청구범위에 사용되는 바와 같이, "촉각적 출력"이라는 용어는 디바이스의 이전 위치에 대한 디바이스의 물리적 변위, 디바이스의 다른 컴포넌트(예를 들어, 하우징)에 대한 디바이스의 컴포넌트(예를 들어, 터치 감응형 표면)의 물리적 변위, 또는 사용자의 촉각을 이용하여 사용자에 의해 검출될 디바이스의 질량 중심에 대한 컴포넌트의 변위를 지칭한다. 예를 들어, 디바이스 또는 디바이스의 컴포넌트가 터치에 민감한 사용자의 표면(예를 들어, 사용자의 손의 손가락, 손바닥, 또는 다른 부위)과 접촉하는 상황들에서, 물리적 변위에 의해 생성된 촉각적 출력은 사용자에 의해 디바이스 또는 디바이스의 컴포넌트의 물리적 특성들의 인지된 변화에 대응하는 촉감(tactile sensation)으로서 해석될 것이다. 예를 들어, 터치 감응형 표면(예를 들어, 터치 감응형 디스플레이 또는 트랙 패드)의 이동은, 선택적으로, 사용자에 의해 물리적 액추에이터 버튼의 "다운 클릭" 또는 "업 클릭"으로서 해석된다. 일부 경우들에서, 사용자는 사용자의 이동들에 의해 물리적으로 눌리는(예를 들어, 변위되는) 터치 감응형 표면과 연관된 물리적 액추에이터 버튼의 이동이 없는 경우에도 "다운 클릭" 또는 "업 클릭"과 같은 촉감을 느낄 것이다. 다른 예로서, 터치 감응형 표면의 이동은, 터치 감응형 표면의 평탄성의 변화가 없는 경우에도, 선택적으로, 사용자에 의해 터치 감응형 표면의 "거칠기(roughness)"로서 해석 또는 감지된다. 사용자에 의한 터치의 이러한 해석들이 사용자의 개별화된 감각 인지(sensory perception)에 영향을 받기 쉬울 것이지만, 대다수의 사용자들에게 보편적인 많은 터치 감각 인지가 있다. 따라서, 촉각적 출력이 사용자의 특정 감각 인지(예를 들어, "업 클릭", "다운 클릭", "거칠기")에 대응하는 것으로서 설명될 때, 달리 언급되지 않는다면, 생성된 촉각적 출력은 전형적인(또는 평균적인) 사용자에 대한 설명된 감각 인지를 생성할 디바이스 또는 그의 컴포넌트의 물리적 변위에 대응한다.As used in the specification and claims, the term "tactile output" refers to a physical displacement of the device relative to its previous position, a physical displacement of a component (e.g., a touch-sensitive surface) of the device relative to another component (e.g., a housing) of the device, or a displacement of a component relative to the center of mass of the device that is detectable by a user using the sense of touch. For example, in situations where the device or a component of the device contacts a touch-sensitive surface of the user (e.g., a finger, palm, or other part of the user's hand), the tactile output generated by the physical displacement would be interpreted by the user as a tactile sensation corresponding to a perceived change in the physical characteristics of the device or component of the device. For example, movement of the touch-sensitive surface (e.g., a touch-sensitive display or track pad) would optionally be interpreted by the user as a "down click" or "up click" of a physical actuator button. In some cases, a user will feel a tactile sensation such as a "down click" or an "up click" even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's movements. As another example, the movement of the touch-sensitive surface is optionally interpreted or sensed by the user as a "roughness" of the touch-sensitive surface, even when there is no change in the flatness of the touch-sensitive surface. Although such interpretations of touch by the user will likely be influenced by the user's individualized sensory perception, there are many touch sensory perceptions that are common to most users. Accordingly, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., an "up click," a "down click," a "roughness"), unless otherwise noted, the generated tactile output corresponds to a physical displacement of the device or a component thereof that would produce the described sensory perception for a typical (or average) user.
디바이스(100)는 휴대용 다기능 디바이스의 일례일 뿐이고, 디바이스(100)는, 선택적으로, 도시된 것보다 더 많거나 더 적은 컴포넌트들을 갖거나, 선택적으로, 둘 이상의 컴포넌트들을 조합하거나, 또는 선택적으로 컴포넌트들의 상이한 구성 또는 배열을 갖는다는 것이 이해되어야 한다. 도 1a에 도시된 다양한 컴포넌트들은 하나 이상의 신호 프로세싱 및/또는 주문형 집적 회로(application-specific integrated circuit)들을 포함하는, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어 둘 모두의 조합으로 구현된다.It should be understood that the device (100) is only one example of a portable multi-function device, and that the device (100) may optionally have more or fewer components than those illustrated, optionally combine two or more components, or optionally have different configurations or arrangements of the components. The various components illustrated in FIG. 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing and/or application-specific integrated circuits.
메모리(102)는, 선택적으로, 고속 랜덤 액세스 메모리를 포함하고, 또한 선택적으로, 하나 이상의 자기 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 다른 비휘발성 솔리드 스테이트 메모리 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리 제어기(122)는 선택적으로 디바이스(100)의 다른 컴포넌트들에 의한 메모리(102)에의 액세스를 제어한다.The memory (102) optionally includes high-speed random access memory, and optionally also includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid state memory devices. The memory controller (122) optionally controls access to the memory (102) by other components of the device (100).
주변기기 인터페이스(118)는 디바이스의 입력 및 출력 주변기기들을 CPU(120) 및 메모리(102)에 커플링시키는 데 사용될 수 있다. 하나 이상의 프로세서들(120)은 디바이스(100)에 대한 다양한 기능들을 수행하기 위해 그리고 데이터를 프로세싱하기 위해 메모리(102)에 저장된 다양한 소프트웨어 프로그램들 및/또는 명령어들의 세트들을 구동 또는 실행시킨다. 일부 실시예들에서, 주변기기 인터페이스(118), CPU(120) 및 메모리 제어기(122)는, 선택적으로, 칩(104)과 같은 단일 칩 상에 구현된다. 일부 다른 실시예들에서, 이들은 선택적으로 별개의 칩들 상에서 구현된다.A peripheral interface (118) may be used to couple input and output peripherals of the device to the CPU (120) and memory (102). One or more processors (120) drive or execute various software programs and/or sets of instructions stored in the memory (102) to perform various functions for the device (100) and to process data. In some embodiments, the peripheral interface (118), CPU (120), and memory controller (122) are optionally implemented on a single chip, such as chip (104). In some other embodiments, they are optionally implemented on separate chips.
RF(radio frequency) 회로부(108)는 전자기 신호들로 또한 지칭되는 RF 신호들을 수신 및 전송한다. RF 회로부(108)는 전기 신호들을 전자기 신호들로/로부터 변환하고, 전자기 신호들을 통해 통신 네트워크들 및 다른 통신 디바이스들과 통신한다. RF 회로부(108)는, 선택적으로, 안테나 시스템, RF 송수신기, 하나 이상의 증폭기들, 튜너, 하나 이상의 발진기들, 디지털 신호 프로세서, CODEC 칩셋, SIM(subscriber identity module) 카드, 메모리 등을 포함하지만 이들로 제한되지 않는, 이러한 기능들을 수행하기 위한 잘 알려진 회로부를 포함한다. RF 회로부(108)는, 선택적으로, 네트워크들, 예컨대 월드 와이드 웹(WWW)으로도 지칭되는 인터넷, 인트라넷, 및/또는 무선 네트워크, 예컨대 셀룰러 전화 네트워크, 무선 LAN(local area network) 및/또는 MAN(metropolitan area network), 및 다른 디바이스들과 무선 통신에 의해 통신한다. RF 회로부(108)는, 선택적으로, 예컨대 단거리 통신 무선기기(short-range communication radio)에 의해, 근거리 통신(near field communication, NFC) 필드들을 검출하기 위한 잘 알려진 회로부를 포함한다. 무선 통신은, 선택적으로, GSM(Global System for Mobile Communications), EDGE(Enhanced Data GSM Environment), HSDPA(high-speed downlink packet access), HSUPA(high-speed uplink packet access), EV-DO(Evolution, Data-Only), HSPA, HSPA+, DC-HSPDA(Dual-Cell HSPA), LTE(long term evolution), NFC(near field communication), W-CDMA(wideband code division multiple access), CDMA(code division multiple access), TDMA(time division multiple access), 블루투스(Bluetooth), BTLE(Bluetooth Low Energy), Wi-Fi(Wireless Fidelity)(예를 들어, IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n 및/또는 IEEE 802.11ac), VoIP(voice over Internet Protocol), Wi-MAX, 이메일용 프로토콜(예를 들어, IMAP(Internet message access protocol) 및/또는 POP(post office protocol)), 인스턴트 메시징(예를 들어, XMPP(extensible messaging and presence protocol), SIMPLE(Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions), IMPS(Instant Messaging and Presence Service)), 및/또는 SMS(Short Message Service), 또는 본 문서의 출원일 당시 아직 개발되지 않은 통신 프로토콜들을 포함하는, 임의의 다른 적합한 통신 프로토콜을 포함하지만 이들로 제한되지는 않는, 복수의 통신 표준들, 프로토콜들 및 기술들 중 임의의 것을 사용한다.The RF (radio frequency) circuitry (108) receives and transmits RF signals, also referred to as electromagnetic signals. The RF circuitry (108) converts electrical signals to and from electromagnetic signals, and communicates with communication networks and other communication devices via the electromagnetic signals. The RF circuitry (108) optionally includes well-known circuitry for performing these functions, including but not limited to an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. The RF circuitry (108) optionally communicates wirelessly with networks, such as the Internet, also referred to as the World Wide Web (WWW), an intranet, and/or a wireless network, such as a cellular telephone network, a wireless local area network (LAN) and/or a metropolitan area network (MAN), and other devices. The RF circuitry (108) optionally includes well-known circuitry for detecting near field communication (NFC) fields, for example by a short-range communication radio. Wireless communications may optionally include Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), near field communication (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and/or IEEE 802.11ac); Protocols for voice over Internet Protocol (VoIP), Wi-MAX, and email (e.g., Internet message access (IMAP)) protocol) and/or POP (post office protocol)), instant messaging (e.g., extensible messaging and presence protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and/or Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document.
오디오 회로부(110), 스피커(111), 및 마이크로폰(113)은 사용자와 디바이스(100) 사이에서 오디오 인터페이스를 제공한다. 오디오 회로부(110)는 주변기기 인터페이스(118)로부터 오디오 데이터를 수신하고, 그 오디오 데이터를 전기 신호로 변환하고, 그 전기 신호를 스피커(111)에 송신한다. 스피커(111)는 전기 신호를 사람이 들을 수 있는 음파로 변환한다. 오디오 회로부(110)는 또한 마이크로폰(113)에 의해 음파로부터 변환된 전기 신호를 수신한다. 오디오 회로부(110)는 전기 신호를 오디오 데이터로 변환하고, 프로세싱을 위해 오디오 데이터를 주변기기 인터페이스(118)에 송신한다. 오디오 데이터는, 선택적으로, 주변기기 인터페이스(118)에 의해 메모리(102) 및/또는 RF 회로부(108)로부터 인출되고 그리고/또는 메모리(102) 및/또는 RF 회로부(108)에 송신된다. 일부 실시예들에서, 오디오 회로부(110)는 또한 헤드셋 잭(예를 들어, 도 2의 212)을 포함한다. 헤드셋 잭은 출력-전용 헤드폰들, 또는 출력(예를 들어, 한쪽 또는 양쪽 귀용 헤드폰) 및 입력(예를 들어, 마이크로폰) 둘 모두를 갖는 헤드셋과 같은 분리가능한 오디오 입력/출력 주변기기들과 오디오 회로부(110) 사이에 인터페이스를 제공한다.The audio circuitry (110), the speaker (111), and the microphone (113) provide an audio interface between a user and the device (100). The audio circuitry (110) receives audio data from the peripheral interface (118), converts the audio data into an electrical signal, and transmits the electrical signal to the speaker (111). The speaker (111) converts the electrical signal into a sound wave that can be heard by a human. The audio circuitry (110) also receives the electrical signal converted from the sound wave by the microphone (113). The audio circuitry (110) converts the electrical signal into audio data, and transmits the audio data to the peripheral interface (118) for processing. The audio data is optionally retrieved from the memory (102) and/or the RF circuitry (108) by the peripheral interface (118) and/or transmitted to the memory (102) and/or the RF circuitry (108). In some embodiments, the audio circuitry (110) also includes a headset jack (e.g., 212 of FIG. 2). The headset jack provides an interface between the audio circuitry (110) and detachable audio input/output peripherals, such as output-only headphones, or a headset having both output (e.g., headphones for one or both ears) and input (e.g., a microphone).
I/O 서브시스템(106)은 터치 스크린(112) 및 다른 입력 제어 디바이스들(116)과 같은, 디바이스(100) 상의 입/출력 주변기기들을 주변기기 인터페이스(118)에 커플링시킨다. I/O 서브시스템(106)은 선택적으로 디스플레이 제어기(156), 광 센서 제어기(158), 세기 센서 제어기(159), 햅틱 피드백 제어기(161) 및 다른 입력 또는 제어 디바이스들을 위한 하나 이상의 입력 제어기들(160)을 포함한다. 하나 이상의 입력 제어기들(160)은 다른 입력 제어 디바이스들(116)로부터/로 전기 신호들을 수신/전송한다. 다른 입력 제어 디바이스들(116)은 선택적으로 물리적 버튼들(예를 들어, 푸시 버튼(push button)들, 로커 버튼(rocker button)들 등), 다이얼들, 슬라이더 스위치들, 조이스틱들, 클릭 휠들 등을 포함한다. 일부 대안적인 실시예들에서, 입력 제어기(들)(160)는, 선택적으로, 키보드, 적외선 포트, USB 포트, 및 마우스와 같은 포인터 디바이스 중 임의의 것에 커플링된다(또는 어떤 것에도 커플링되지 않는다). 하나 이상의 버튼들(예를 들어, 도 2의 208)은, 선택적으로, 스피커(111) 및/또는 마이크로폰(113)의 음량 제어를 위한 업/다운 버튼을 포함한다. 하나 이상의 버튼들은 선택적으로 푸시 버튼(예를 들어, 도 2의 206)을 포함한다.The I/O subsystem (106) couples input/output peripherals on the device (100), such as a touch screen (112) and other input control devices (116), to the peripheral interface (118). The I/O subsystem (106) optionally includes one or more input controllers (160) for a display controller (156), a light sensor controller (158), an intensity sensor controller (159), a haptic feedback controller (161), and other input or control devices. The one or more input controllers (160) receive/transmit electrical signals from/to the other input control devices (116). The other input control devices (116) optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some alternative embodiments, the input controller(s) (160) are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. One or more buttons (e.g., 208 of FIG. 2) optionally include up/down buttons for volume control of the speaker (111) and/or microphone (113). The one or more buttons optionally include a push button (e.g., 206 of FIG. 2).
푸시 버튼의 신속한 누르기(quick press)는 선택적으로 터치 스크린(112)의 잠금을 풀거나, 디바이스의 잠금을 해제하기 위해 선택적으로 터치 스크린 상의 제스처들을 사용하는 프로세스들을 시작하며, 이는 2005년 12월 23일자로 출원된 미국 특허 출원 제11/322,549호, "Unlocking a Device by Performing Gestures on an Unlock Image"(미국 특허 제7,657,849호)에 설명된 바와 같으며, 이는 이로써 그 전체가 참고로 본 명세서에 포함된다. 푸시 버튼(예를 들어, 206)의 더 긴 누르기는 선택적으로 디바이스(100)의 전원을 턴 온 또는 오프시킨다. 버튼들 중 하나 이상의 버튼들의 기능성은 선택적으로, 사용자 맞춤화가 가능하다. 터치 스크린(112)은 가상 또는 소프트 버튼들 및 하나 이상의 소프트 키보드들을 구현하는 데 사용된다.A quick press of the push button optionally initiates processes to unlock the touch screen (112), or optionally use gestures on the touch screen to unlock the device, as described in U.S. Patent Application No. 11/322,549, filed December 23, 2005, entitled “Unlocking a Device by Performing Gestures on an Unlock Image,” (U.S. Pat. No. 7,657,849), which is hereby incorporated by reference in its entirety. A longer press of the push button (e.g., 206) optionally turns the device (100) on or off. The functionality of one or more of the buttons is optionally user customizable. The touch screen (112) is used to implement virtual or soft buttons and one or more soft keyboards.
터치 감응형 디스플레이(112)는 디바이스와 사용자 사이의 입력 인터페이스 및 출력 인터페이스를 제공한다. 디스플레이 제어기(156)는 터치 스크린(112)으로부터/으로 전기 신호들을 수신 및/또는 전송한다. 터치 스크린(112)은 사용자에게 시각적 출력을 디스플레이한다. 시각적 출력은 선택적으로 그래픽들, 텍스트, 아이콘들, 비디오 및 이들의 임의의 조합(총칭하여 "그래픽들"로 지칭됨)을 포함한다. 일부 실시예들에서, 시각적 출력의 일부 또는 전부가 선택적으로 사용자 인터페이스 객체들에 대응한다.A touch-sensitive display (112) provides an input interface and an output interface between the device and a user. A display controller (156) receives and/or transmits electrical signals from/to the touch screen (112). The touch screen (112) displays visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively referred to as “graphics”). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.
터치 스크린(112)은 햅틱 및/또는 촉각적 접촉에 기초하여 사용자로부터의 입력을 수용하는 터치 감응형 표면, 센서 또는 센서들의 세트를 갖는다. 터치 스크린(112) 및 디스플레이 제어기(156)는 (메모리(102) 내의 임의의 연관된 모듈들 및/또는 명령어들의 세트들과 함께) 터치 스크린(112) 상의 접촉(및 접촉의 임의의 움직임 또는 중단)을 검출하고, 검출된 접촉을 터치 스크린(112) 상에 디스플레이된 사용자 인터페이스 객체들(예를 들어, 하나 이상의 소프트 키들, 아이콘들, 웹 페이지들 또는 이미지들)과의 상호작용으로 변환한다. 예시적인 실시예에서, 터치 스크린(112)과 사용자 사이의 접촉 지점은 사용자의 손가락에 대응한다.The touch screen (112) has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and/or tactile contact. The touch screen (112) and the display controller (156) (along with any associated modules and/or sets of instructions in the memory (102)) detect contact (and any movement or cessation of contact) on the touch screen (112) and translate the detected contact into interaction with user interface objects displayed on the touch screen (112) (e.g., one or more soft keys, icons, web pages, or images). In an exemplary embodiment, the point of contact between the touch screen (112) and the user corresponds to the user's finger.
터치 스크린(112)은 선택적으로 LCD(liquid crystal display) 기술, LPD(light emitting polymer display) 기술, 또는 LED(light emitting diode) 기술을 사용하지만, 다른 실시예들에서는 다른 디스플레이 기술들이 사용된다. 터치 스크린(112) 및 디스플레이 제어기(156)는, 선택적으로, 용량성, 저항성, 적외선, 및 표면 음향파 기술들 뿐만 아니라 다른 근접 센서 어레이들, 또는 터치 스크린(112)과의 하나 이상의 접촉 지점들을 결정하기 위한 다른 요소들을 포함하지만 이들로 제한되지 않는, 현재 알려져 있거나 추후에 개발되는 복수의 터치 감지 기술들 중 임의의 것을 사용하여, 접촉 및 그의 임의의 이동 또는 중단을 검출한다. 예시적인 실시예에서, 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크.로부터의 아이폰® 및 아이팟 터치®에서 발견되는 것과 같은 투영형 상호 정전용량 감지 기술(projected mutual capacitance sensing technology)이 사용된다.The touch screen (112) optionally uses liquid crystal display (LCD) technology, light emitting polymer display (LPD) technology, or light emitting diode (LED) technology, although other display technologies are used in other embodiments. The touch screen (112) and display controller (156) optionally detect contact and any movement or cessation thereof using any of a number of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays, or other elements for determining one or more points of contact with the touch screen (112). In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as found in the iPhone® and iPod touch® from Apple Inc. of Cupertino, Calif.
터치 스크린(112)의 일부 실시예들에서의 터치 감응형 디스플레이는, 선택적으로, 하기 미국 특허들 제6,323,846호(Westerman 외), 제6,570,557호(Westerman 외), 및/또는 제6,677,932호(Westerman), 및/또는 미국 특허 공개 공보 제2002/0015024A1호에 기재된 다중-터치 감응형 터치패드들과 유사하며, 이들 각각은 그 전체가 본 명세서에 참고로 포함된다. 그러나, 터치 스크린(112)은 디바이스(100)로부터의 시각적 출력을 디스플레이하는 반면, 터치 감응형 터치패드들은 시각적 출력을 제공하지 않는다.In some embodiments of the touch screen (112), the touch-sensitive display is optionally similar to the multi-touch-sensitive touchpads described in U.S. Pat. Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and/or 6,677,932 (Westerman), and/or U.S. Patent Publication No. 2002/0015024A1, each of which is incorporated herein by reference in its entirety. However, the touch screen (112) displays visual output from the device (100), whereas the touch-sensitive touchpads do not provide visual output.
터치 스크린(112)의 일부 실시예들에서의 터치 감응형 디스플레이는 다음의 출원들에 설명된다: (1) 2006년 5월 2일자로 출원된 미국 특허 출원 제11/381,313호, "Multipoint Touch Surface Controller"; (2) 2004년 5월 6일자로 출원된 미국 특허 출원 제10/840,862호, "Multipoint Touchscreen"; (3) 2004년 7월 30일자로 출원된 미국 특허 출원 제10/903,964호, "Gestures For Touch Sensitive Input Devices"; (4) 2005년 1월 31일자로 출원된 미국 특허 출원 제11/048,264호, "Gestures For Touch Sensitive Input Devices"; (5) 2005년 1월 18일자로 출원된 미국 특허 출원 제11/038,590호, "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices"; (6) 2005년 9월 16일자로 출원된 미국 특허 출원 제11/228,758호, "Virtual Input Device Placement On A Touch Screen User Interface"; (7) 2005년 9월 16일자로 출원된 미국 특허 출원 제11/228,700호, "Operation Of A Computer With A Touch Screen Interface"; (8) 2005년 9월 16일자로 출원된 미국 특허 출원 제11/228,737호, "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard"; 및 (9) 2006년 3월 3일자로 출원된 미국 특허 출원 제11/367,749호, "Multi-Functional Hand-Held Device". 이 출원들 모두는 그 전체가 본 명세서에 참고로 포함된다.Touch-sensitive displays in some embodiments of the touch screen (112) are described in the following applications: (1) U.S. Patent Application No. 11/381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller"; (2) U.S. Patent Application No. 10/840,862, filed May 6, 2004, entitled "Multipoint Touchscreen"; (3) U.S. Patent Application No. 10/903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices"; (4) U.S. Patent Application No. 11/048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices"; (5) U.S. Patent Application No. 11/038,590, filed Jan. 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices"; (6) U.S. Patent Application No. 11/228,758, filed Sep. 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface"; (7) U.S. Patent Application No. 11/228,700, filed Sep. 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface"; (8) U.S. Patent Application No. 11/228,737, filed Sep. 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard"; and (9) U.S. patent application Ser. No. 11/367,749, filed March 3, 2006, entitled “Multi-Functional Hand-Held Device”. All of which applications are incorporated herein by reference in their entirety.
터치 스크린(112)은, 선택적으로, 100 dpi를 초과하는 비디오 해상도를 갖는다. 일부 실시예들에서, 터치 스크린은 대략 160 dpi의 비디오 해상도를 갖는다. 사용자는, 선택적으로, 스타일러스, 손가락 등과 같은 임의의 적합한 물체 또는 부속물을 사용하여 터치 스크린(112)과 접촉한다. 일부 실시예들에서, 사용자 인터페이스는 주로 손가락 기반 접촉들 및 제스처들을 이용하여 동작하도록 설계되는데, 이는 터치 스크린 상에서의 손가락의 더 넓은 접촉 면적으로 인해 스타일러스 기반 입력보다 덜 정밀할 수 있다. 일부 실시예들에서, 디바이스는 대략적인 손가락 기반 입력을 사용자가 원하는 액션(action)들을 수행하기 위한 정밀한 포인터/커서 위치 또는 커맨드로 변환한다.The touch screen (112) optionally has a video resolution greater than 100 dpi. In some embodiments, the touch screen has a video resolution of approximately 160 dpi. The user optionally makes contact with the touch screen (112) using any suitable object or appendage, such as a stylus, a finger, or the like. In some embodiments, the user interface is designed to operate primarily using finger-based contacts and gestures, which may be less precise than stylus-based input due to the larger contact area of a finger on the touch screen. In some embodiments, the device converts rough finger-based input into precise pointer/cursor positions or commands for performing desired actions by the user.
일부 실시예들에서, 터치 스크린에 부가하여, 디바이스(100)는, 선택적으로, 특정 기능들을 활성화 또는 비활성화시키기 위한 터치패드(도시되지 않음)를 포함한다. 일부 실시예들에서, 터치패드는, 터치 스크린과는 달리, 시각적 출력을 디스플레이하지 않는 디바이스의 터치 감응형 영역이다. 터치패드는, 선택적으로, 터치 스크린(112)과는 별개인 터치 감응형 표면 또는 터치 스크린에 의해 형성된 터치 감응형 표면의 연장부이다.In some embodiments, in addition to the touch screen, the device (100) optionally includes a touchpad (not shown) for activating or deactivating certain features. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touch screen, does not display visual output. The touchpad is optionally a touch-sensitive surface separate from the touch screen (112) or an extension of the touch-sensitive surface formed by the touch screen.
디바이스(100)는 또한 다양한 컴포넌트들에 전력을 공급하기 위한 전력 시스템(162)을 포함한다. 전력 시스템(162)은, 선택적으로, 전력 관리 시스템, 하나 이상의 전원들(예를 들어, 배터리, 교류 전류(alternating current, AC)), 재충전 시스템, 전력 고장 검출 회로, 전력 변환기 또는 인버터, 전력 상태 표시자(예를 들어, 발광 다이오드(LED)), 및 휴대용 디바이스들 내에서의 전력의 생성, 관리 및 분배와 연관된 임의의 다른 컴포넌트들을 포함한다.The device (100) also includes a power system (162) for supplying power to the various components. The power system (162) optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, a power fault detection circuit, a power converter or inverter, a power status indicator (e.g., a light emitting diode (LED)), and any other components associated with generating, managing and distributing power within portable devices.
디바이스(100)는 또한 선택적으로 하나 이상의 광 센서들(164)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 광 센서 제어기(158)에 커플링된 광 센서를 도시한다. 광 센서(164)는 선택적으로 CCD(charge-coupled device) 또는 CMOS(complementary metal-oxide semiconductor) 포토트랜지스터들을 포함한다. 광 센서(164)는 하나 이상의 렌즈들을 통해 투영되는, 주변환경으로부터의 광을 수광하고, 그 광을 이미지를 표현하는 데이터로 변환한다. 이미징 모듈(143)(카메라 모듈로도 지칭됨)과 함께, 광 센서(164)는 선택적으로, 정지 이미지들 또는 비디오를 캡처한다. 일부 실시예들에서, 광 센서는 디바이스 전면 상의 터치 스크린 디스플레이(112)의 반대편인 디바이스(100)의 배면 상에 위치되어, 터치 스크린 디스플레이가 정지 및/또는 비디오 이미지 획득을 위한 뷰파인더로서 사용될 수 있게 한다. 일부 실시예들에서, 광 센서는 디바이스의 전면 상에 위치됨으로써, 사용자가 터치 스크린 디스플레이 상에서 다른 화상 회의 참가자들을 보는 동안, 선택적으로, 사용자의 이미지가 화상 회의를 위해 얻어진다. 일부 실시예들에서, 광 센서(164)의 위치는 (예를 들어, 디바이스 하우징 내의 렌즈 및 센서를 회전시킴으로써) 사용자에 의해 변경될 수 있어, 단일 광 센서(164)가 터치 스크린 디스플레이와 함께 화상 회의와 정지 및/또는 비디오 이미지 획득 둘 모두에 사용되게 한다.The device (100) also optionally includes one or more optical sensors (164). FIG. 1A illustrates a optical sensor coupled to a optical sensor controller (158) within the I/O subsystem (106). The optical sensor (164) optionally includes charge-coupled device (CCD) or complementary metal-oxide semiconductor (CMOS) phototransistors. The optical sensor (164) receives light from the surrounding environment, which is projected through one or more lenses, and converts the light into data representing an image. In conjunction with an imaging module (143) (also referred to as a camera module), the optical sensor (164) optionally captures still images or video. In some embodiments, the optical sensor is located on the back surface of the device (100), opposite the touch screen display (112) on the front surface of the device, such that the touch screen display can be used as a viewfinder for capturing still and/or video images. In some embodiments, the optical sensor is positioned on the front of the device so that the user's image is optionally acquired for video conferencing while viewing other video conferencing participants on the touch screen display. In some embodiments, the position of the optical sensor (164) can be changed by the user (e.g., by rotating the lens and sensor within the device housing), allowing a single optical sensor (164) to be used for both video conferencing and still and/or video image acquisition in conjunction with the touch screen display.
디바이스(100)는, 또한, 선택적으로, 하나 이상의 접촉 세기 센서들(165)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 세기 센서 제어기(159)에 커플링된 접촉 세기 센서를 도시한다. 접촉 세기 센서(165)는, 선택적으로, 하나 이상의 압전 저항 스트레인 게이지들, 용량성 힘 센서들, 전기적 힘 센서들, 압전 힘 센서들, 광학적 힘 센서들, 용량성 터치 감응형 표면들, 또는 다른 세기 센서들(예를 들어, 터치 감응형 표면 상의 접촉의 힘(또는 압력)을 측정하는 데 사용되는 센서들)을 포함한다. 접촉 세기 센서(165)는 주변환경으로부터 접촉 세기 정보(예를 들어, 압력 정보 또는 압력 정보에 대한 대용물)를 수신한다. 일부 실시예들에서, 적어도 하나의 접촉 세기 센서는 터치 감응형 표면(예를 들어, 터치 감응형 디스플레이 시스템(112))과 함께 위치(collocate)되거나 그에 근접한다. 일부 실시예들에서, 적어도 하나의 접촉 세기 센서는 디바이스(100)의 전면 상에 위치된 터치 스크린 디스플레이(112)의 반대편인 디바이스(100)의 배면 상에 위치된다.The device (100) optionally also includes one or more contact intensity sensors (165). FIG. 1A illustrates a contact intensity sensor coupled to an intensity sensor controller (159) within the I/O subsystem (106). The contact intensity sensor (165) optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). The contact intensity sensor (165) receives contact intensity information (e.g., pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is collocated with or proximate to the touch-sensitive surface (e.g., the touch-sensitive display system (112)). In some embodiments, at least one contact intensity sensor is positioned on the back surface of the device (100) opposite the touch screen display (112) positioned on the front surface of the device (100).
디바이스(100)는 또한 선택적으로 하나 이상의 근접 센서들(166)을 포함한다. 도 1a는 주변기기 인터페이스(118)에 커플링된 근접 센서(166)를 도시한다. 대안적으로, 근접 센서(166)는, 선택적으로, I/O 서브시스템(106) 내의 입력 제어기(160)에 커플링된다. 근접 센서(166)는, 선택적으로, 미국 특허 출원들 제11/241,839호, "Proximity Detector In Handheld Device"; 제11/240,788호, "Proximity Detector In Handheld Device"; 제11/620,702호, "Using Ambient Light Sensor To Augment Proximity Sensor Output"; 제11/586,862호, "Automated Response To And Sensing Of User Activity In Portable Devices"; 제11/638,251호, "Methods And Systems For Automatic Configuration Of Peripherals"에 설명된 바와 같이 수행되며, 이들은 이로써 그들 전체가 참고로 포함된다. 일부 실시예들에서, 근접 센서는 다기능 디바이스가 사용자의 귀 근처에 위치될 때(예를 들어, 사용자가 전화 통화를 하고 있을 때) 터치 스크린(112)을 턴 오프시키고 디스에이블시킨다.The device (100) also optionally includes one or more proximity sensors (166). FIG. 1A illustrates a proximity sensor (166) coupled to a peripheral interface (118). Alternatively, the proximity sensor (166) is optionally coupled to an input controller (160) within the I/O subsystem (106). The proximity sensor (166) may optionally be configured as described in U.S. Patent Application Nos. 11/241,839, "Proximity Detector In Handheld Device"; 11/240,788, "Proximity Detector In Handheld Device"; 11/620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output"; 11/586,862, "Automated Response To And Sensing Of User Activity In Portable Devices"; As described in U.S. Pat. No. 11/638,251, "Methods And Systems For Automatic Configuration Of Peripherals", which is hereby incorporated by reference in its entirety. In some embodiments, the proximity sensor turns off and disables the touch screen (112) when the multifunction device is placed near a user's ear (e.g., when the user is on a phone call).
디바이스(100)는, 또한, 선택적으로, 하나 이상의 촉각적 출력 생성기들(167)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 햅틱 피드백 제어기(161)에 커플링된 촉각적 출력 생성기를 도시한다. 촉각적 출력 생성기(167)는, 선택적으로, 스피커들 또는 다른 오디오 컴포넌트들과 같은 하나 이상의 전자음향 디바이스들 및/또는 모터, 솔레노이드, 전기활성 중합체, 압전 액추에이터, 정전 액추에이터, 또는 다른 촉각적 출력 생성 컴포넌트(예를 들어, 전기 신호들을 디바이스 상의 촉각적 출력들로 변환하는 컴포넌트)와 같은, 에너지를 선형 모션(linear motion)으로 변환하는 전자기계 디바이스들을 포함한다. 접촉 세기 센서(165)는 햅틱 피드백 모듈(133)로부터 촉각적 피드백 생성 명령어들을 수신하여 디바이스(100)의 사용자에 의해 감지될 수 있는 디바이스(100) 상의 촉각적 출력들을 생성한다. 일부 실시예들에서, 적어도 하나의 촉각적 출력 생성기는 터치 감응형 표면(예를 들어, 터치 감응형 디스플레이 시스템(112))과 함께 위치되거나 그에 근접하며, 선택적으로, 터치 감응형 표면을 수직으로(예를 들어, 디바이스(100)의 표면 내/외로) 또는 측방향으로(예를 들어, 디바이스(100)의 표면과 동일한 평면에서 전후로) 이동시킴으로써 촉각적 출력을 생성한다. 일부 실시예들에서, 적어도 하나의 촉각적 출력 생성기 센서는 디바이스(100)의 전면 상에 위치된 터치 스크린 디스플레이(112)의 반대편인 디바이스(100)의 배면 상에 위치된다.The device (100) also optionally includes one or more tactile output generators (167). FIG. 1A illustrates a tactile output generator coupled to a haptic feedback controller (161) within the I/O subsystem (106). The tactile output generator (167) optionally includes one or more electroacoustic devices, such as speakers or other audio components, and/or electromechanical devices that convert energy into linear motion, such as a motor, a solenoid, an electroactive polymer, a piezoelectric actuator, an electrostatic actuator, or other tactile output generating component (e.g., a component that converts electrical signals into tactile outputs on the device). The contact intensity sensor (165) receives tactile feedback generating instructions from the haptic feedback module (133) and generates tactile outputs on the device (100) that can be sensed by a user of the device (100). In some embodiments, at least one tactile output generator is positioned with or proximate to a touch-sensitive surface (e.g., a touch-sensitive display system (112)) and optionally generates a tactile output by moving the touch-sensitive surface vertically (e.g., in/out of a surface of the device (100)) or laterally (e.g., back and forth in the same plane as the surface of the device (100)). In some embodiments, the at least one tactile output generator sensor is positioned on a back surface of the device (100) opposite the touch screen display (112) that is positioned on the front surface of the device (100).
디바이스(100)는 또한 선택적으로 하나 이상의 가속도계들(168)을 포함한다. 도 1a는 주변기기 인터페이스(118)에 커플링된 가속도계(168)를 도시한다. 대안적으로, 가속도계(168)는 선택적으로 I/O 서브시스템(106) 내의 입력 제어기(160)에 커플링된다. 가속도계(168)는, 선택적으로, 미국 특허 공개 공보 제20050190059호, "Acceleration-based Theft Detection System for Portable Electronic Devices" 및 미국 특허 공개 공보 제20060017692호, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer"에 설명된 바와 같이 수행되며, 이들 둘 모두는 그들 전체가 참고로 본 명세서에 포함된다. 일부 실시예들에서, 하나 이상의 가속도계들로부터 수신된 데이터의 분석에 기초하여 터치 스크린 디스플레이 상에 세로보기(portrait view) 또는 가로보기(landscape view)로 정보가 디스플레이된다. 디바이스(100)는, 선택적으로, 가속도계(들)(168)에 부가하여, 자력계(도시되지 않음), 및 디바이스(100)의 위치 및 배향(예를 들어, 세로 또는 가로)에 관한 정보를 획득하기 위한 GPS(또는 GLONASS 또는 다른 글로벌 내비게이션 시스템) 수신기(도시되지 않음)를 포함한다.The device (100) also optionally includes one or more accelerometers (168). FIG. 1A illustrates an accelerometer (168) coupled to a peripheral interface (118). Alternatively, the accelerometer (168) is optionally coupled to an input controller (160) within the I/O subsystem (106). The accelerometer (168) is optionally implemented as described in U.S. Patent Publication No. 20050190059, entitled “Acceleration-based Theft Detection System for Portable Electronic Devices,” and U.S. Patent Publication No. 20060017692, entitled “Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer,” both of which are incorporated herein by reference in their entireties. In some embodiments, information is displayed on the touch screen display in either a portrait view or a landscape view based on analysis of data received from the one or more accelerometers. The device (100) optionally includes, in addition to the accelerometer(s) (168), a magnetometer (not shown), and a GPS (or GLONASS or other global navigation system) receiver (not shown) for obtaining information regarding the position and orientation (e.g., vertical or horizontal) of the device (100).
일부 실시예들에서, 메모리(102)에 저장된 소프트웨어 컴포넌트들은 운영 체제(126), 통신 모듈(또는 명령어들의 세트)(128), 접촉/모션 모듈(또는 명령어들의 세트)(130), 그래픽 모듈(또는 명령어들의 세트)(132), 텍스트 입력 모듈(또는 명령어들의 세트)(134), GPS 모듈(또는 명령어들의 세트)(135), 및 애플리케이션들(또는 명령어들의 세트들)(136)을 포함한다. 더욱이, 일부 실시예들에서, 메모리(도 1a의 102 또는 도 3의 370)는 도 1a 및 도 3에 도시된 바와 같이 디바이스/글로벌 내부 상태(157)를 저장한다. 디바이스/글로벌 내부 상태(157)는, 존재하는 경우, 어느 애플리케이션들이 현재 활성인지를 표시하는 활성 애플리케이션 상태; 어떤 애플리케이션들, 뷰들, 또는 다른 정보가 터치 스크린 디스플레이(112)의 다양한 구역들을 점유하는지를 표시하는 디스플레이 상태; 디바이스의 다양한 센서들 및 입력 제어 디바이스들(116)로부터 획득된 정보를 포함하는 센서 상태; 및 디바이스의 위치 및/또는 자세에 관한 위치 정보 중 하나 이상을 포함한다.In some embodiments, the software components stored in the memory (102) include an operating system (126), a communications module (or set of instructions) (128), a contact/motion module (or set of instructions) (130), a graphics module (or set of instructions) (132), a text entry module (or set of instructions) (134), a GPS module (or set of instructions) (135), and applications (or sets of instructions) (136). Furthermore, in some embodiments, the memory (102 of FIG. 1A or 370 of FIG. 3) stores a device/global internal state (157), as illustrated in FIGS. 1A and 3 . The device/global internal state (157) includes an active application state, which indicates which applications, if any, are currently active; a display state, which indicates which applications, views, or other information occupy various regions of the touch screen display (112); Sensor status including information obtained from various sensors and input control devices (116) of the device; and one or more of position information regarding the position and/or attitude of the device.
운영 체제(126)(예를 들어, Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, 또는 VxWorks와 같은 임베디드 운영 체제)는 일반적인 시스템 태스크들(예를 들어, 메모리 관리, 저장 디바이스 제어, 전력 관리 등)을 제어 및 관리하기 위한 다양한 소프트웨어 컴포넌트들 및/또는 드라이버들을 포함하고, 다양한 하드웨어와 소프트웨어 컴포넌트들 사이의 통신을 용이하게 한다.An operating system (126) (e.g., an embedded operating system such as Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or VxWorks) includes various software components and/or drivers to control and manage general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitate communication between various hardware and software components.
통신 모듈(128)은 하나 이상의 외부 포트(124)를 통한 다른 디바이스들과의 통신을 가능하게 하고, 또한 RF 회로부(108) 및/또는 외부 포트(124)에 의해 수신되는 데이터를 처리하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 외부 포트(124)(예를 들어, USB, 파이어와이어(FIREWIRE) 등)는 다른 디바이스들에 직접적으로 또는 네트워크(예를 들어, 인터넷, 무선 LAN 등)를 통해 간접적으로 커플링하도록 구성된다. 일부 실시예들에서, 외부 포트는 아이팟®(애플 인크.의 상표) 디바이스들에서 사용되는 30-핀 커넥터와 동일하거나 유사하고 그리고/또는 이와 호환가능한 멀티-핀(예를 들어, 30-핀) 커넥터이다.The communications module (128) enables communication with other devices via one or more external ports (124), and also includes various software components for processing data received by the RF circuitry (108) and/or the external port (124). The external port (124) (e.g., USB, FIREWIRE, etc.) is configured to couple directly to other devices or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is identical to, similar to, and/or compatible with the 30-pin connector used on iPod® (a trademark of Apple Inc.) devices.
접촉/모션 모듈(130)은, 선택적으로, (디스플레이 제어기(156)와 함께) 터치 스크린(112), 및 다른 터치 감응형 디바이스들(예를 들어, 터치패드 또는 물리적 클릭 휠)과의 접촉을 검출한다. 접촉/모션 모듈(130)은 접촉이 발생했는지를 결정하는 것(예를 들어, 손가락-다운 이벤트(finger-down event)를 검출하는 것), 접촉의 세기(예를 들어, 접촉의 힘 또는 압력, 또는 접촉의 힘 또는 압력에 대한 대체물)를 결정하는 것, 접촉의 움직임이 있는지를 결정하여 터치 감응형 표면을 가로지르는 움직임을 추적하는 것(예를 들어, 하나 이상의 손가락-드래깅 이벤트(finger-dragging event)들을 검출하는 것), 및 접촉이 중단되었는지를 결정하는 것(예를 들어, 손가락-업 이벤트(finger-up event) 또는 접촉 중단을 검출하는 것)과 같은, 접촉의 검출에 관련된 다양한 동작들을 수행하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 접촉/모션 모듈(130)은 터치 감응형 표면으로부터 접촉 데이터를 수신한다. 일련의 접촉 데이터에 의해 표현되는 접촉 지점의 이동을 결정하는 것은, 선택적으로, 접촉 지점의 속력(크기), 속도(크기 및 방향), 및/또는 가속도(크기 및/또는 방향의 변화)를 결정하는 것을 포함한다. 이러한 동작들은, 선택적으로 단일 접촉들(예를 들어, 한 손가락 접촉들) 또는 다수의 동시 접촉들(예를 들어, "다중 접촉"/다수의 손가락 접촉들)에 적용된다. 일부 실시예들에서, 접촉/모션 모듈(130) 및 디스플레이 제어기(156)는 터치패드 상의 접촉을 검출한다.The contact/motion module (130) optionally detects contact with the touch screen (112) (along with the display controller (156)) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). The contact/motion module (130) includes various software components for performing various operations related to detecting contact, such as determining whether contact has occurred (e.g., detecting a finger-down event), determining the magnitude of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-dragging events), and determining whether contact has ceased (e.g., detecting a finger-up event or a cessation of contact). The contact/motion module (130) receives contact data from the touch-sensitive surface. Determining the movement of a contact point represented by a series of contact data optionally includes determining the speed (magnitude), velocity (magnitude and direction), and/or acceleration (change in magnitude and/or direction) of the contact point. These operations optionally apply to single contacts (e.g., single finger contacts) or multiple simultaneous contacts (e.g., “multiple contacts”/multiple finger contacts). In some embodiments, the contact/motion module (130) and the display controller (156) detect contacts on the touchpad.
일부 실시예들에서, 접촉/모션 모듈(130)은 동작이 사용자에 의해 수행되었는지 여부를 결정하기 위해 (예를 들어, 사용자가 아이콘 상에서 "클릭"했는지 여부를 결정하기 위해) 하나 이상의 세기 임계치들의 세트를 사용한다. 일부 실시예들에서, 적어도 세기 임계치들의 서브세트가 소프트웨어 파라미터들에 따라 결정된다(예를 들어, 세기 임계치들은 특정 물리적 액추에이터들의 활성화 임계치들에 의해 결정되지 않으며, 디바이스(100)의 물리적 하드웨어를 변경함이 없이 조정될 수 있다). 예를 들어, 트랙패드 또는 터치 스크린 디스플레이의 마우스 "클릭" 임계치는 트랙패드 또는 터치 스크린 디스플레이 하드웨어를 변경하지 않으면서 넓은 범위의 미리 정의된 임계치 값들 중 임의의 것으로 설정될 수 있다. 부가적으로, 일부 구현예들에서, 디바이스의 사용자는 (예를 들어, 개별 세기 임계치들을 조정함으로써 그리고/또는 복수의 세기 임계치들을 시스템 레벨 클릭 "세기" 파라미터로 한번에 조정함으로써) 일정 세트의 세기 임계치들 중 하나 이상을 조정하기 위한 소프트웨어 설정들을 제공받는다.In some embodiments, the contact/motion module (130) uses a set of one or more intensity thresholds to determine whether an action has been performed by a user (e.g., to determine whether the user has "clicked" on an icon). In some embodiments, at least a subset of the intensity thresholds are determined by software parameters (e.g., the intensity thresholds are not determined by the activation thresholds of specific physical actuators, and can be adjusted without changing the physical hardware of the device (100). For example, a mouse "click" threshold of a trackpad or touch screen display can be set to any of a wide range of predefined threshold values without changing the trackpad or touch screen display hardware. Additionally, in some implementations, a user of the device is provided with software settings to adjust one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and/or by adjusting multiple intensity thresholds at once as a system-level click "intensity" parameter).
접촉/모션 모듈(130)은, 선택적으로, 사용자에 의한 제스처 입력을 검출한다. 터치 감응형 표면 상에서의 상이한 제스처들은 상이한 접촉 패턴들(예를 들어, 검출된 접촉들의 상이한 모션들, 타이밍들, 및/또는 세기들)을 갖는다. 따라서, 제스처는, 선택적으로, 특정 접촉 패턴을 검출함으로써 검출된다. 예를 들어, 손가락 탭 제스처(finger tap gesture)를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 손가락-다운 이벤트와 동일한 위치(또는 실질적으로 동일한 위치)에서(예를 들어, 아이콘의 위치에서) 손가락-업(리프트오프(liftoff)) 이벤트를 검출하는 것을 포함한다. 다른 예로서, 터치 감응형 표면 상에서 손가락 스와이프 제스처(finger swipe gesture)를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 하나 이상의 손가락-드래깅 이벤트들을 검출하고, 그에 후속하여 손가락-업(리프트오프) 이벤트를 검출하는 것을 포함한다.The contact/motion module (130) optionally detects a gestural input by the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and/or intensities of the detected contacts). Accordingly, a gesture is optionally detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger-down event, followed by detecting a finger-up (liftoff) event at the same location (or substantially the same location) as the finger-down event (e.g., at the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger-down event, followed by detecting one or more finger-drag events, followed by detecting a finger-up (liftoff) event.
그래픽 모듈(132)은, 디스플레이되는 그래픽들의 시각적 효과(예를 들어, 밝기, 투명도, 채도, 콘트라스트 또는 다른 시각적 속성)를 변화시키기 위한 컴포넌트들을 포함하는, 터치 스크린(112) 또는 다른 디스플레이 상에서 그래픽들을 렌더링 및 디스플레이하기 위한 다양한 알려진 소프트웨어 컴포넌트들을 포함한다. 본 명세서에서 사용되는 바와 같이, 용어 "그래픽"은 텍스트, 웹 페이지들, 아이콘들(예컨대, 소프트 키들을 포함하는 사용자 인터페이스 객체들), 디지털 이미지들, 비디오들, 애니메이션들 등을 제한 없이 포함하는, 사용자에게 디스플레이될 수 있는 임의의 객체를 포함한다.The graphics module (132) includes various known software components for rendering and displaying graphics on the touch screen (112) or other display, including components for changing the visual effects (e.g., brightness, transparency, saturation, contrast, or other visual properties) of the graphics being displayed. As used herein, the term "graphics" includes any object that can be displayed to a user, including without limitation text, web pages, icons (e.g., user interface objects including soft keys), digital images, videos, animations, and the like.
일부 실시예들에서, 그래픽 모듈(132)은 사용될 그래픽을 표현하는 데이터를 저장한다. 각각의 그래픽에는, 선택적으로, 대응하는 코드가 할당된다. 그래픽 모듈(132)은, 필요한 경우, 좌표 데이터 및 다른 그래픽 속성 데이터와 함께, 디스플레이될 그래픽을 특정하는 하나 이상의 코드들을 애플리케이션들 등으로부터 수신하며, 이어서 스크린 이미지 데이터를 생성하여 디스플레이 제어기(156)에 출력한다.In some embodiments, the graphics module (132) stores data representing the graphics to be used. Each graphic is optionally assigned a corresponding code. The graphics module (132) receives one or more codes specifying the graphics to be displayed from applications, etc., along with coordinate data and other graphic attribute data, if necessary, and then generates screen image data and outputs it to the display controller (156).
햅틱 피드백 모듈(133)은 디바이스(100)와의 사용자 상호작용들에 응답하여 디바이스(100) 상의 하나 이상의 위치들에서 촉각적 출력들을 생성하기 위하여 촉각적 출력 생성기(들)(167)에 의해 사용되는 명령어들을 생성하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다.The haptic feedback module (133) includes various software components for generating commands used by the haptic output generator(s) (167) to generate tactile outputs at one or more locations on the device (100) in response to user interactions with the device (100).
선택적으로 그래픽 모듈(132)의 컴포넌트인 텍스트 입력 모듈(134)은 다양한 애플리케이션들(예를 들어, 연락처들(137), 이메일(140), IM(141), 브라우저(147), 및 텍스트 입력을 필요로 하는 임의의 다른 애플리케이션)에 텍스트를 입력하기 위한 소프트 키보드들을 제공한다.Optionally, a text input module (134), which is a component of the graphics module (132), provides soft keyboards for entering text into various applications (e.g., contacts (137), email (140), IM (141), browser (147), and any other application requiring text input).
GPS 모듈(135)은 디바이스의 위치를 결정하고, 이러한 정보를 다양한 애플리케이션들에서의 사용을 위해 (예를 들어, 위치-기반 다이얼링에서 사용하기 위해 전화(138)에; 사진/비디오 메타데이터로서 카메라(143)에; 그리고 날씨 위젯들, 지역 옐로 페이지 위젯들 및 지도/내비게이션 위젯들과 같은 위치 기반 서비스들을 제공하는 애플리케이션들에) 제공한다.The GPS module (135) determines the location of the device and provides this information for use in various applications (e.g., to the phone (138) for use in location-based dialing; to the camera (143) as photo/video metadata; and to applications that provide location-based services such as weather widgets, local yellow pages widgets, and map/navigation widgets).
애플리케이션들(136)은, 선택적으로, 다음의 모듈들(또는 명령어들의 세트들), 또는 이들의 서브세트 또는 수퍼세트(superset)를 포함한다:The applications (136) optionally include the following modules (or sets of instructions), or a subset or superset thereof:
연락처 모듈(137)(때때로 주소록 또는 연락처 목록으로 지칭됨); Contacts module (137) (sometimes referred to as an address book or contact list);
전화 모듈(138); Telephone module (138);
화상 회의 모듈(139); Video conferencing module (139);
이메일 클라이언트 모듈(140); Email client module (140);
인스턴트 메시징(IM) 모듈(141); Instant messaging (IM) module (141);
운동 지원 모듈(142); Exercise support module (142);
정지 및/또는 비디오 이미지들을 위한 카메라 모듈(143); Camera module (143) for still and/or video images;
이미지 관리 모듈(144); Image management module (144);
비디오 재생기 모듈; Video player module;
음악 재생기 모듈; Music player module;
브라우저 모듈(147); Browser module (147);
캘린더 모듈(148); Calendar module (148);
날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(149-3), 알람 시계 위젯(149-4), 사전 위젯(149-5), 및 사용자에 의해 얻어지는 다른 위젯들뿐 아니라 사용자-생성 위젯들(149-6) 중 하나 이상을 선택적으로 포함하는 위젯 모듈들(149); Widget modules (149) optionally including one or more of a weather widget (149-1), a stock widget (149-2), a calculator widget (149-3), an alarm clock widget (149-4), a dictionary widget (149-5), and other widgets obtained by the user as well as user-created widgets (149-6);
사용자-생성 위젯들(149-6)을 만들기 위한 위젯 생성기 모듈(150); A widget generator module (150) for creating user-created widgets (149-6);
검색 모듈(151); Search module (151);
비디오 재생기 모듈 및 음악 재생기 모듈을 통합하는 비디오 및 음악 재생기 모듈(152); A video and music player module (152) integrating a video player module and a music player module;
메모 모듈(153); Memo module (153);
지도 모듈(154); 및/또는 map module (154); and/or
온라인 비디오 모듈(155). Online video module (155).
선택적으로 메모리(102) 내에 저장되는 다른 애플리케이션들(136)의 예들은 다른 워드 프로세싱 애플리케이션들, 다른 이미지 편집 애플리케이션들, 드로잉 애플리케이션들, 프레젠테이션 애플리케이션들, JAVA-인에이블형(enabled) 애플리케이션들, 암호화, 디지털 저작권 관리, 음성 인식 및 음성 복제를 포함한다.Examples of other applications (136) optionally stored within memory (102) include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital rights management, speech recognition and speech transcription.
터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 연락처 모듈(137)은, 선택적으로, 주소록 또는 연락처 목록(예를 들어, 메모리(102) 또는 메모리(370) 내의 연락처 모듈(137)의 애플리케이션 내부 상태(192)에 저장됨)을 관리하는 데 사용되며: 이는 다음을 포함한다: 이름(들)을 주소록에 추가하는 것; 주소록으로부터 이름(들)을 삭제하는 것; 전화번호(들), 이메일 주소(들), 물리적 주소(들) 또는 다른 정보를 이름과 연관시키는 것; 이미지를 이름과 연관시키는 것; 이름들을 분류 및 정렬하는 것; 전화(138), 화상 회의 모듈(139), 이메일(140) 또는 IM(141)에 의한 통신을 개시하고 그리고/또는 용이하게 하기 위해 전화번호들 또는 이메일 주소들을 제공하는 것 등.In conjunction with the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132) and the text input module (134), the contacts module (137) is optionally used to manage an address book or list of contacts (e.g., stored in the application internal state (192) of the contacts module (137) within the memory (102) or memory (370), including: adding name(s) to the address book; deleting name(s) from the address book; associating phone number(s), email address(es), physical address(es) or other information with a name; associating an image with a name; categorizing and sorting names; providing phone numbers or email addresses to initiate and/or facilitate communication by phone (138), video conferencing module (139), email (140) or IM (141), etc.
RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 및 텍스트 입력 모듈(134)과 함께, 전화 모듈(138)은, 선택적으로, 전화번호에 대응하는 문자들의 시퀀스를 입력하고, 연락처 모듈(137) 내의 하나 이상의 전화번호들에 액세스하고, 입력된 전화번호를 수정하고, 개별 전화번호를 다이얼링하고, 대화를 하고, 대화가 완료된 때 연결해제하거나 끊는 데 사용된다. 위에서 언급된 바와 같이, 무선 통신은 선택적으로 복수의 통신 표준들, 프로토콜들 및 기술들 중 임의의 것을 사용한다.In conjunction with the RF circuitry (108), the audio circuitry (110), the speaker (111), the microphone (113), the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), and the text entry module (134), the telephone module (138) is optionally used to input a sequence of characters corresponding to a phone number, access one or more phone numbers within the contacts module (137), modify an input phone number, dial an individual phone number, engage in a conversation, and disconnect or hang up when the conversation is complete. As noted above, the wireless communications optionally utilize any of a plurality of communication standards, protocols and technologies.
RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 터치 스크린(112), 디스플레이 제어기(156), 광 센서(164), 광 센서 제어기(158), 접촉/모션 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 연락처 모듈(137) 및 전화 모듈(138)과 함께, 화상 회의 모듈(139)은 사용자 지시들에 따라 사용자와 한 명 이상의 다른 참가자들 사이의 화상 회의를 개시, 시행 및 종료하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the RF circuitry (108), the audio circuitry (110), the speaker (111), the microphone (113), the touch screen (112), the display controller (156), the light sensor (164), the light sensor controller (158), the contact/motion module (130), the graphics module (132), the text input module (134), the contact module (137), and the phone module (138), the video conferencing module (139) includes executable instructions for initiating, conducting, and terminating a video conference between a user and one or more other participants according to user instructions.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 이메일 클라이언트 모듈(140)은 사용자 지시들에 응답하여 이메일을 작성, 송신, 수신, 및 관리하도록 하는 실행가능 명령어들을 포함한다. 이미지 관리 모듈(144)과 함께, 이메일 클라이언트 모듈(140)은 카메라 모듈(143)로 촬영된 정지 또는 비디오 이미지들을 갖는 이메일을 생성 및 전송하는 것을 매우 용이하게 한다.In conjunction with the RF circuitry (108), touch screen (112), display controller (156), contact/motion module (130), graphics module (132), and text input module (134), the email client module (140) includes executable instructions to compose, send, receive, and manage emails in response to user instructions. In conjunction with the image management module (144), the email client module (140) makes it very easy to create and send emails having still or video images captured by the camera module (143).
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 인스턴트 메시징 모듈(141)은, 인스턴트 메시지에 대응하는 문자들의 시퀀스를 입력하고, 이전에 입력된 문자들을 수정하고, (예를 들어, 전화 기반 인스턴트 메시지들을 위한 단문자 메시지 서비스(Short Message Service, SMS) 또는 멀티미디어 메시지 서비스(Multimedia Message Service, MMS) 프로토콜을 이용하거나, 인터넷 기반 인스턴트 메시지들을 위한 XMPP, SIMPLE 또는 IMPS를 이용하여) 개개의 인스턴트 메시지를 송신하고, 인스턴트 메시지들을 수신하고, 수신된 인스턴트 메시지들을 보도록 하는 실행가능 명령어들을 포함한다. 일부 실시예들에서, 송신 및/또는 수신된 인스턴트 메시지들은 선택적으로 그래픽, 사진, 오디오 파일, 비디오 파일 및/또는 MMS 및/또는 EMS(Enhanced Messaging Service)에서 지원되는 바와 같은 다른 첨부물들을 포함한다. 본 명세서에서 사용되는 바와 같이, "인스턴트 메시징"은 전화 기반 메시지들(예를 들어, SMS 또는 MMS를 사용하여 전송되는 메시지들) 및 인터넷 기반 메시지들(예를 들어, XMPP, SIMPLE 또는 IMPS를 사용하여 전송되는 메시지들) 둘 모두를 지칭한다.In conjunction with the RF circuitry (108), the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), and the text input module (134), the instant messaging module (141) includes executable instructions to input a sequence of characters corresponding to an instant message, to modify previously input characters, to send individual instant messages (e.g., using the Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for phone-based instant messages, or XMPP, SIMPLE or IMPS for Internet-based instant messages), to receive instant messages, and to view received instant messages. In some embodiments, the sent and/or received instant messages optionally include graphics, photographs, audio files, video files, and/or other attachments as supported by MMS and/or Enhanced Messaging Service (EMS). As used herein, “instant messaging” refers to both phone-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE or IMPS).
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 지도 모듈(154), 및 음악 재생기 모듈과 함께, 운동 지원 모듈(142)은, (예를 들어, 시간, 거리, 및/또는 열량 소비 목표와 함께) 운동들을 고안하고; 운동 센서들(스포츠 디바이스들)과 통신하고; 운동 센서 데이터를 수신하고; 운동을 모니터링하는 데 사용되는 센서들을 교정하고; 운동을 위한 음악을 선택 및 재생하고; 운동 데이터를 디스플레이, 저장 및 송신하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the RF circuitry (108), the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), the text entry module (134), the GPS module (135), the map module (154), and the music player module, the workout assistance module (142) includes executable instructions to: design workouts (e.g., with time, distance, and/or calorie consumption goals); communicate with workout sensors (sports devices); receive workout sensor data; calibrate sensors used to monitor workouts; select and play music for workouts; and display, store, and transmit workout data.
터치 스크린(112), 디스플레이 제어기(156), 광 센서(들)(164), 광 센서 제어기(158), 접촉/모션 모듈(130), 그래픽 모듈(132) 및 이미지 관리 모듈(144)과 함께, 카메라 모듈(143)은, 정지 이미지들 또는 비디오(비디오 스트림을 포함함)를 캡처하고 이들을 메모리(102) 내에 저장하거나, 정지 이미지 또는 비디오의 특성을 수정하거나, 메모리(102)로부터 정지 이미지 또는 비디오를 삭제하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the touch screen (112), the display controller (156), the light sensor(s) (164), the light sensor controller (158), the contact/motion module (130), the graphics module (132), and the image management module (144), the camera module (143) includes executable instructions to capture still images or video (including a video stream) and store them in the memory (102), modify characteristics of a still image or video, or delete a still image or video from the memory (102).
터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 카메라 모듈(143)과 함께, 이미지 관리 모듈(144)은 정지 및/또는 비디오 이미지들을 배열하거나, 수정(예를 들어, 편집)하거나, 또는 그렇지 않으면 조작하고, 라벨링하고, 삭제하고, (예를 들어, 디지털 슬라이드 쇼 또는 앨범에) 제시하고, 저장하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the touch screen (112), display controller (156), contact/motion module (130), graphics module (132), text input module (134), and camera module (143), the image management module (144) includes executable instructions to arrange, modify (e.g., edit), or otherwise manipulate, label, delete, present (e.g., in a digital slide show or album), and store still and/or video images.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 브라우저 모듈(147)은, 웹 페이지들 또는 이들의 부분들뿐만 아니라 웹 페이지들에 링크된 첨부물들 및 다른 파일들을 검색하고, 그들에 링크하고, 수신하고, 그리고 디스플레이하는 것을 비롯한, 사용자 지시들에 따라 인터넷을 브라우징하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the RF circuitry (108), the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), and the text input module (134), the browser module (147) includes executable instructions for browsing the Internet according to user instructions, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140), 및 브라우저 모듈(147)과 함께, 캘린더 모듈(148)은 사용자 지시들에 따라 캘린더들 및 캘린더들과 연관된 데이터(예를 들어, 캘린더 엔트리들, 할 일 목록들 등)를 생성, 디스플레이, 수정, 및 저장하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the RF circuitry (108), the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), the text input module (134), the email client module (140), and the browser module (147), the calendar module (148) includes executable instructions that cause calendars and data associated with the calendars (e.g., calendar entries, to-do lists, etc.) to be created, displayed, modified, and stored in accordance with user instructions.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 모듈들(149)은 사용자에 의해 선택적으로 다운로드 및 사용되거나(예를 들어, 날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(149-3), 알람 시계 위젯(149-4) 및 사전 위젯(149-5)), 또는 사용자에 의해 생성되는(예를 들어, 사용자-생성 위젯(149-6)) 미니-애플리케이션들이다. 일부 실시예들에서, 위젯은 HTML(Hypertext Markup Language) 파일, CSS(Cascading Style Sheets) 파일 및 자바스크립트(JavaScript) 파일을 포함한다. 일부 실시예들에서, 위젯은 XML(Extensible Markup Language) 파일 및 자바스크립트 파일(예를 들어, 야후(Yahoo)! 위젯들)을 포함한다.Along with the RF circuitry (108), the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), the text input module (134), and the browser module (147), the widget modules (149) are mini-applications that are optionally downloaded and used by the user (e.g., the weather widget (149-1), the stock widget (149-2), the calculator widget (149-3), the alarm clock widget (149-4), and the dictionary widget (149-5)), or created by the user (e.g., the user-created widget (149-6)). In some embodiments, the widget includes a Hypertext Markup Language (HTML) file, a Cascading Style Sheets (CSS) file, and a JavaScript file. In some embodiments, the widget includes an Extensible Markup Language (XML) file and a JavaScript file (e.g., Yahoo! widgets).
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 생성기 모듈(150)은 선택적으로 사용자에 의해 위젯들을 생성(예를 들어, 웹 페이지의 사용자 특정 부분을 위젯으로 변경)하는 데 사용된다.In conjunction with the RF circuitry (108), touch screen (112), display controller (156), contact/motion module (130), graphics module (132), text input module (134), and browser module (147), a widget generator module (150) is optionally used to create widgets by the user (e.g., changing a user-specified portion of a web page into a widget).
터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 검색 모듈(151)은 사용자 지시들에 따라 하나 이상의 검색 기준들(예를 들어, 하나 이상의 사용자-특정 검색어들)에 매칭되는 메모리(102) 내의 텍스트, 음악, 사운드, 이미지, 비디오, 및/또는 다른 파일들을 검색하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), and the text input module (134), the search module (151) includes executable instructions that cause the memory (102) to search for text, music, sound, images, video, and/or other files that match one or more search criteria (e.g., one or more user-specific search terms) according to user instructions.
터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 오디오 회로부(110), 스피커(111), RF 회로부(108) 및 브라우저 모듈(147)과 함께, 비디오 및 음악 재생기 모듈(152)은, 사용자가 MP3 또는 AAC 파일들과 같은 하나 이상의 파일 포맷들로 저장된 레코딩된 음악 및 다른 사운드 파일들을 다운로드 및 재생할 수 있도록 하는 실행가능 명령어들, 및 비디오들을 (예를 들어, 터치 스크린(112) 상에서 또는 외부 포트(124)를 통해 외부의 연결된 디스플레이 상에서) 디스플레이하도록, 상영하도록, 또는 다른 방식으로 재생하도록 하는 실행가능 명령어들을 포함한다. 일부 실시예들에서, 디바이스(100)는 선택적으로 아이팟(애플 인크.의 상표)과 같은 MP3 재생기의 기능을 포함한다.In conjunction with the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), the audio circuitry (110), the speaker (111), the RF circuitry (108), and the browser module (147), the video and music player module (152) includes executable instructions that enable a user to download and play recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, and executable instructions that cause videos to be displayed, played, or otherwise played (e.g., on the touch screen (112) or on an externally connected display via the external port (124). In some embodiments, the device (100) optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).
터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 메모 모듈(153)은 사용자 지시들에 따라 메모들, 할 일 목록들 등을 생성 및 관리하도록 하는 실행가능 명령어들을 포함한다.In conjunction with the touch screen (112), display controller (156), contact/motion module (130), graphics module (132) and text input module (134), the memo module (153) includes executable instructions to create and manage memos, to-do lists, etc. according to user instructions.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 및 브라우저 모듈(147)과 함께, 지도 모듈(154)은 선택적으로 사용자 지시들에 따라 지도들 및 지도들과 연관된 데이터(예를 들어, 운전 방향들, 특정한 위치에 또는 그 부근의 상점들 및 다른 관심있는 지점들에 관한 데이터, 및 다른 위치-기반 데이터)를 수신하고, 디스플레이하고, 수정하고, 저장하는 데 사용된다.In conjunction with the RF circuitry (108), touch screen (112), display controller (156), contact/motion module (130), graphics module (132), text entry module (134), GPS module (135), and browser module (147), the map module (154) is optionally used to receive, display, modify, and store maps and data associated with the maps (e.g., driving directions, data regarding stores and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.
터치 스크린(112), 디스플레이 제어기(156), 접촉/모션 모듈(130), 그래픽 모듈(132), 오디오 회로부(110), 스피커(111), RF 회로부(108), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140) 및 브라우저 모듈(147)과 함께, 온라인 비디오 모듈(155)은, 사용자가 H.264와 같은 하나 이상의 파일 포맷들의 온라인 비디오들에 액세스하고, 그들을 브라우징하고, (예를 들어, 스트리밍 및/또는 다운로드에 의해) 수신하고, (예를 들어, 터치 스크린 상에서 또는 외부 포트(124)를 통해 외부의 연결된 디스플레이 상에서) 재생하고, 특정한 온라인 비디오로의 링크와 함께 이메일을 전송하고, 그렇지 않으면 관리하게 하는 명령어들을 포함한다. 일부 실시예들에서, 이메일 클라이언트 모듈(140)보다는 오히려 인스턴트 메시징 모듈(141)이 특정 온라인 비디오로의 링크를 전송하는 데 사용된다. 온라인 비디오 애플리케이션에 대한 부가적인 설명은, 2007년 6월 20일자로 출원된 미국 가특허 출원 제60/936,562호, "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos" 및 2007년 12월 31일자로 출원된 미국 특허 출원 제11/968,067호, "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos"에서 찾아볼 수 있으며, 이들의 내용은 이로써 그 전체가 참고로 본 명세서에 포함된다.In conjunction with the touch screen (112), the display controller (156), the contact/motion module (130), the graphics module (132), the audio circuitry (110), the speaker (111), the RF circuitry (108), the text input module (134), the email client module (140), and the browser module (147), the online video module (155) includes instructions that enable a user to access, browse, receive (e.g., by streaming and/or downloading), play (e.g., on the touch screen or on an external connected display via the external port (124), send an email with a link to a particular online video, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, an instant messaging module (141), rather than the email client module (140), is used to send a link to a particular online video. Additional descriptions of online video applications may be found in U.S. Provisional Patent Application No. 60/936,562, filed June 20, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos” and U.S. Patent Application No. 11/968,067, filed December 31, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos”, the contents of which are hereby incorporated herein by reference in their entireties.
위에서 식별된 모듈들 및 애플리케이션들 각각은 위에서 설명된 하나 이상의 기능들 및 본 출원에 설명되는 방법들(예를 들어, 본 명세서에 설명되는 컴퓨터 구현 방법들 및 다른 정보 프로세싱 방법들)을 수행하기 위한 실행가능 명령어들의 세트에 대응한다. 이들 모듈(예를 들어, 명령어들의 세트들)은 별개의 소프트웨어 프로그램들, 절차들 또는 모듈들로서 구현될 필요가 없으며, 따라서 이들 모듈의 다양한 서브세트들이 선택적으로 다양한 실시예들에서 조합되거나 그렇지 않으면 재배열된다. 예를 들어, 비디오 재생기 모듈은 선택적으로, 음악 재생기 모듈과 함께 단일 모듈(예를 들어, 도 1a의 비디오 및 음악 재생기 모듈(152)) 내에 조합된다. 일부 실시예들에서, 메모리(102)는 선택적으로, 위에서 식별된 모듈들 및 데이터 구조들의 서브세트를 저장한다. 더욱이, 메모리(102)는, 선택적으로, 위에서 설명되지 않은 부가적인 모듈들 및 데이터 구조들을 저장한다.Each of the modules and applications identified above corresponds to a set of executable instructions for performing one or more of the functions described above and the methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules may optionally be combined or otherwise rearranged in various embodiments. For example, a video player module may optionally be combined with a music player module into a single module (e.g., the video and music player module (152) of FIG. 1A ). In some embodiments, memory (102) optionally stores a subset of the modules and data structures identified above. Furthermore, memory (102) optionally stores additional modules and data structures not described above.
일부 실시예들에서, 디바이스(100)는 디바이스 상의 미리 정의된 세트의 기능들의 동작이 터치 스크린 및/또는 터치패드를 통해 전용으로 수행되는 디바이스이다. 터치 스크린 및/또는 터치패드를 디바이스(100)의 동작을 위한 주 입력 제어 디바이스로서 사용함으로써, 디바이스(100) 상의 (푸시 버튼들, 다이얼들 등과 같은) 물리적 입력 제어 디바이스들의 수가 선택적으로 감소된다.In some embodiments, the device (100) is a device in which operation of a predefined set of functions on the device is exclusively performed via a touch screen and/or a touchpad. By using the touch screen and/or the touchpad as the primary input control device for operation of the device (100), the number of physical input control devices (such as push buttons, dials, etc.) on the device (100) is optionally reduced.
전적으로 터치 스크린 및/또는 터치패드를 통해 수행되는 미리 정의된 세트의 기능들은, 선택적으로, 사용자 인터페이스들 간의 내비게이션을 포함한다. 일부 실시예들에서, 터치패드는, 사용자에 의해 터치될 때, 디바이스(100)를 디바이스(100) 상에 디스플레이되는 임의의 사용자 인터페이스로부터 메인, 홈 또는 루트 메뉴로 내비게이팅한다. 이러한 실시예들에서, "메뉴 버튼"이 터치 패드를 사용하여 구현된다. 일부 다른 실시예들에서, 메뉴 버튼은 터치패드 대신에 물리적 푸시 버튼 또는 다른 물리적 입력 제어 디바이스이다.A predefined set of functions performed entirely via the touch screen and/or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates the device (100) to a main, home, or root menu from any user interface displayed on the device (100). In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device instead of the touchpad.
도 1b는 일부 실시예들에 따른, 이벤트 처리를 위한 예시적인 컴포넌트들을 예시하는 블록도이다. 일부 실시예들에서, 메모리(도 1a의 102 또는 도 3의 370)는 (예를 들어, 운영 체제(126)에서의) 이벤트 분류기(170) 및 개개의 애플리케이션(136-1)(예를 들어, 전술된 애플리케이션들(137 내지 151, 155, 380 내지 390) 중 임의의 것)을 포함한다.FIG. 1B is a block diagram illustrating exemplary components for event processing, according to some embodiments. In some embodiments, a memory (102 of FIG. 1A or 370 of FIG. 3) includes an event classifier (170) (e.g., in an operating system (126)) and an individual application (136-1) (e.g., any of the applications (137-151, 155, 380-390) described above).
이벤트 분류기(170)는 이벤트 정보를 수신하고, 이벤트 정보를 전달할 애플리케이션(136-1), 및 애플리케이션(136-1)의 애플리케이션 뷰(191)를 결정한다. 이벤트 분류기(170)는 이벤트 모니터(171) 및 이벤트 디스패처 모듈(event dispatcher module)(174)을 포함한다. 일부 실시예들에서, 애플리케이션(136-1)은 애플리케이션이 활성이거나 실행 중일 때 터치 감응형 디스플레이(112) 상에서 디스플레이되는 현재 애플리케이션 뷰(들)를 표시하는 애플리케이션 내부 상태(192)를 포함한다. 일부 실시예들에서, 디바이스/글로벌 내부 상태(157)는 이벤트 분류기(170)에 의해 어느 애플리케이션(들)이 현재 활성인지 결정하는 데 사용되며, 애플리케이션 내부 상태(192)는 이벤트 분류기(170)에 의해 이벤트 정보를 전달할 애플리케이션 뷰들(191)을 결정하는 데 사용된다.An event classifier (170) receives event information and determines an application (136-1) to which the event information will be delivered, and an application view (191) of the application (136-1). The event classifier (170) includes an event monitor (171) and an event dispatcher module (174). In some embodiments, the application (136-1) includes an application internal state (192) that indicates the current application view(s) displayed on the touch-sensitive display (112) when the application is active or running. In some embodiments, the device/global internal state (157) is used by the event classifier (170) to determine which application(s) is currently active, and the application internal state (192) is used by the event classifier (170) to determine the application views (191) to which the event information will be delivered.
일부 실시예들에서, 애플리케이션 내부 상태(192)는 애플리케이션(136-1)이 실행을 재개할 때 사용될 재개 정보, 애플리케이션(136-1)에 의해 디스플레이되고 있거나 디스플레이될 준비가 된 정보를 표시하는 사용자 인터페이스 상태 정보, 사용자가 애플리케이션(136-1)의 이전 상태 또는 뷰로 되돌아가는 것을 가능하게 하기 위한 상태 큐(queue), 및 사용자에 의해 취해진 이전 액션들의 재실행(redo)/실행취소(undo) 큐 중 하나 이상과 같은 부가적인 정보를 포함한다.In some embodiments, the application internal state (192) includes additional information such as one or more of: resume information to be used when the application (136-1) resumes execution, user interface state information indicating information being displayed or ready to be displayed by the application (136-1), a state queue to enable a user to return to a previous state or view of the application (136-1), and a redo/undo queue of previous actions taken by the user.
이벤트 모니터(171)는 주변기기 인터페이스(118)로부터 이벤트 정보를 수신한다. 이벤트 정보는 서브이벤트(예를 들어, 다중 터치 제스처의 일부로서 터치 감응형 디스플레이(112) 상에서의 사용자 터치)에 대한 정보를 포함한다. 주변기기 인터페이스(118)는 I/O 서브시스템(106) 또는 센서, 예컨대, 근접 센서(166), 가속도계(들)(168), 및/또는 (오디오 회로부(110)를 통한) 마이크로폰(113)으로부터 수신하는 정보를 송신한다. 주변기기 인터페이스(118)가 I/O 서브시스템(106)으로부터 수신하는 정보는 터치 감응형 디스플레이(112) 또는 터치 감응형 표면으로부터의 정보를 포함한다.The event monitor (171) receives event information from the peripheral interface (118). The event information includes information about a sub-event (e.g., a user touch on the touch-sensitive display (112) as part of a multi-touch gesture). The peripheral interface (118) transmits information received from the I/O subsystem (106) or sensors, such as proximity sensors (166), accelerometer(s) (168), and/or microphones (113) (via the audio circuitry (110)). The information that the peripheral interface (118) receives from the I/O subsystem (106) includes information from the touch-sensitive display (112) or the touch-sensitive surface.
일부 실시예들에서, 이벤트 모니터(171)는 요청들을 미리 결정된 간격으로 주변기기 인터페이스(118)에 전송한다. 이에 응답하여, 주변기기 인터페이스(118)는 이벤트 정보를 송신한다. 다른 실시예들에서, 주변기기 인터페이스(118)는 중요한 이벤트(예를 들어, 미리 결정된 잡음 임계치를 초과하는 입력 및/또는 미리 결정된 지속기간 초과 동안의 입력을 수신하는 것)가 있을 때에만 이벤트 정보를 송신한다.In some embodiments, the event monitor (171) transmits requests to the peripheral interface (118) at predetermined intervals. In response, the peripheral interface (118) transmits event information. In other embodiments, the peripheral interface (118) transmits event information only when there is a significant event (e.g., receiving input exceeding a predetermined noise threshold and/or input for more than a predetermined duration).
일부 실시예들에서, 이벤트 분류기(170)는 또한 히트 뷰(hit view) 결정 모듈(172) 및/또는 활성 이벤트 인식기 결정 모듈(173)을 포함한다.In some embodiments, the event classifier (170) also includes a hit view determination module (172) and/or an active event recognizer determination module (173).
히트 뷰 결정 모듈(172)은 터치 감응형 디스플레이(112)가 하나 초과의 뷰를 디스플레이할 때 하나 이상의 뷰들 내에서 서브이벤트가 발생한 곳을 결정하기 위한 소프트웨어 절차들을 제공한다. 뷰들은 사용자가 디스플레이 상에서 볼 수 있는 제어부들 및 다른 요소들로 구성된다.The hit view determination module (172) provides software procedures for determining where a sub-event occurred within one or more views when the touch-sensitive display (112) displays more than one view. The views consist of controls and other elements that a user can see on the display.
애플리케이션과 연관된 사용자 인터페이스의 다른 양태는 본 명세서에서 때때로 애플리케이션 뷰들 또는 사용자 인터페이스 윈도우(user interface window)들로 지칭되는 뷰들의 세트이며, 여기서 정보가 디스플레이되고 터치 기반 제스처가 발생한다. 터치가 검출되는 (개개의 애플리케이션의) 애플리케이션 뷰들은 선택적으로 애플리케이션의 프로그램 또는 뷰 계층구조 내의 프로그램 레벨들에 대응한다. 예를 들어, 터치가 검출되는 최하위 레벨의 뷰는 선택적으로 히트 뷰로 지칭되고, 적절한 입력들로서 인식되는 이벤트들의 세트는, 선택적으로, 터치 기반 제스처를 시작하는 초기 터치의 히트 뷰에 적어도 부분적으로 기초하여 결정된다.Another aspect of the user interface associated with the application is a set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of an individual application) in which touches are detected optionally correspond to programmatic levels within the application's program or view hierarchy. For example, the lowest level view in which a touch is detected is optionally referred to as a hit view, and the set of events that are recognized as appropriate inputs are optionally determined based at least in part on the hit view of the initial touch that initiates the touch-based gesture.
히트 뷰 결정 모듈(172)은 터치 기반 제스처의 서브이벤트들과 관련된 정보를 수신한다. 애플리케이션이 계층구조에서 조직화된 다수의 뷰들을 가질 때, 히트 뷰 결정 모듈(172)은 히트 뷰를, 서브이벤트를 처리해야 하는 계층구조 내의 최하위 뷰로서 식별한다. 대부분의 상황들에서, 히트 뷰는 개시되는 서브이벤트(예를 들어, 이벤트 또는 잠재적 이벤트를 형성하는 서브이벤트들의 시퀀스에서의 제1 서브이벤트)가 발생하는 최하위 레벨 뷰이다. 일단 히트 뷰가 히트 뷰 결정 모듈(172)에 의해 식별되면, 히트 뷰는 전형적으로 그것이 히트 뷰로서 식별되게 한 것과 동일한 터치 또는 입력 소스와 관련된 모든 서브이벤트들을 수신한다.The hit view determination module (172) receives information related to sub-events of a touch-based gesture. When an application has multiple views organized in a hierarchy, the hit view determination module (172) identifies a hit view as the lowest level view in the hierarchy that should process a sub-event. In most situations, the hit view is the lowest level view in which an initiating sub-event occurs (e.g., the first sub-event in a sequence of sub-events forming an event or potential event). Once a hit view is identified by the hit view determination module (172), the hit view typically receives all sub-events associated with the same touch or input source that caused it to be identified as the hit view.
활성 이벤트 인식기 결정 모듈(173)은 뷰 계층구조 내에서 어느 뷰 또는 뷰들이 서브이벤트들의 특정 시퀀스를 수신해야 하는지를 결정한다. 일부 실시예들에서, 활성 이벤트 인식기 결정 모듈(173)은 히트 뷰만이 서브이벤트들의 특정 시퀀스를 수신해야 하는 것으로 결정한다. 다른 실시예들에서, 활성 이벤트 인식기 결정 모듈(173)은 서브이벤트의 물리적 위치를 포함하는 모든 뷰들이 적극 참여 뷰(actively involved view)들인 것으로 결정하고, 그에 따라 모든 적극 참여 뷰들이 서브이벤트들의 특정 시퀀스를 수신해야 하는 것으로 결정한다. 다른 실시예들에서, 터치 서브이벤트들이 전적으로 하나의 특정 뷰와 연관된 영역으로 한정되었더라도, 계층구조 내의 상위 뷰들은 여전히 적극 참여 뷰들로서 유지될 것이다.The active event recognizer determination module (173) determines which view or views within the view hierarchy should receive a particular sequence of sub-events. In some embodiments, the active event recognizer determination module (173) determines that only the hit view should receive the particular sequence of sub-events. In other embodiments, the active event recognizer determination module (173) determines that all views that include the physical location of the sub-event are actively involved views, and thus all actively involved views should receive the particular sequence of sub-events. In other embodiments, even if the touch sub-events are confined entirely to a region associated with a particular view, the higher views within the hierarchy will still remain as actively involved views.
이벤트 디스패처 모듈(174)은 이벤트 정보를 이벤트 인식기(예를 들어, 이벤트 인식기(180))로 디스패치한다. 활성 이벤트 인식기 결정 모듈(173)을 포함하는 실시예들에서, 이벤트 디스패처 모듈(174)은 이벤트 정보를 활성 이벤트 인식기 결정 모듈(173)에 의해 결정된 이벤트 인식기에 전달한다. 일부 실시예들에서, 이벤트 디스패처 모듈(174)은 이벤트 큐 내에 이벤트 정보를 저장하는데, 이벤트 정보는 개개의 이벤트 수신기(182)에 의해 인출된다.The event dispatcher module (174) dispatches event information to an event recognizer (e.g., an event recognizer (180)). In embodiments that include an active event recognizer determination module (173), the event dispatcher module (174) passes the event information to the event recognizer determined by the active event recognizer determination module (173). In some embodiments, the event dispatcher module (174) stores the event information in an event queue, from which the event information is retrieved by individual event receivers (182).
일부 실시예들에서, 운영 체제(126)는 이벤트 분류기(170)를 포함한다. 대안적으로, 애플리케이션(136-1)은 이벤트 분류기(170)를 포함한다. 또 다른 실시예들에서, 이벤트 분류기(170)는 독립형 모듈이거나, 또는 접촉/모션 모듈(130)과 같이 메모리(102)에 저장되는 다른 모듈의 일부이다.In some embodiments, the operating system (126) includes the event classifier (170). Alternatively, the application (136-1) includes the event classifier (170). In still other embodiments, the event classifier (170) is a standalone module or is part of another module stored in memory (102), such as the contact/motion module (130).
일부 실시예들에서, 애플리케이션(136-1)은 복수의 이벤트 핸들러들(190) 및 하나 이상의 애플리케이션 뷰들(191)을 포함하며, 이들의 각각은 애플리케이션의 사용자 인터페이스의 개개의 뷰 내에서 발생하는 터치 이벤트들을 처리하기 위한 명령어들을 포함한다. 애플리케이션(136-1)의 각각의 애플리케이션 뷰(191)는 하나 이상의 이벤트 인식기들(180)을 포함한다. 전형적으로, 개개의 애플리케이션 뷰(191)는 복수의 이벤트 인식기들(180)을 포함한다. 다른 실시예들에서, 이벤트 인식기들(180) 중 하나 이상은 사용자 인터페이스 키트(도시되지 않음) 또는 애플리케이션(136-1)이 방법들 및 다른 속성들을 물려받는 상위 레벨 객체와 같은 별개의 모듈의 일부이다. 일부 실시예들에서, 개개의 이벤트 핸들러(190)는 데이터 업데이터(176), 객체 업데이터(177), GUI 업데이터(178), 및/또는 이벤트 분류기(170)로부터 수신된 이벤트 데이터(179) 중 하나 이상을 포함한다. 이벤트 핸들러(190)는 선택적으로 데이터 업데이터(176), 객체 업데이터(177) 또는 GUI 업데이터(178)를 이용하거나 호출하여 애플리케이션 내부 상태(192)를 업데이트한다. 대안적으로, 애플리케이션 뷰들(191) 중 하나 이상은 하나 이상의 개개의 이벤트 핸들러들(190)을 포함한다. 또한, 일부 실시예들에서, 데이터 업데이터(176), 객체 업데이터(177), 및 GUI 업데이터(178) 중 하나 이상은 개개의 애플리케이션 뷰(191) 내에 포함된다.In some embodiments, the application (136-1) includes a plurality of event handlers (190) and one or more application views (191), each of which includes instructions for processing touch events that occur within a respective view of the application's user interface. Each application view (191) of the application (136-1) includes one or more event recognizers (180). Typically, an individual application view (191) includes a plurality of event recognizers (180). In other embodiments, one or more of the event recognizers (180) are part of a separate module, such as a user interface kit (not shown) or a higher level object from which the application (136-1) inherits methods and other properties. In some embodiments, an individual event handler (190) includes one or more of the following: a data updater (176), an object updater (177), a GUI updater (178), and/or an event classifier (170). The event handler (190) optionally updates the application internal state (192) by utilizing or calling a data updater (176), an object updater (177), or a GUI updater (178). Alternatively, one or more of the application views (191) include one or more individual event handlers (190). Additionally, in some embodiments, one or more of the data updater (176), the object updater (177), and the GUI updater (178) are included within an individual application view (191).
개개의 이벤트 인식기(180)는 이벤트 분류기(170)로부터 이벤트 정보(예를 들어, 이벤트 데이터(179))를 수신하고 그 이벤트 정보로부터 이벤트를 식별한다. 이벤트 인식기(180)는 이벤트 수신기(182) 및 이벤트 비교기(184)를 포함한다. 일부 실시예들에서, 이벤트 인식기(180)는 또한 적어도 메타데이터(183) 및 이벤트 전달 명령어들(188)(선택적으로 서브이벤트 전달 명령어들을 포함함)의 서브세트를 포함한다.An individual event recognizer (180) receives event information (e.g., event data (179)) from an event classifier (170) and identifies an event from the event information. The event recognizer (180) includes an event receiver (182) and an event comparator (184). In some embodiments, the event recognizer (180) also includes at least a subset of metadata (183) and event delivery instructions (188) (optionally including sub-event delivery instructions).
이벤트 수신기(182)는 이벤트 분류기(170)로부터 이벤트 정보를 수신한다. 이벤트 정보는 서브이벤트, 예를 들어 터치 또는 터치 이동에 관한 정보를 포함한다. 서브이벤트에 의존하여, 이벤트 정보는 또한 서브이벤트의 위치와 같은 부가적인 정보를 포함한다. 서브이벤트가 터치의 모션과 관련될 때, 이벤트 정보는 또한 선택적으로 서브이벤트의 속력 및 방향을 포함한다. 일부 실시예들에서, 이벤트들은 하나의 배향으로부터 다른 배향으로(예를 들어, 세로 배향으로부터 가로 배향으로, 또는 그 반대로)의 디바이스의 회전을 포함하며, 이벤트 정보는 디바이스의 현재 배향(디바이스 자세로 또한 지칭됨)에 관한 대응하는 정보를 포함한다.The event receiver (182) receives event information from the event classifier (170). The event information includes information about a sub-event, for example, a touch or a touch movement. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. When the sub-event relates to the motion of a touch, the event information optionally also includes speed and direction of the sub-event. In some embodiments, the events include rotation of the device from one orientation to another (e.g., from a portrait orientation to a landscape orientation, or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device pose).
이벤트 비교기(184)는 이벤트 정보를 미리 정의된 이벤트 또는 서브이벤트 정의들과 비교하고, 그 비교에 기초하여, 이벤트 또는 서브이벤트를 결정하거나, 이벤트 또는 서브이벤트의 상태를 결정 또는 업데이트한다. 일부 실시예들에서, 이벤트 비교기(184)는 이벤트 정의들(186)을 포함한다. 이벤트 정의들(186)은 이벤트들(예를 들어, 서브이벤트들의 미리 정의된 시퀀스들), 예를 들어 이벤트 1(187-1), 이벤트 2(187-2) 등의 정의들을 포함한다. 일부 실시예들에서, 이벤트(187) 내의 서브이벤트들은, 예를 들어, 터치 시작, 터치 종료, 터치 이동, 터치 취소, 및 다중 터치를 포함한다. 일 예에서, 이벤트 1(187-1)에 대한 정의는 디스플레이된 객체 상에의 더블 탭이다. 더블 탭은, 예를 들어, 미리 결정된 페이즈(phase) 동안의 디스플레이된 객체 상의 제1 터치(터치 시작), 미리 결정된 페이즈 동안의 제1 리프트오프(터치 종료), 미리 결정된 페이즈 동안의 디스플레이된 객체 상의 제2 터치(터치 시작), 및 미리 결정된 페이즈 동안의 제2 리프트오프(터치 종료)를 포함한다. 다른 예에서, 이벤트 2(187-2)에 대한 정의는 디스플레이된 객체 상에서의 드래깅이다. 드래깅은, 예를 들어, 미리 결정된 페이즈 동안의 디스플레이된 객체 상의 터치(또는 접촉), 터치 감응형 디스플레이(112)를 가로지르는 터치의 움직임, 및 터치의 리프트오프(터치 종료)를 포함한다. 일부 실시예들에서, 이벤트는 또한 하나 이상의 연관된 이벤트 핸들러들(190)에 대한 정보를 포함한다.An event comparator (184) compares event information with predefined event or sub-event definitions and, based on the comparison, determines an event or sub-event, or determines or updates a status of an event or sub-event. In some embodiments, the event comparator (184) includes event definitions (186). The event definitions (186) include definitions of events (e.g., predefined sequences of sub-events), for example, Event 1 (187-1), Event 2 (187-2), etc. In some embodiments, the sub-events within an event (187) include, for example, Touch Start, Touch End, Touch Move, Touch Cancel, and Multi-Touch. In one example, a definition for Event 1 (187-1) is a double tap on a displayed object. A double tap includes, for example, a first touch (touch start) on the displayed object during a predetermined phase, a first liftoff (touch end) on the displayed object during the predetermined phase, a second touch (touch start) on the displayed object during the predetermined phase, and a second liftoff (touch end) on the displayed object during the predetermined phase. In another example, the definition for event 2 (187-2) is dragging on the displayed object. Dragging includes, for example, a touch (or contact) on the displayed object during a predetermined phase, movement of the touch across the touch-sensitive display (112), and a liftoff (touch end) of the touch. In some embodiments, the event also includes information about one or more associated event handlers (190).
일부 실시예들에서, 이벤트 정의(187)는 개개의 사용자 인터페이스 객체에 대한 이벤트의 정의를 포함한다. 일부 실시예들에서, 이벤트 비교기(184)는 어느 사용자 인터페이스 객체가 서브이벤트와 연관되는지 결정하도록 히트 테스트(hit test)를 수행한다. 예를 들어, 3개의 사용자 인터페이스 객체들이 터치 감응형 디스플레이(112) 상에 디스플레이된 애플리케이션 뷰에서, 터치 감응형 디스플레이(112) 상에서 터치가 검출될 때, 이벤트 비교기(184)는 3개의 사용자 인터페이스 객체들 중 어느 것이 터치(서브이벤트)와 연관되어 있는지를 결정하도록 히트 테스트를 수행한다. 각각의 디스플레이된 객체가 개개의 이벤트 핸들러(190)와 연관되면, 이벤트 비교기는 어느 이벤트 핸들러(190)가 활성화되어야 하는지 결정하기 위해 히트 테스트의 결과를 사용한다. 예를 들어, 이벤트 비교기(184)는 히트 테스트를 트리거하는 객체 및 서브-이벤트와 연관된 이벤트 핸들러를 선택한다.In some embodiments, the event definition (187) includes definitions of events for individual user interface objects. In some embodiments, the event comparator (184) performs a hit test to determine which user interface object is associated with the sub-event. For example, in an application view where three user interface objects are displayed on a touch-sensitive display (112), when a touch is detected on the touch-sensitive display (112), the event comparator (184) performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a respective event handler (190), the event comparator uses the results of the hit test to determine which event handler (190) should be activated. For example, the event comparator (184) selects the object that triggers the hit test and the event handler associated with the sub-event.
일부 실시예들에서, 개개의 이벤트(187)에 대한 정의는 또한 서브이벤트들의 시퀀스가 이벤트 인식기의 이벤트 유형에 대응하는지 또는 대응하지 않는지가 결정된 이후까지 이벤트 정보의 전달을 지연시키는 지연된 액션들을 포함한다.In some embodiments, the definition for an individual event (187) also includes delayed actions that delay delivery of event information until after it has been determined whether the sequence of sub-events corresponds to or does not correspond to an event type of the event recognizer.
개개의 이벤트 인식기(180)가 일련의 서브이벤트들이 이벤트 정의들(186) 내의 이벤트들 중 어떠한 것과도 매칭되지 않는다고 결정할 때, 개개의 이벤트 인식기(180)는 이벤트 불가능, 이벤트 실패, 또는 이벤트 종료 상태로 진입하고, 그 후 개개의 이벤트 인식기는 터치 기반 제스처의 후속적인 서브이벤트들을 무시한다. 이러한 상황에서, 만일 있다면, 히트 뷰에 대해 활성 상태로 유지되는 다른 이벤트 인식기들이 진행 중인 터치 기반 제스처의 서브이벤트들을 계속해서 추적 및 프로세싱한다.When an individual event recognizer (180) determines that a series of sub-events do not match any of the events within the event definitions (186), the individual event recognizer (180) enters an event not possible, event failed, or event ended state, and the individual event recognizer then ignores subsequent sub-events of the touch-based gesture. In this situation, other event recognizers, if any, that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.
일부 실시예들에서, 개개의 이벤트 인식기(180)는 이벤트 전달 시스템이 어떻게 적극 참여 이벤트 인식기들로의 서브이벤트 전달을 수행해야 하는지를 표시하는 구성가능한 속성들, 플래그들, 및/또는 목록들을 갖는 메타데이터(183)를 포함한다. 일부 실시예들에서, 메타데이터(183)는 이벤트 인식기들이 어떻게 서로 상호작용하는지, 또는 상호작용하게 되는지를 표시하는 구성가능한 속성들, 플래그들, 및/또는 목록들을 포함한다. 일부 실시예들에서, 메타데이터(183)는, 서브이벤트들이 뷰 또는 프로그램 계층구조에서의 다양한 레벨들에 전달되는지 여부를 표시하는 구성가능한 속성들, 플래그들, 및/또는 목록들을 포함한다.In some embodiments, individual event recognizers (180) include metadata (183) having configurable properties, flags, and/or lists that indicate how the event delivery system should perform sub-event delivery to the actively participating event recognizers. In some embodiments, metadata (183) includes configurable properties, flags, and/or lists that indicate how the event recognizers interact, or are caused to interact, with each other. In some embodiments, metadata (183) includes configurable properties, flags, and/or lists that indicate whether sub-events are delivered to various levels in a view or program hierarchy.
일부 실시예들에서, 개개의 이벤트 인식기(180)는 이벤트의 하나 이상의 특정 서브이벤트들이 인식될 때 이벤트와 연관된 이벤트 핸들러(190)를 활성화시킨다. 일부 실시예들에서, 개개의 이벤트 인식기(180)는 이벤트와 연관된 이벤트 정보를 이벤트 핸들러(190)에 전달한다. 이벤트 핸들러(190)를 활성화시키는 것은 각각의 히트 뷰에 서브이벤트들을 전송(및 지연 전송)하는 것과는 별개이다. 일부 실시예들에서, 이벤트 인식기(180)는 인식된 이벤트와 연관된 플래그를 보내고, 그 플래그와 연관된 이벤트 핸들러(190)는 그 플래그를 캐치하고 미리 정의된 프로세스를 수행한다.In some embodiments, an individual event recognizer (180) activates an event handler (190) associated with an event when one or more specific sub-events of the event are recognized. In some embodiments, an individual event recognizer (180) passes event information associated with the event to the event handler (190). Activating the event handler (190) is separate from sending (and delaying sending) the sub-events to each hit view. In some embodiments, an event recognizer (180) sends a flag associated with a recognized event, and an event handler (190) associated with that flag catches the flag and performs a predefined process.
일부 실시예들에서, 이벤트 전달 명령어들(188)은 이벤트 핸들러를 활성화시키지 않으면서 서브이벤트에 관한 이벤트 정보를 전달하는 서브이벤트 전달 명령어들을 포함한다. 대신에, 서브이벤트 전달 명령어들은 일련의 서브이벤트들과 연관된 이벤트 핸들러들에 또는 적극 참여 뷰들에 이벤트 정보를 전달한다. 일련의 서브이벤트들 또는 적극 참여 뷰들과 연관된 이벤트 핸들러들은 이벤트 정보를 수신하고 미리 결정된 프로세스를 수행한다.In some embodiments, the event delivery commands (188) include sub-event delivery commands that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery commands deliver event information to event handlers associated with a series of sub-events or to actively participating views. The event handlers associated with the series of sub-events or actively participating views receive the event information and perform predetermined processing.
일부 실시예들에서, 데이터 업데이터(176)는 애플리케이션(136-1)에서 사용되는 데이터를 생성 및 업데이트한다. 예를 들어, 데이터 업데이터(176)는 연락처 모듈(137)에서 사용되는 전화번호를 업데이트하거나, 비디오 재생기 모듈에서 사용되는 비디오 파일을 저장한다. 일부 실시예들에서, 객체 업데이터(177)는 애플리케이션(136-1)에서 사용되는 객체들을 생성 및 업데이트한다. 예를 들어, 객체 업데이터(177)는 새로운 사용자 인터페이스 객체를 생성하거나, 또는 사용자 인터페이스 객체의 위치를 업데이트한다. GUI 업데이터(178)는 GUI를 업데이트한다. 예를 들어, GUI 업데이터(178)는 터치 감응형 디스플레이 상의 디스플레이를 위해 디스플레이 정보를 준비하고 이를 그래픽 모듈(132)에 전송한다.In some embodiments, the data updater (176) creates and updates data used in the application (136-1). For example, the data updater (176) updates a phone number used in the contact module (137) or stores a video file used in the video player module. In some embodiments, the object updater (177) creates and updates objects used in the application (136-1). For example, the object updater (177) creates a new user interface object or updates the location of a user interface object. The GUI updater (178) updates the GUI. For example, the GUI updater (178) prepares display information for display on a touch-sensitive display and transmits it to the graphics module (132).
일부 실시예들에서, 이벤트 핸들러(들)(190)는 데이터 업데이터(176), 객체 업데이터(177), 및 GUI 업데이터(178)를 포함하거나 이들에 액세스한다. 일부 실시예들에서, 데이터 업데이터(176), 객체 업데이터(177), 및 GUI 업데이터(178)는 개개의 애플리케이션(136-1) 또는 애플리케이션 뷰(191)의 단일 모듈 내에 포함된다. 다른 실시예들에서, 이들은 2개 이상의 소프트웨어 모듈들 내에 포함된다.In some embodiments, the event handler(s) (190) include or access a data updater (176), an object updater (177), and a GUI updater (178). In some embodiments, the data updater (176), the object updater (177), and the GUI updater (178) are contained within a single module of an individual application (136-1) or application view (191). In other embodiments, they are contained within two or more software modules.
터치 감응형 디스플레이 상의 사용자 터치들의 이벤트 처리에 관하여 전술한 논의는 또한 입력 디바이스들을 갖는 다기능 디바이스들(100)을 동작시키기 위한 다른 형태들의 사용자 입력들에도 적용되지만, 그 모두가 터치 스크린들 상에서 개시되는 것이 아니라는 것을 이해해야 한다. 예를 들어, 단일 또는 다수의 키보드 누르기 또는 유지(hold)와 선택적으로 조화된 마우스 이동 및 마우스 버튼 누르기; 터치패드 상에서의, 탭, 드래그, 스크롤 등과 같은 접촉 이동들; 펜 스타일러스 입력들; 디바이스의 이동; 구두 명령어들; 검출된 눈 이동들; 생체측정 입력들; 및/또는 이들의 임의의 조합은, 인식될 이벤트를 정의하는 서브이벤트들에 대응하는 입력들로서 선택적으로 이용된다.The above discussion of event processing of user touches on a touch-sensitive display also applies to other forms of user input for operating multifunction devices (100) having input devices, although it should be understood that not all of them are initiated on touch screens. For example, mouse movements and mouse button presses, optionally in combination with single or multiple keyboard presses or holds; contact movements such as taps, drags, scrolls, etc. on a touchpad; pen stylus inputs; movement of the device; spoken commands; detected eye movements; biometric inputs; and/or any combination thereof, are optionally utilized as inputs corresponding to sub-events defining an event to be recognized.
도 2는 일부 실시예들에 따른, 터치 스크린(112)을 갖는 휴대용 다기능 디바이스(100)를 도시한다. 터치 스크린은, 선택적으로, 사용자 인터페이스(UI)(200) 내에서 하나 이상의 그래픽들을 디스플레이한다. 이러한 실시예 뿐만 아니라 아래에서 설명되는 다른 실시예들에서, 사용자는, 예를 들어, 하나 이상의 손가락들(202)(도면에서 축척대로 도시되지 않음) 또는 하나 이상의 스타일러스들(203)(도면에서 축척대로 도시되지 않음)을 이용하여 그래픽들 상에서 제스처를 행함으로써 그래픽들 중 하나 이상을 선택하는 것이 가능하게 된다. 일부 실시예들에서, 하나 이상의 그래픽들의 선택은 사용자가 하나 이상의 그래픽들과의 접촉을 중단할 때 발생한다. 일부 실시예들에서, 제스처는 선택적으로 디바이스(100)와 접촉한 손가락의 하나 이상의 탭들, (좌에서 우로, 우에서 좌로, 위로 및/또는 아래로의) 하나 이상의 스와이프들, 및/또는 (우에서 좌로, 좌에서 우로, 위로 및/또는 아래로의) 롤링을 포함한다. 일부 구현예들 또는 상황들에서, 그래픽과 부주의하여 접촉되면 그 그래픽은 선택되지 않는다. 예를 들어, 선택에 대응하는 제스처가 탭일 때, 애플리케이션 아이콘 위를 스윕(sweep)하는 스와이프 제스처는 선택적으로, 대응하는 애플리케이션을 선택하지 않는다.FIG. 2 illustrates a portable multifunction device (100) having a touch screen (112), according to some embodiments. The touch screen optionally displays one or more graphics within a user interface (UI) (200). In this embodiment, as well as others described below, a user is enabled to select one or more of the graphics by making a gesture over the graphics, for example, using one or more fingers (202) (not drawn to scale in the drawing) or one or more styli (203) (not drawn to scale in the drawing). In some embodiments, selection of the one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, up, and/or down), and/or a roll (right to left, left to right, up, and/or down) of a finger in contact with the device (100). In some implementations or situations, inadvertent contact with a graphic does not select the graphic. For example, a swipe gesture that sweeps over an application icon when the corresponding gesture for selection is a tap does not optionally select the corresponding application.
일부 실시예들에서, 스타일러스(203)는 활성 디바이스이고, 하나 이상의 전자 회로부를 포함한다. 예를 들어, 스타일러스(203)는 하나 이상의 센서들, 및 하나 이상의 통신 회로부(예컨대, 통신 모듈(128) 및/또는 RF 회로부(108))를 포함한다. 일부 실시예들에서, 스타일러스(203)는 하나 이상의 프로세서들 및 전력 시스템들(예를 들어, 전력 시스템(162)과 유사함)을 포함한다. 일부 실시예들에서, 스타일러스(203)는 가속도계(예컨대 가속도계(168)), 자력계, 및/또는 자이로스코프를 포함하며, 이는 스타일러스(203)의 포지션, 각도, 위치, 및/또는 (예를 들어, 스타일러스가 내려 놓여져 있는지 여부, 디바이스를 향해 기울어져 있는지 아니면 디바이스로부터 멀리 기울어져 있는지 여부, 그리고/또는 디바이스 가까이에 있는지 아니면 디바이스로부터 멀리 있는지 여부와 같은) 다른 물리적 특성들을 결정할 수 있다. 일부 실시예들에서, 스타일러스(203)는 (예를 들어, 블루투스와 같은 무선 통신 프로토콜을 통해, 통신 회로부를 경유하여) 전자 디바이스와 통신하고, 센서 데이터를 전자 디바이스로 송신한다. 일부 실시예들에서, 스타일러스(203)는 (예를 들어, 가속도계 또는 다른 센서들을 통해) 사용자가 디바이스를 쥐고 있는지 여부를 결정할 수 있다. 일부 실시예들에서, 스타일러스(203)는 사용자로부터 스타일러스(203) 상에서의 탭 입력들(예를 들어, 단일 탭 또는 더블 탭)(예를 들어, 가속도계 또는 다른 센서들에 의해 수신됨)을 수용할 수 있고, 입력을 일정 기능을 수행하거나 상이한 입력 모드로 변경하라는 커맨드 또는 요청으로서 해석할 수 있다.In some embodiments, the stylus (203) is an active device and includes one or more electronic circuitry. For example, the stylus (203) includes one or more sensors, and one or more communication circuitry (e.g., the communication module (128) and/or the RF circuitry (108)). In some embodiments, the stylus (203) includes one or more processors and power systems (e.g., similar to the power system (162)). In some embodiments, the stylus (203) includes an accelerometer (e.g., the accelerometer (168)), a magnetometer, and/or a gyroscope, which can determine the position, angle, location, and/or other physical characteristics of the stylus (203) (e.g., whether the stylus is lying down, tilted toward or away from the device, and/or close to or away from the device). In some embodiments, the stylus (203) communicates with the electronic device (e.g., via a wireless communication protocol such as Bluetooth, via communication circuitry) and transmits sensor data to the electronic device. In some embodiments, the stylus (203) may determine whether the user is holding the device (e.g., via an accelerometer or other sensors). In some embodiments, the stylus (203) may accept tap inputs (e.g., a single tap or a double tap) on the stylus (203) from the user (e.g., received by an accelerometer or other sensors) and may interpret the input as a command or request to perform a function or change to a different input mode.
디바이스(100)는 또한 선택적으로 "홈" 또는 메뉴 버튼(204)과 같은 하나 이상의 물리적 버튼들을 포함한다. 이전에 설명된 바와 같이, 메뉴 버튼(204)은 선택적으로, 디바이스(100) 상에서 선택적으로 실행되는 애플리케이션들의 세트 내의 임의의 애플리케이션(136)으로 내비게이팅하는 데 사용된다. 대안적으로, 일부 실시예들에서, 메뉴 버튼은 터치 스크린(112) 상에 디스플레이된 GUI에서 소프트 키로서 구현된다.The device (100) also optionally includes one or more physical buttons, such as a “home” or menu button (204). As previously described, the menu button (204) is optionally used to navigate to any application (136) within the set of applications optionally running on the device (100). Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touch screen (112).
일부 실시예들에서, 디바이스(100)는 터치 스크린(112), 메뉴 버튼(204), 디바이스의 전원을 온/오프하고 디바이스를 잠그기 위한 푸시 버튼(206), 음량 조절 버튼(들)(208), 가입자 식별 모듈(SIM) 카드 슬롯(210), 헤드셋 잭(212), 및 도킹/충전 외부 포트(124)를 포함한다. 푸시 버튼(206)은, 선택적으로, 버튼을 누르고 버튼을 미리 정의된 시간 간격 동안 누른 상태로 유지함으로써 디바이스의 전원을 온/오프시키고; 버튼을 누르고 미리 정의된 시간 간격이 경과하기 전에 버튼을 누름해제함으로써 디바이스를 잠그고; 그리고/또는 디바이스를 잠금해제하거나 잠금해제 프로세스를 개시하는 데 사용된다. 대안적인 실시예에서, 디바이스(100)는 또한 마이크로폰(113)을 통해 일부 기능들의 활성화 또는 비활성화를 위한 구두 입력을 수용한다. 디바이스(100)는 또한, 선택적으로, 터치 스크린(112) 상에서의 접촉들의 세기를 검출하기 위한 하나 이상의 접촉 세기 센서들(165) 및/또는 디바이스(100)의 사용자를 위해 촉각적 출력들을 생성하기 위한 하나 이상의 촉각적 출력 생성기들(167)을 포함한다.In some embodiments, the device (100) includes a touch screen (112), a menu button (204), a push button (206) to power the device on/off and lock the device, volume control button(s) (208), a subscriber identity module (SIM) card slot (210), a headset jack (212), and a docking/charging external port (124). The push button (206) is optionally used to power the device on/off by pressing the button and holding it pressed for a predefined time interval; to lock the device by pressing the button and releasing the button before the predefined time interval has elapsed; and/or to unlock the device or initiate an unlocking process. In an alternative embodiment, the device (100) also accepts verbal input via the microphone (113) to activate or deactivate certain features. The device (100) also optionally includes one or more contact intensity sensors (165) for detecting the intensity of contacts on the touch screen (112) and/or one or more tactile output generators (167) for generating tactile outputs for a user of the device (100).
도 3은 일부 실시예들에 따른, 디스플레이 및 터치 감응형 표면을 갖는 예시적인 다기능 디바이스의 블록도이다. 디바이스(300)가 휴대용일 필요는 없다. 일부 실시예들에서, 디바이스(300)는, 랩톱 컴퓨터, 데스크톱 컴퓨터, 태블릿 컴퓨터, 멀티미디어 재생기 디바이스, 내비게이션 디바이스, (어린이 학습 장난감과 같은) 교육용 디바이스, 게이밍 시스템, 또는 제어 디바이스(예를 들어, 가정용 또는 산업용 제어기)이다. 디바이스(300)는 전형적으로 하나 이상의 프로세싱 유닛(CPU)들(310), 하나 이상의 네트워크 또는 다른 통신 인터페이스들(360), 메모리(370), 및 이들 컴포넌트들을 상호연결시키기 위한 하나 이상의 통신 버스들(320)을 포함한다. 통신 버스들(320)은, 선택적으로, 시스템 컴포넌트들을 상호연결시키고 이들 사이의 통신들을 제어하는 회로부(때때로 칩셋으로 지칭됨)를 포함한다. 디바이스(300)는 전형적으로 터치 스크린 디스플레이인 디스플레이(340)를 포함하는 입력/출력(I/O) 인터페이스(330)를 포함한다. I/O 인터페이스(330)는 또한, 선택적으로, 키보드 및/또는 마우스(또는 다른 포인팅 디바이스)(350) 및 터치패드(355), 디바이스(300) 상에 촉각적 출력들을 생성하기 위한 촉각적 출력 생성기(357)(예를 들어, 도 1a를 참조하여 위에서 설명된 촉각적 출력 생성기(들)(167)와 유사함), 및 센서들(359)(예를 들어, 도 1a를 참조하여 위에서 설명된 접촉 세기 센서(들)(165)와 유사한 광 센서, 가속도 센서, 근접 센서, 터치 감응형 센서, 및/또는 접촉 세기 센서)을 포함한다. 메모리(370)는 DRAM, SRAM, DDR RAM 또는 다른 랜덤 액세스 솔리드 스테이트 메모리 디바이스들과 같은 고속 랜덤 액세스 메모리를 포함하며; 선택적으로 하나 이상의 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 다른 비휘발성 솔리드 스테이트 저장 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리(370)는 선택적으로 CPU(들)(310)로부터 원격으로 위치된 하나 이상의 저장 디바이스들을 포함한다. 일부 실시예들에서, 메모리(370)는 휴대용 다기능 디바이스(100)(도 1a)의 메모리(102)에 저장된 프로그램들, 모듈들, 및 데이터 구조들과 유사한 프로그램들, 모듈들, 및 데이터 구조들, 또는 이들의 서브세트를 저장한다. 더욱이, 메모리(370)는, 선택적으로, 휴대용 다기능 디바이스(100)의 메모리(102) 내에 존재하지 않는 부가적인 프로그램들, 모듈들 및 데이터 구조들을 저장한다. 예를 들어, 디바이스(300)의 메모리(370)는, 선택적으로, 드로잉 모듈(380), 프레젠테이션 모듈(382), 워드 프로세싱 모듈(384), 웹사이트 제작 모듈(386), 디스크 저작 모듈(388), 및/또는 스프레드시트 모듈(390)을 저장하는 반면, 휴대용 다기능 디바이스(100)(도 1a)의 메모리(102)는, 선택적으로, 이러한 모듈들을 저장하지 않는다.FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments. The device (300) need not be portable. In some embodiments, the device (300) is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a children's learning toy), a gaming system, or a control device (e.g., a home or industrial controller). The device (300) typically includes one or more processing units (CPUs) (310), one or more network or other communication interfaces (360), memory (370), and one or more communication buses (320) for interconnecting these components. The communication buses (320) optionally include circuitry (sometimes referred to as a chipset) for interconnecting the system components and controlling communications therebetween. The device (300) includes an input/output (I/O) interface (330) that typically includes a display (340), which is a touch screen display. The I/O interface (330) also optionally includes a keyboard and/or mouse (or other pointing device) (350) and a touchpad (355), a tactile output generator (357) for generating tactile outputs on the device (300) (e.g., similar to the tactile output generator(s) (167) described above with reference to FIG. 1A ), and sensors (359) (e.g., an optical sensor, an acceleration sensor, a proximity sensor, a touch-sensitive sensor, and/or a contact intensity sensor similar to the contact intensity sensor(s) (165) described above with reference to FIG. 1A ). The memory (370) includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; and optionally nonvolatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other nonvolatile solid state storage devices. The memory (370) optionally includes one or more storage devices located remotely from the CPU(s) (310). In some embodiments, the memory (370) stores programs, modules, and data structures similar to the programs, modules, and data structures stored in the memory (102) of the portable multifunction device (100) (FIG. 1A), or a subset thereof. Furthermore, the memory (370) optionally stores additional programs, modules, and data structures that are not present in the memory (102) of the portable multifunction device (100). For example, the memory (370) of the device (300) optionally stores a drawing module (380), a presentation module (382), a word processing module (384), a website creation module (386), a disk authoring module (388), and/or a spreadsheet module (390), while the memory (102) of the portable multifunction device (100) (FIG. 1A) optionally does not store such modules.
도 3에서의 위에서 식별된 요소들 각각은, 선택적으로, 이전에 언급된 메모리 디바이스들 중 하나 이상에 저장된다. 위에서 식별된 모듈들 각각은 위에서 설명된 기능을 수행하기 위한 명령어들의 세트에 대응한다. 위에서 식별된 모듈들 또는 프로그램들(예를 들어, 명령어들의 세트들)은 별개의 소프트웨어 프로그램들, 절차들 또는 모듈들로서 구현될 필요가 없으며, 따라서 다양한 실시예들에서 이들 모듈의 다양한 서브세트들이 선택적으로 조합되거나 그렇지 않으면 재배열된다. 일부 실시예들에서, 메모리(370)는 선택적으로, 위에서 식별된 모듈들 및 데이터 구조들의 서브세트를 저장한다. 더욱이, 메모리(370)는 선택적으로 위에서 설명되지 않은 부가적인 모듈들 및 데이터 구조들을 저장한다.Each of the elements identified above in FIG. 3 is optionally stored in one or more of the previously mentioned memory devices. Each of the modules identified above corresponds to a set of instructions for performing the function described above. The modules or programs (e.g., sets of instructions) identified above need not be implemented as separate software programs, procedures or modules, and thus, in various embodiments, various subsets of these modules may be optionally combined or otherwise rearranged. In some embodiments, the memory (370) optionally stores a subset of the modules and data structures identified above. Furthermore, the memory (370) optionally stores additional modules and data structures not described above.
이제, 예를 들어, 휴대용 다기능 디바이스(100) 상에서 선택적으로 구현되는 사용자 인터페이스들의 실시예들에 주목한다.Now, let us consider embodiments of user interfaces optionally implemented on, for example, a portable multifunction device (100).
도 4a는 일부 실시예들에 따른, 휴대용 다기능 디바이스(100) 상의 애플리케이션들의 메뉴에 대한 예시적인 사용자 인터페이스를 예시한다. 유사한 사용자 인터페이스들이 선택적으로 디바이스(300) 상에 구현된다. 일부 실시예들에서, 사용자 인터페이스(400)는 하기의 요소들, 또는 그들의 서브세트나 수퍼세트를 포함한다:FIG. 4A illustrates an exemplary user interface for a menu of applications on a portable multifunction device (100), according to some embodiments. Similar user interfaces are optionally implemented on the device (300). In some embodiments, the user interface (400) includes the following elements, or a subset or superset thereof:
셀룰러 및 Wi-Fi 신호들과 같은 무선 통신(들)을 위한 신호 세기 표시자(들)(402); Signal strength indicator(s) (402) for wireless communication(s), such as cellular and Wi-Fi signals;
시간(404); Time (404);
블루투스 표시자(405); Bluetooth indicator (405);
배터리 상태 표시자(406); Battery status indicator (406);
다음과 같은, 빈번하게 사용되는 애플리케이션들에 대한 아이콘들을 갖는 트레이(408): A tray (408) with icons for frequently used applications, such as:
o 부재 중 전화들 또는 음성메일 메시지들의 개수의 표시자(414)를 선택적으로 포함하는 "전화"라고 라벨링된 전화 모듈(138)에 대한 아이콘(416);An icon (416) for a phone module (138) labeled “Phone” optionally including an indicator (414) of the number of missed calls or voicemail messages;
o 읽지 않은 이메일들의 개수의 표시자(410)를 선택적으로 포함하는 "메일"이라고 라벨링된 이메일 클라이언트 모듈(140)에 대한 아이콘(418);An icon (418) for an email client module (140) labeled “Mail” optionally including an indicator (410) of the number of unread emails;
o "브라우저"라고 라벨링된 브라우저 모듈(147)에 대한 아이콘(420);및o Icon (420) for a browser module (147) labeled "Browser"; and
o 아이팟(애플 인크.의 상표) 모듈(152)로도 지칭되는, "아이팟"이라고 라벨링된 비디오 및 음악 재생기 모듈(152)에 대한 아이콘(422);및An icon (422) for a video and music player module (152) labeled “iPod”, also referred to as an iPod (a trademark of Apple Inc.) module (152); and
다음과 같은, 다른 애플리케이션들에 대한 아이콘들: Icons for other applications, such as:
o "메시지"라고 라벨링된 IM 모듈(141)에 대한 아이콘(424);Icon (424) for IM module (141) labeled “Message”;
o "캘린더"라고 라벨링된 캘린더 모듈(148)에 대한 아이콘(426);o Icon (426) for the calendar module (148) labeled “Calendar”;
o "사진"이라고 라벨링된 이미지 관리 모듈(144)에 대한 아이콘(428);Icon (428) for the image management module (144) labeled “Photo”;
o "카메라"라고 라벨링된 카메라 모듈(143)에 대한 아이콘(430);Icon (430) for a camera module (143) labeled “Camera”;
o "온라인 비디오"라고 라벨링된 온라인 비디오 모듈(155)에 대한 아이콘(432);o Icon (432) for an online video module (155) labeled “Online Video”;
o "주식"이라고 라벨링된 주식 위젯(149-2)에 대한 아이콘(434);Icon (434) for the stock widget (149-2) labeled “Stocks”;
o "지도"라고 라벨링된 지도 모듈(154)에 대한 아이콘(436);Icon (436) for the map module (154) labeled “map”;
o "날씨"라고 라벨링된 날씨 위젯(149-1)에 대한 아이콘(438);Icon (438) for a weather widget (149-1) labeled “Weather”;
o "시계"라고 라벨링된 알람 시계 위젯(149-4)에 대한 아이콘(440);Icon (440) for an alarm clock widget (149-4) labeled "Clock";
o "운동 지원"이라고 라벨링된 운동 지원 모듈(142)에 대한 아이콘(442);o Icon (442) for the exercise support module (142) labeled “exercise support”;
o "메모"라고 라벨링된 메모 모듈(153)에 대한 아이콘(444);및o Icon (444) for a note module (153) labeled "Note"; and
o 디바이스(100) 및 그의 다양한 애플리케이션들(136)에 대한 설정으로의 액세스를 제공하는, "설정"이라고 라벨링된, 설정 애플리케이션 또는 모듈에 대한 아이콘(446).An icon (446) for a settings application or module, labeled “Settings”, which provides access to settings for the device (100) and its various applications (136).
도 4a에 예시된 아이콘 라벨들은 단지 예시일 뿐이라는 것에 주목해야 한다. 예를 들어, 비디오 및 음악 재생기 모듈(152)에 대한 아이콘(422)은 "음악" 또는 "음악 재생기"라고 라벨링된다. 다른 라벨들이 선택적으로 다양한 애플리케이션 아이콘들에 대해 사용된다. 일부 실시예들에서, 개개의 애플리케이션 아이콘에 대한 라벨은 개개의 애플리케이션 아이콘에 대응하는 애플리케이션의 이름을 포함한다. 일부 실시예들에서, 특정 애플리케이션 아이콘에 대한 라벨은 특정 애플리케이션 아이콘에 대응하는 애플리케이션의 이름과는 별개이다.It should be noted that the icon labels illustrated in FIG. 4A are merely examples. For example, the icon (422) for the video and music player module (152) is labeled "Music" or "Music Player." Other labels are optionally used for various application icons. In some embodiments, the label for an individual application icon includes the name of the application corresponding to the individual application icon. In some embodiments, the label for a particular application icon is separate from the name of the application corresponding to the particular application icon.
도 4b는 디스플레이(450)(예를 들어, 터치 스크린 디스플레이(112))와는 별개인 터치 감응형 표면(451)(예를 들어, 도 3의 태블릿 또는 터치패드(355))을 갖는 디바이스(예를 들어, 도 3의 디바이스(300)) 상의 예시적인 사용자 인터페이스를 예시한다. 디바이스(300)는 또한, 선택적으로, 터치 감응형 표면(451) 상의 접촉들의 세기를 검출하기 위한 하나 이상의 접촉 세기 센서들(예를 들어, 센서들(359) 중 하나 이상) 및/또는 디바이스(300)의 사용자에 대한 촉각적 출력들을 생성하기 위한 하나 이상의 촉각적 출력 생성기들(357)을 포함한다.FIG. 4B illustrates an exemplary user interface on a device (e.g., device (300) of FIG. 3) having a touch-sensitive surface (451) (e.g., a tablet or touchpad (355) of FIG. 3) separate from a display (450) (e.g., a touch screen display (112)). The device (300) optionally also includes one or more contact intensity sensors (e.g., one or more of the sensors (359)) for detecting the intensity of contacts on the touch-sensitive surface (451) and/or one or more tactile output generators (357) for generating tactile outputs to a user of the device (300).
후속하는 예들 중 일부가 (터치 감응형 표면과 디스플레이가 조합된) 터치 스크린 디스플레이(112) 상의 입력들을 참조하여 제공될 것이지만, 일부 실시예들에서, 디바이스는 도 4b에 도시된 바와 같이 디스플레이와 별개인 터치 감응형 표면 상에서 입력들을 검출한다. 일부 실시예들에서, 터치 감응형 표면(예를 들어, 도 4b의 451)은 디스플레이(예를 들어, 450) 상의 주축(예를 들어, 도 4b의 453)에 대응하는 주축(예를 들어, 도 4b의 452)을 갖는다. 이들 실시예들에 따르면, 디바이스는 디스플레이 상의 개개의 위치들에 대응하는 위치들(예를 들어, 도 4b에서, 460은 468에 대응하고, 462는 470에 대응함)에서 터치 감응형 표면(451)과의 접촉들(예를 들어, 도 4b의 460 및 462)을 검출한다. 이러한 방식으로, 터치 감응형 표면(예를 들어, 도 4b의 451) 상에서 디바이스에 의해 검출된 사용자 입력들(예를 들어, 접촉들(460, 462) 및 그의 움직임들)은 터치 감응형 표면이 디스플레이와는 별개일 때 디바이스에 의해 다기능 디바이스의 디스플레이(예를 들어, 도 4b의 450) 상의 사용자 인터페이스를 조작하는 데 사용된다. 유사한 방법들이, 선택적으로, 본 명세서에 설명된 다른 사용자 인터페이스들에 대해 사용된다는 것이 이해되어야 한다.While some of the following examples will be provided with reference to inputs on a touch screen display (112) (which is a combination of a touch-sensitive surface and a display), in some embodiments, the device detects inputs on a touch-sensitive surface that is separate from the display, as illustrated in FIG. 4B . In some embodiments, the touch-sensitive surface (e.g., 451 of FIG. 4B ) has a principal axis (e.g., 452 of FIG. 4B ) that corresponds to a principal axis (e.g., 453 of FIG. 4B ) on the display (e.g., 450 ). According to these embodiments, the device detects contacts (e.g., 460 and 462 of FIG. 4B ) with the touch-sensitive surface (451) at locations that correspond to respective locations on the display (e.g., 460 corresponds to 468 and 462 corresponds to 470 in FIG. 4B ). In this manner, user inputs (e.g., contacts (460, 462) and movements thereof) detected by the device on the touch-sensitive surface (e.g., 451 of FIG. 4b ) are used by the device to manipulate a user interface on the display of the multifunction device (e.g., 450 of FIG. 4b ) when the touch-sensitive surface is separate from the display. It should be appreciated that similar methods may optionally be used for other user interfaces described herein.
부가적으로, 다음의 예들이 손가락 입력들(예를 들어, 손가락 접촉들, 손가락 탭 제스처들, 손가락 스와이프 제스처들)을 주로 참조하여 제공되는 반면, 일부 실시예들에서, 손가락 입력들 중 하나 이상은 다른 입력 디바이스로부터의 입력(예를 들어, 마우스 기반 입력 또는 스타일러스 입력)으로 대체된다는 것이 이해되어야 한다. 예를 들어, 스와이프 제스처가 선택적으로 (예를 들어, 접촉 대신의) 마우스 클릭 및 뒤이은 (예를 들어, 접촉의 이동 대신의) 스와이프의 경로를 따른 커서의 이동으로 대체된다. 다른 예로서, (예를 들어, 접촉의 검출 및 뒤이은 접촉을 검출하는 것이 중단되는 것 대신에) 커서가 탭 제스처의 위치 위에 위치되는 동안에 탭 제스처가 선택적으로 마우스 클릭으로 대체된다. 유사하게, 다수의 사용자 입력이 동시에 검출되는 경우, 다수의 컴퓨터 마우스가 선택적으로 동시에 사용되거나, 또는 마우스와 손가락 접촉들이 선택적으로 동시에 사용되는 것으로 이해하여야 한다.Additionally, while the following examples are provided primarily with reference to finger inputs (e.g., finger contacts, finger tap gestures, finger swipe gestures), it should be understood that in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced with a mouse click (e.g., instead of a contact) followed by movement of the cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced with a mouse click while the cursor is positioned over the location of the tap gesture (e.g., instead of detection of the contact and subsequent detection of the contact being interrupted). Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or that mice and finger contacts are optionally used simultaneously.
도 5a는 예시적인 개인용 전자 디바이스(500)를 도시한다. 디바이스(500)는 몸체(502)를 포함한다. 일부 실시예들에서, 디바이스(500)는 디바이스들(100, 300)(예를 들어, 도 1a 내지 도 4b)에 대해 설명된 특징들의 일부 또는 전부를 포함할 수 있다. 일부 실시예들에서, 디바이스(500)는 터치 감응형 디스플레이 스크린(504)(이하, 터치 스크린(504))을 갖는다. 터치 스크린(504)에 대해 대안적으로 또는 부가적으로, 디바이스(500)는 디스플레이 및 터치 감응형 표면을 갖는다. 디바이스들(100, 300)과 같이, 일부 실시예들에서, 터치 스크린(504)(또는 터치 감응형 표면)은, 선택적으로, 가해지는 접촉들(예를 들어, 터치들)의 세기를 검출하기 위한 하나 이상의 세기 센서들을 포함한다. 터치 스크린(504)(또는 터치 감응형 표면)의 하나 이상의 세기 센서들은 터치들의 세기를 표현하는 출력 데이터를 제공할 수 있다. 디바이스(500)의 사용자 인터페이스는 터치들의 세기에 기초하여 터치들에 응답할 수 있는데, 이는 상이한 세기들의 터치들이 디바이스(500) 상의 상이한 사용자 인터페이스 동작들을 호출할 수 있다는 것을 의미한다.FIG. 5A illustrates an exemplary personal electronic device (500). The device (500) includes a body (502). In some embodiments, the device (500) may include some or all of the features described for devices (100, 300) (e.g., FIGS. 1A-4B ). In some embodiments, the device (500) has a touch-sensitive display screen (504) (hereinafter, “
터치 세기를 검출하고 프로세싱하기 위한 예시적인 기법들은, 예를 들어, 관련 출원들: 2013년 5월 8일자로 출원되고 발명의 명칭이 "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application"인 국제 특허 출원 PCT/US2013/040061호(WIPO 공개 번호 WO/2013/169849호로서 공개됨), 및 2013년 11월 11일자로 출원되고 발명의 명칭이 "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships"인 국제 특허 출원 PCT/US2013/069483호(WIPO 공개 번호 WO/2014/105276호로서 공개됨)에서 찾을 수 있으며, 이들 각각은 전체적으로 본 명세서에 참고로 포함된다.Exemplary techniques for detecting and processing touch intensity can be found, for example, in related applications: International Patent Application No. PCT/US2013/040061, filed May 8, 2013, entitled "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application" (published as WIPO Publication No. WO/2013/169849), and International Patent Application No. PCT/US2013/069483, filed November 11, 2013, entitled "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships" (published as WIPO Publication No. WO/2014/105276), each of which is herein incorporated by reference in its entirety.
일부 실시예들에서, 디바이스(500)는 하나 이상의 입력 메커니즘들(506, 508)을 갖는다. 입력 메커니즘들(506, 508)(포함되어 있는 경우)은 물리적인 것일 수 있다. 물리적 입력 메커니즘들의 예들은 푸시 버튼들 및 회전가능 메커니즘들을 포함한다. 일부 실시예들에서, 디바이스(500)는 하나 이상의 부착 메커니즘들을 갖는다. 이러한 부착 메커니즘들(포함되어 있는 경우)은 디바이스(500)가, 예를 들어, 모자, 안경, 귀걸이, 목걸이, 셔츠, 재킷, 팔찌, 시계줄, 쇠줄(chain), 바지, 벨트, 신발, 지갑, 배낭 등에 부착될 수 있게 한다. 이 부착 메커니즘들은 디바이스(500)가 사용자에 의해 착용되도록 한다.In some embodiments, the device (500) has one or more input mechanisms (506, 508). The input mechanisms (506, 508) (if included) can be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, the device (500) has one or more attachment mechanisms. These attachment mechanisms (if included) allow the device (500) to be attached to, for example, a hat, glasses, earrings, a necklace, a shirt, a jacket, a bracelet, a watch strap, a chain, pants, a belt, a shoe, a purse, a backpack, and the like. These attachment mechanisms allow the device (500) to be worn by a user.
도 5b는 예시적인 개인용 전자 디바이스(500)를 도시한다. 일부 실시예들에서, 디바이스(500)는 도 1a, 도 1b, 및 도 3에 대해 설명된 컴포넌트들의 일부 또는 전부를 포함할 수 있다. 디바이스(500)는 I/O 섹션(514)을 하나 이상의 컴퓨터 프로세서들(516) 및 메모리(518)와 동작가능하게 커플링시키는 버스(512)를 갖는다. I/O 섹션(514)은 디스플레이(504)에 연결될 수 있고, 이는 터치 감응형 컴포넌트(522), 및 선택적으로, 세기 센서(524)(예를 들어, 접촉 세기 센서)를 가질 수 있다. 부가적으로, I/O 섹션(514)은, Wi-Fi, 블루투스, 근거리 통신(NFC), 셀룰러 및/또는 다른 무선 통신 기법들을 사용하여, 애플리케이션 및 운영 체제 데이터를 수신하기 위해 통신 유닛(530)과 연결될 수 있다. 디바이스(500)는 입력 메커니즘들(506 및/또는 508)을 포함할 수 있다. 입력 메커니즘(506)은, 선택적으로, 회전가능 입력 디바이스 또는 예를 들어 누름가능 및 회전가능한 입력 디바이스이다. 일부 예들에서, 입력 메커니즘(508)은, 선택적으로, 버튼이다.FIG. 5B illustrates an exemplary personal electronic device (500). In some embodiments, the device (500) may include some or all of the components described with respect to FIGS. 1A, 1B, and 3. The device (500) has a bus (512) operatively coupling an I/O section (514) with one or more computer processors (516) and a memory (518). The I/O section (514) may be coupled to a display (504), which may have a touch-sensitive component (522), and optionally, an intensity sensor (524) (e.g., a contact intensity sensor). Additionally, the I/O section (514) may be coupled to a communications unit (530) to receive application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular, and/or other wireless communication techniques. The device (500) may include input mechanisms (506 and/or 508). The input mechanism (506) is, optionally, a rotatable input device or, for example, a pressable and rotatable input device. In some examples, the input mechanism (508) is, optionally, a button.
일부 예들에서, 입력 메커니즘(508)은, 선택적으로, 마이크로폰이다. 개인용 전자 디바이스(500)는, 선택적으로, GPS 센서(532), 가속도계(534), 방향 센서(540)(예를 들어, 나침반), 자이로스코프(536), 모션 센서(538), 및/또는 이들의 조합과 같은, 다양한 센서들을 포함하고, 이들 모두는 I/O 섹션(514)에 동작가능하게 연결될 수 있다.In some examples, the input mechanism (508) is, optionally, a microphone. The personal electronic device (500) optionally includes various sensors, such as a GPS sensor (532), an accelerometer (534), an orientation sensor (540) (e.g., a compass), a gyroscope (536), a motion sensor (538), and/or combinations thereof, all of which may be operably connected to the I/O section (514).
개인용 전자 디바이스(500)의 메모리(518)는, 예를 들어, 하나 이상의 컴퓨터 프로세서들(516)에 의해 실행될 때, 컴퓨터 프로세서들로 하여금, 방법(700)(도 7)을 포함하는, 아래에 설명된 기법들을 수행하게 할 수 있는, 컴퓨터 실행가능한 명령어들을 저장하기 위한 하나 이상의 비일시적 컴퓨터 판독가능 저장 매체를 포함할 수 있다. 컴퓨터 판독가능 저장 매체는 명령어 실행 시스템, 장치, 또는 디바이스에 의해 또는 그와 관련하여 사용하기 위한 컴퓨터 실행가능 명령어들을 유형적으로(tangibly) 포함하거나 저장할 수 있는 임의의 매체일 수 있다. 일부 예들에서, 저장 매체는 일시적 컴퓨터 판독가능 저장 매체이다. 일부 예들에서, 저장 매체는 비일시적 컴퓨터 판독가능 저장 매체이다. 비일시적 컴퓨터 판독가능 저장 매체는 자기, 광, 및/또는 반도체 저장소들을 포함할 수 있지만, 이들로 제한되지 않는다. 이러한 저장소의 예들은 자기 디스크들, CD, DVD, 또는 블루레이 기술들에 기초한 광 디스크들은 물론, 플래시, 솔리드 스테이트 드라이브들 등과 같은 영속적 솔리드 스테이트 메모리를 포함한다. 개인용 전자 디바이스(500)는 도 5b의 컴포넌트들 및 구성으로 제한되지 않고, 다수의 구성들에서 다른 또는 부가적인 컴포넌트들을 포함할 수 있다.The memory (518) of the personal electronic device (500) may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by, for example, one or more computer processors (516), cause the computer processors to perform the techniques described below, including the method (700) (FIG. 7). The computer-readable storage media may be any media that tangibly contains or can store computer-executable instructions for use by or in connection with an instruction execution system, apparatus, or device. In some examples, the storage media is a transitory computer-readable storage media. In some examples, the storage media is a non-transitory computer-readable storage media. The non-transitory computer-readable storage media may include, but are not limited to, magnetic, optical, and/or semiconductor storage. Examples of such storage include magnetic disks, optical disks based on CD, DVD, or Blu-ray technologies, as well as persistent solid-state memory such as flash, solid-state drives, and the like. The personal electronic device (500) is not limited to the components and configurations of FIG. 5b and may include other or additional components in a number of configurations.
여기서 사용되는 바와 같이, "어포던스"라는 용어는 디바이스들(100, 300, 및/또는 500)(도 1a, 도 3, 및 도 5a와 도 5b)의 디스플레이 스크린 상에 선택적으로 디스플레이되는 사용자 상호작용형(user-interactive) 그래픽 사용자 인터페이스 객체를 지칭한다. 예를 들어, 이미지(예를 들어, 아이콘), 버튼, 및 텍스트(예를 들어, 하이퍼링크) 각각이 선택적으로 어포던스를 구성한다.As used herein, the term "affordance" refers to a user-interactive graphical user interface object that is optionally displayed on a display screen of the devices (100, 300, and/or 500) (FIGS. 1A, 3, and 5A and 5B). For example, an image (e.g., an icon), a button, and text (e.g., a hyperlink) each optionally constitute an affordance.
본 명세서에 사용되는 바와 같이, "포커스 선택자(focus selector)"라는 용어는 사용자와 상호작용하고 있는 사용자 인터페이스의 현재 부분을 표시하는 입력 요소를 지칭한다. 커서 또는 다른 위치 마커(location marker)를 포함하는 일부 구현예들에서, 커서가 특정 사용자 인터페이스 요소(예를 들어, 버튼, 윈도우, 슬라이더 또는 다른 사용자 인터페이스 요소) 위에 있는 동안 터치 감응형 표면(예를 들어, 도 3의 터치패드(355) 또는 도 4b의 터치 감응형 표면(451)) 상에서 입력(예를 들어, 누르기 입력)이 검출될 때, 특정 사용자 인터페이스 요소가 검출된 입력에 따라 조정되도록, 커서는 "포커스 선택자"로서 기능한다. 터치 스크린 디스플레이 상의 사용자 인터페이스 요소들과의 직접적인 상호작용을 인에이블하는 터치 스크린 디스플레이(예를 들어, 도 1a의 터치 감응형 디스플레이 시스템(112) 또는 도 4a의 터치 스크린(112))를 포함하는 일부 구현예들에서, 입력(예를 들어, 접촉에 의한 누르기 입력)이 특정 사용자 인터페이스 요소(예를 들어, 버튼, 윈도우, 슬라이더 또는 다른 사용자 인터페이스 요소)의 위치에 있는 터치 스크린 디스플레이 상에서 검출될 때, 특정 사용자 인터페이스 요소가 검출된 입력에 따라 조정되도록, 터치 스크린 상에서 검출된 접촉이 "포커스 선택자"로서 기능한다. 일부 구현예들에서, (예를 들어, 탭 키 또는 화살표 키들을 사용하여 포커스를 하나의 버튼으로부터 다른 버튼으로 움직이는 것에 의해) 터치 스크린 디스플레이 상의 대응하는 커서의 이동 또는 접촉의 이동 없이 포커스가 사용자 인터페이스의 하나의 구역으로부터 사용자 인터페이스의 다른 구역으로 이동되며; 이들 구현예들에서, 포커스 선택자는 사용자 인터페이스의 상이한 구역들 사이에서의 포커스의 이동에 따라 이동된다. 포커스 선택자에 의해 취해진 특정 형태와 무관하게, 포커스 선택자는 일반적으로 (예를 들어, 사용자가 상호작용하고자 하는 사용자 인터페이스의 요소를 디바이스에 표시함으로써) 사용자 인터페이스와의 사용자의 의도된 상호작용을 전달하기 위해 사용자에 의해 제어되는 사용자 인터페이스 요소(또는 터치 스크린 디스플레이 상의 접촉)이다. 예를 들어, 터치 감응형 표면(예를 들어, 터치패드 또는 터치 스크린) 상에서 누르기 입력이 검출되는 동안 개개의 버튼 위의 포커스 선택자(예를 들어, 커서, 접촉 또는 선택 박스)의 위치는 (디바이스의 디스플레이 상에 보여지는 다른 사용자 인터페이스 요소들과 달리) 사용자가 개개의 버튼을 활성화시키려고 하고 있다는 것을 표시할 것이다.As used herein, the term "focus selector" refers to an input element that indicates the current portion of a user interface with which a user is interacting. In some implementations that include a cursor or other location marker, when input (e.g., a press input) is detected on a touch-sensitive surface (e.g., the touchpad (355) of FIG. 3 or the touch-sensitive surface (451) of FIG. 4B) while the cursor is over a particular user interface element (e.g., a button, a window, a slider, or other user interface element), the cursor functions as a "focus selector" such that the particular user interface element is adjusted in response to the detected input. In some implementations that include a touch screen display that enables direct interaction with user interface elements on the touch screen display (e.g., the touch-sensitive display system (112) of FIG. 1A or the touch screen (112) of FIG. 4A), when an input (e.g., a press-by-contact input) is detected on the touch screen display at a location of a particular user interface element (e.g., a button, a window, a slider, or other user interface element), the contact detected on the touch screen functions as a "focus selector" such that the particular user interface element is adjusted in response to the detected input. In some implementations, focus is moved from one area of the user interface to another area of the user interface without movement of a corresponding cursor or contact on the touch screen display (e.g., by moving focus from one button to another using the tab key or arrow keys); in these implementations, the focus selector moves in response to movement of focus between different areas of the user interface. Regardless of the particular form taken by the focus selector, a focus selector is typically a user interface element (or a contact on a touch screen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by displaying on the device an element of the user interface with which the user wishes to interact). For example, the position of a focus selector (e.g., a cursor, contact, or selection box) over an individual button while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touch screen) will indicate that the user intends to activate that individual button (as opposed to other user interface elements visible on the device's display).
명세서 및 청구범위에서 사용되는 바와 같이, 접촉의 "특성 세기"라는 용어는 접촉의 하나 이상의 세기들에 기초한 접촉의 특성을 지칭한다. 일부 실시예들에서, 특성 세기는 다수의 세기 샘플들에 기초한다. 특성 세기는, 선택적으로, 미리 정의된 수의 세기 샘플들, 또는 미리 정의된 이벤트에 대해 (예를 들어, 접촉을 검출한 후에, 접촉의 리프트오프를 검출하기 전에, 접촉의 이동의 시작을 검출하기 전 또는 그 후에, 접촉의 종료를 검출하기 전에, 접촉의 세기의 증가를 검출하기 전 또는 그 후에, 및/또는 접촉의 세기의 감소를 검출하기 전 또는 그 후에) 미리 결정된 시간 기간(예를 들어, 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10초) 동안 수집된 세기 샘플들의 세트에 기초한다. 접촉의 특성 세기는, 선택적으로, 접촉의 세기들의 최대 값, 접촉의 세기들의 중간 값(mean value), 접촉의 세기들의 평균 값(average value), 접촉의 세기들의 상위 10 백분위 값(top 10 percentile value), 접촉의 세기들의 최대 값의 절반의 값, 접촉의 세기들의 최대 값의 90 퍼센트의 값 등 중 하나 이상에 기초한다. 일부 실시예들에서, 접촉의 지속기간은 (예를 들어, 특성 세기가 시간의 경과에 따른 접촉의 세기의 평균일 때) 특성 세기를 결정하는 데 사용된다. 일부 실시예들에서, 동작이 사용자에 의해 수행되었는지 여부를 결정하기 위해, 특성 세기가 하나 이상의 세기 임계치들의 세트와 비교된다. 예를 들어, 하나 이상의 세기 임계치들의 세트는 선택적으로 제1 세기 임계치 및 제2 세기 임계치를 포함한다. 이러한 예에서, 제1 임계치를 초과하지 않는 특성 세기를 갖는 접촉의 결과, 제1 동작이 행해지고, 제1 세기 임계치를 초과하지만 제2 세기 임계치를 초과하지 않는 특성 세기를 갖는 접촉의 결과, 제2 동작이 행해지며, 제2 임계치 초과의 특성 세기를 갖는 접촉의 결과, 제3 동작이 행해진다. 일부 실시예들에서, 특성 세기와 하나 이상의 임계치들 사이의 비교는, 제1 동작을 수행할지 또는 제2 동작을 수행할지 결정하기 위해 사용되기보다는, 하나 이상의 동작들을 수행할지 여부(예를 들어, 개개의 동작을 수행할지 또는 개개의 동작을 수행하는 것을 보류할지)를 결정하기 위해 사용된다.As used in the specification and claims, the term "characteristic intensity" of a contact refers to a characteristic of a contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predefined number of intensity samples, or a set of intensity samples collected over a predefined period of time (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) for a predefined event (e.g., after detecting the contact, before detecting liftoff of the contact, before or after detecting the start of movement of the contact, before or after detecting the end of the contact, before or after detecting an increase in intensity of the contact, and/or before or after detecting a decrease in intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of a maximum value of the intensities of the contact, a mean value of the intensities of the contact, an average value of the intensities of the contact, a top 10 percentile value of the intensities of the contact, a value of half the maximum value of the intensities of the contact, a value of 90 percent of the maximum value of the intensities of the contact, etc. In some embodiments, the duration of the contact is used to determine the characteristic intensity (e.g., when the characteristic intensity is an average of the intensities of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action has been performed by a user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In these examples, a first action is performed as a result of a contact having a characteristic intensity that does not exceed a first threshold, a second action is performed as a result of a contact having a characteristic intensity that exceeds the first intensity threshold but does not exceed a second intensity threshold, and a third action is performed as a result of a contact having a characteristic intensity that exceeds the second threshold. In some embodiments, a comparison between the characteristic intensity and the one or more thresholds is used to determine whether to perform one or more actions (e.g., whether to perform an individual action or to refrain from performing an individual action), rather than to determine whether to perform the first action or the second action.
도 5c는 복수의 세기 센서들(524A 내지 524D)을 사용하여 터치 감응형 디스플레이 스크린(504) 상에서의 복수의 접촉들(552A 내지 552E)을 검출하는 것을 예시한다. 도 5c는 세기 단위들에 대한 세기 센서들(524A 내지 524D)의 현재 세기 측정치들을 보여주는 세기 다이어그램들을 부가적으로 포함한다. 이러한 예에서, 세기 센서들(524A, 524D)의 세기 측정치들은 각각 9개의 세기 단위들이고, 세기 센서들(524B, 524C)의 세기 측정치들은 각각 7개의 세기 단위들이다. 일부 구현예들에서, 총 세기는 복수의 세기 센서들(524A 내지 524D)의 세기 측정치들의 총합이고, 이는 이러한 예에서 32개 세기 단위들이다. 일부 실시예들에서, 각각의 접촉에는 총 세기의 일부인 개개의 세기가 할당된다. 도 5d는 힘의 중심(554)으로부터의 그들의 거리에 기초하여 접촉들(552A 내지 552E)에 총 세기를 할당하는 것을 예시한다. 이러한 예에서, 접촉들(552A, 552B, 552E)에는 각각 총 세기 중 8개 세기 단위들의 접촉의 세기가 할당되고, 접촉들(552C, 552D)에는 각각 총 세기 중 4개 세기 단위들의 접촉의 세기가 할당된다. 보다 일반적으로, 일부 구현예들에서, 각각의 접촉(j)에는 미리 정의된 수학 함수 Ij = A·(Dj/ΣDi)에 따라 총 세기(A)의 일부인 개개의 세기(Ij)가 할당되는데, 여기서 Dj는 힘의 중심까지의 개개의 접촉(j)의 거리이고, ΣDi는 힘의 중심까지의 모든 개개의 접촉들의 거리들의 총합이다(예를 들어, i=1 내지 마지막). 도 5c 및 도 5d를 참조하여 설명된 동작들이 디바이스(100, 300, 또는 500)와 유사하거나 동일한 전자 디바이스를 사용하여 수행될 수 있다. 일부 실시예들에서, 접촉의 특성 세기는 접촉의 하나 이상의 세기들에 기초한다. 일부 실시예들에서, 세기 센서들은 단일 특성 세기(예를 들어, 단일 접촉의 단일 특성 세기)를 결정하는 데 사용된다. 세기 다이어그램들은 디스플레이된 사용자 인터페이스의 일부가 아니고, 독자를 돕기 위해 도 5c 및 도 5d에 포함된 것임을 유의해야 한다.FIG. 5C illustrates detecting a plurality of contacts (552A-552E) on a touch-sensitive display screen (504) using a plurality of intensity sensors (524A-524D). FIG. 5C additionally includes intensity diagrams showing current intensity measurements of the intensity sensors (524A-524D) in terms of intensity units. In this example, the intensity measurements of the intensity sensors (524A, 524D) are each 9 intensity units, and the intensity measurements of the intensity sensors (524B, 524C) are each 7 intensity units. In some implementations, the total intensity is the sum of the intensity measurements of the plurality of intensity sensors (524A-524D), which in this example is 32 intensity units. In some embodiments, each contact is assigned an individual intensity that is a portion of the total intensity. FIG. 5d illustrates assigning total intensities to contacts (552A through 552E) based on their distance from a center of force (554). In this example, contacts (552A, 552B, 552E) are each assigned a contact intensity of eight intensity units of the total intensity, and contacts (552C, 552D) are each assigned a contact intensity of four intensity units of the total intensity. More generally, in some implementations, each contact (j) is assigned an individual intensity (Ij) that is a portion of the total intensity (A) according to a predefined mathematical function Ij = A (Dj/ΣDi), where Dj is the distance of the individual contact (j) to the center of force, and ΣDi is the sum of the distances of all the individual contacts to the center of force (e.g., i=1 to the last). The operations described with reference to FIGS. 5C and 5D can be performed using an electronic device similar or identical to the device (100, 300, or 500). In some embodiments, the characteristic intensity of the contact is based on one or more intensities of the contact. In some embodiments, intensity sensors are used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). It should be noted that the intensity diagrams are not part of the displayed user interface, but are included in FIGS. 5C and 5D to assist the reader.
일부 실시예들에서, 특성 세기를 결정하려는 목적들을 위해 제스처의 일부가 식별된다. 예를 들어, 터치 감응형 표면은, 선택적으로, 시작 위치로부터 전환하여 종료 위치(이 지점에서 접촉의 세기가 증가함)에 도달하는 연속적인 스와이프 접촉을 수신한다. 이러한 예에서, 종료 위치에서의 접촉의 특성 세기는 선택적으로 스와이프 접촉 전체가 아니라 연속적인 스와이프 접촉의 일부에만(예를 들어, 종료 위치에서의 스와이프 접촉의 부분에만) 기초한다. 일부 실시예들에서, 접촉의 특성 세기를 결정하기 전에 선택적으로 스와이프 접촉의 세기들에 평활화 알고리즘이 적용된다. 예를 들어, 평활화 알고리즘은, 선택적으로, 비가중 이동 평균(unweighted sliding-average) 평활화 알고리즘, 삼각(triangular) 평활화 알고리즘, 메디안 필터(median filter) 평활화 알고리즘, 및/또는 지수(exponential) 평활화 알고리즘 중 하나 이상을 포함한다. 일부 상황들에서, 이 평활화 알고리즘들은 특성 세기를 결정하기 위해 스와이프 접촉의 세기들에서의 좁은 급등(spike)들 또는 급감(dip)들을 제거한다.In some embodiments, a portion of a gesture is identified for purposes of determining a characteristic intensity. For example, the touch-sensitive surface optionally receives a continuous swipe contact that transitions from a starting position to an ending position (at which point the intensity of the contact increases). In such an example, the characteristic intensity of the contact at the ending position is optionally based on only a portion of the continuous swipe contact (e.g., only a portion of the swipe contact at the ending position) rather than the entire swipe contact. In some embodiments, a smoothing algorithm is optionally applied to the intensities of the swipe contact prior to determining the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of an unweighted sliding-average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and/or an exponential smoothing algorithm. In some situations, these smoothing algorithms remove narrow spikes or dips in the intensities of the swipe contact to determine the characteristic intensity.
터치 감응형 표면 상에서의 접촉의 세기는, 선택적으로, 접촉-검출 세기 임계치, 가볍게 누르기 세기 임계치, 깊게 누르기 세기 임계치, 및/또는 하나 이상의 다른 세기 임계치들과 같은, 하나 이상의 세기 임계치들에 대해 특성화된다. 일부 실시예들에서, 가볍게 누르기 세기 임계치는, 디바이스가 물리적 마우스의 버튼 또는 트랙패드를 클릭하는 것과 전형적으로 연관된 동작들을 수행하게 될 세기에 대응한다. 일부 실시예들에서, 깊게 누르기 세기 임계치는, 디바이스가 물리적 마우스의 버튼 또는 트랙패드를 클릭하는 것과 전형적으로 연관된 동작들과는 상이한 동작들을 수행하게 될 세기에 대응한다. 일부 실시예들에서, 접촉이 가볍게 누르기 세기 임계치 미만의(예를 들어, 그리고 공칭 접촉 검출 세기 임계치(이 미만에서는 접촉이 더 이상 검출되지 않음) 초과의) 특성 세기로 검출될 때, 디바이스는 가볍게 누르기 세기 임계치 또는 깊게 누르기 세기 임계치와 연관된 동작을 수행함이 없이 터치 감응형 표면 상의 접촉의 이동에 따라 포커스 선택자를 이동시킬 것이다. 일반적으로, 달리 언급되지 않는 한, 이 세기 임계치들은 사용자 인터페이스 도면들의 상이한 세트들 사이에서 일관성이 있다.The intensity of a contact on the touch-sensitive surface is optionally characterized for one or more intensity thresholds, such as a contact-detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and/or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device would perform actions typically associated with clicking a button of a physical mouse or a trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device would perform actions that are different from actions typically associated with clicking a button of a physical mouse or a trackpad. In some embodiments, when a contact is detected with a characteristic intensity below the light press intensity threshold (e.g., and above a nominal contact detection intensity threshold below which the contact is no longer detected) the device will move the focus selector in response to movement of the contact on the touch-sensitive surface without performing an action associated with the light press intensity threshold or the deep press intensity threshold. In general, unless otherwise noted, these century thresholds are consistent across different sets of user interface drawings.
가볍게 누르기 세기 임계치 미만의 세기로부터 가볍게 누르기 세기 임계치와 깊게 누르기 세기 임계치 사이의 세기로의 접촉의 특성 세기의 증가는 때때로 "가볍게 누르기" 입력으로서 지칭된다. 깊게 누르기 세기 임계치 미만의 세기로부터 깊게 누르기 세기 임계치 초과의 세기로의 접촉의 특성 세기의 증가는 때때로 "깊게 누르기" 입력으로서 지칭된다. 접촉 검출 세기 임계치 미만의 세기로부터 접촉 검출 세기 임계치와 가볍게 누르기 세기 임계치 사이의 세기로의 접촉의 특성 세기의 증가는 때때로 터치 표면 상에서의 접촉을 검출하는 것으로서 지칭된다. 접촉 검출 세기 임계치 초과의 세기로부터 접촉 검출 세기 임계치 미만의 세기로의 접촉의 특성 세기의 감소는 때때로 터치 표면으로부터의 접촉의 리프트오프를 검출하는 것으로서 지칭된다. 일부 실시예들에서, 접촉 검출 세기 임계치는 영(0)이다. 일부 실시예들에서, 접촉 검출 세기 임계치는 0 초과이다.An increase in the characteristic intensity of a contact from below a light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold is sometimes referred to as a "light press" input. An increase in the characteristic intensity of a contact from below a deep press intensity threshold to an intensity above the deep press intensity threshold is sometimes referred to as a "deep press" input. An increase in the characteristic intensity of a contact from below a contact detection intensity threshold to an intensity between the contact detection intensity threshold and the light press intensity threshold is sometimes referred to as detecting a contact on the touch surface. A decrease in the characteristic intensity of a contact from above the contact detection intensity threshold to below the contact detection intensity threshold is sometimes referred to as detecting a liftoff of the contact from the touch surface. In some embodiments, the contact detection intensity threshold is zero (0). In some embodiments, the contact detection intensity threshold is greater than zero.
본 명세서에 설명된 일부 실시예들에서, 하나 이상의 동작들은, 개개의 누르기 입력을 포함하는 제스처를 검출하는 것에 응답하여 또는 개개의 접촉(또는 복수의 접촉들)으로 수행되는 개개의 누르기 입력을 검출하는 것에 응답하여 수행되며, 여기서 개개의 누르기 입력은 누르기 입력 세기 임계치 초과의 접촉(또는 복수의 접촉들)의 세기의 증가를 검출하는 것에 적어도 부분적으로 기초하여 검출된다. 일부 실시예들에서, 개개의 동작은, 누르기-입력 세기 임계치 초과의 개개의 접촉의 세기의 증가(예를 들어, 개개의 누르기 입력의 "다운 스트로크(down stroke)")를 검출하는 것에 응답하여 수행된다. 일부 실시예들에서, 누르기 입력은 누르기-입력 세기 임계치 초과의 개개의 접촉의 세기의 증가 및 누르기-입력 세기 임계치 미만의 접촉의 세기의 후속하는 감소를 포함하며, 개개의 동작은 누르기-입력 임계치 미만의 개개의 접촉의 세기의 후속하는 감소(예를 들어, 개개의 누르기 입력의 "업 스트로크(up stroke)")를 검출하는 것에 응답하여 수행된다.In some embodiments described herein, one or more actions are performed in response to detecting a gesture comprising an individual press input or in response to detecting an individual press input performed with an individual contact (or multiple contacts), wherein the individual press input is detected based at least in part on detecting an increase in intensity of the contact (or multiple contacts) above a press-input intensity threshold. In some embodiments, the individual action is performed in response to detecting an increase in intensity of the individual contact above the press-input intensity threshold (e.g., a “down stroke” of the individual press input). In some embodiments, the press input comprises an increase in intensity of the individual contact above the press-input intensity threshold and a subsequent decrease in intensity of the contact below the press-input intensity threshold, and the individual action is performed in response to detecting a subsequent decrease in intensity of the individual contact below the press-input threshold (e.g., an “up stroke” of the individual press input).
도 5e 내지 도 5h는 도 5e의 가볍게 누르기 세기 임계치(예를 들어, "ITL") 미만의 세기로부터 도 5h의 깊게 누르기 세기 임계치(예를 들어, "ITD") 초과의 세기로의 접촉(562)의 세기의 증가에 대응하는 누르기 입력을 포함하는 제스처의 검출을 예시한다. 미리 정의된 구역(574)에 디스플레이되는 애플리케이션 아이콘들(572A 내지 572D)을 포함하는 디스플레이된 사용자 인터페이스(570) 상에서, 커서(576)가 앱 2에 대응하는 애플리케이션 아이콘(572B) 위에 디스플레이되는 동안, 접촉(562)을 이용하여 수행된 제스처가 터치 감응형 표면(560) 상에서 검출된다. 일부 실시예들에서, 제스처는 터치 감응형 디스플레이(504) 상에서 검출된다. 세기 센서들은 터치 감응형 표면(560) 상에서의 접촉들의 세기를 검출한다. 디바이스는 접촉(562)의 세기가 깊게 누르기 세기 임계치(예를 들어, "ITD")를 초과하여 정점에 도달했다고 결정한다. 접촉(562)은 터치 감응형 표면(560) 상에서 유지된다. 제스처의 검출에 응답하여, 그리고 제스처 동안 깊게 누르기 세기 임계치(예를 들어, "ITD")를 초과하는 세기를 갖는 접촉(562)에 따라, 앱 2에 대해 최근에 열어본 문서들의 축소 스케일 표현들(578A 내지 578C)(예를 들어, 섬네일(thumbnail)들)이 디스플레이되는데, 이는 도 5f 내지 도 5h에 도시된 바와 같다. 일부 실시예들에서, 하나 이상의 세기 임계치들에 비교되는 세기는 접촉의 특성 세기이다. 접촉(562)에 대한 세기 다이어그램은 디스플레이된 사용자 인터페이스의 일부가 아니고, 독자를 돕기 위하여 도 5e 내지 도 5h에 포함된다는 것을 유의해야 한다.FIGS. 5E-5H illustrate detection of a gesture including a press input corresponding to an increase in intensity of a contact (562) from an intensity below a light press intensity threshold (e.g., "IT L ") of FIG. 5E to an intensity above a deep press intensity threshold (e.g., "IT D ") of FIG. 5H . A gesture performed using a contact (562) is detected on a touch-sensitive surface (560) while a cursor (576) is displayed over an application icon (572B) corresponding to
일부 실시예들에서, 표현들(578A 내지 578C)의 디스플레이는 애니메이션을 포함한다. 예를 들어, 도 5f에 도시된 바와 같이, 표현(578A)은 초기에 애플리케이션 아이콘(572B)에 근접하게 디스플레이된다. 애니메이션이 진행됨에 따라, 도 5g에 도시된 바와 같이, 표현(578A)은 위로 이동하고 표현(578B)은 애플리케이션 아이콘(572B)에 근접하게 디스플레이된다. 이어서, 도 5h에 도시된 바와 같이, 표현(578A)은 위로 이동하고, 표현(578B)은 표현(578A)을 향해 위로 이동하고, 표현(578C)은 애플리케이션 아이콘(572B)에 근접하게 디스플레이된다. 표현들(578A 내지 578C)은 아이콘(572B) 위에 어레이를 형성한다. 일부 실시예들에서, 도 5f 및 도 5g에 도시된 바와 같이, 애니메이션은 접촉(562)의 세기에 따라 진행되는데, 접촉(562)의 세기가 깊게 누르기 세기 임계치(예를 들어, "ITD")를 향해 증가함에 따라 표현들(578A 내지 578C)이 나타나서 위로 이동한다. 일부 실시예들에서, 애니메이션의 진행상황이 기초하는 세기는 접촉의 특성 세기이다. 도 5e 내지 도 5h를 참조하여 설명된 동작들은 디바이스(100, 300, 또는 500)와 유사하거나 동일한 전자 디바이스를 사용하여 수행될 수 있다.In some embodiments, the display of representations (578A through 578C) includes an animation. For example, as illustrated in FIG. 5F , representation (578A) is initially displayed proximate to application icon (572B). As the animation progresses, representation (578A) moves up and representation (578B) is displayed proximate to application icon (572B), as illustrated in FIG. 5G . Subsequently, as illustrated in FIG. 5H , representation (578A) moves up, representation (578B) moves up toward representation (578A), and representation (578C) is displayed proximate to application icon (572B). Representations (578A through 578C) form an array over icon (572B). In some embodiments, as illustrated in FIGS. 5F and 5G , the animation progresses based on the intensity of the contact (562), with representations (578A through 578C) appearing and moving upward as the intensity of the contact (562) increases toward a deep press intensity threshold (e.g., “IT D ”). In some embodiments, the intensity on which the animation progresses is based is a characteristic intensity of the contact. The operations described with reference to FIGS. 5E through 5H can be performed using an electronic device similar to or identical to the device (100, 300, or 500).
일부 실시예들에서, 디바이스는 때때로 "지터(jitter)"로 지칭되는 우발적인 입력들을 회피하기 위해 세기 히스테리시스를 이용하며, 여기서 디바이스는 누르기-입력 세기 임계치에 대한 미리 정의된 관계를 갖는 히스테리시스 세기 임계치(예를 들어, 히스테리시스 세기 임계치는 누르기-입력 세기 임계치보다 X 세기 단위 더 낮거나, 또는 히스테리시스 세기 임계치는 누르기-입력 세기 임계치의 75%, 90% 또는 어떤 적절한 비율임)를 정의하거나 선택한다. 따라서, 일부 실시예들에서, 누르기 입력은 누르기-입력 세기 임계치 초과의 개개의 접촉의 세기의 증가 및 누르기-입력 세기 임계치에 대응하는 히스테리시스 세기 임계치 미만의 접촉의 세기의 후속하는 감소를 포함하며, 개개의 동작은 히스테리시스 세기 임계치 미만의 개개의 접촉의 세기의 후속하는 감소(예를 들어, 개개의 누르기 입력의 "업 스트로크")를 검출하는 것에 응답하여 수행된다. 유사하게, 일부 실시예들에서, 누르기 입력은 디바이스가 히스테리시스 세기 임계치 이하에서의 세기로부터 누르기-입력 세기 임계치 이상에서의 세기로의 접촉의 세기의 증가, 및 선택적으로, 히스테리시스 세기 이하에서의 세기로의 접촉의 세기의 후속적인 감소를 검출하는 때에만 검출되고, 개개의 동작은 누르기 입력(예를 들어, 환경에 따른 접촉의 세기의 증가 또는 접촉의 세기의 감소)을 검출하는 것에 응답하여 수행된다.In some embodiments, the device utilizes intensity hysteresis to avoid accidental inputs, sometimes referred to as "jitter", wherein the device defines or selects a hysteresis intensity threshold having a predefined relationship to a press-input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the press-input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some suitable fraction of the press-input intensity threshold). Thus, in some embodiments, a press input comprises an increase in intensity of an individual contact above the press-input intensity threshold and a subsequent decrease in intensity of the contact below the hysteresis intensity threshold corresponding to the press-input intensity threshold, and the individual action is performed in response to detecting a subsequent decrease in intensity of the individual contact below the hysteresis intensity threshold (e.g., an "upstroke" of the individual press input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in intensity of the contact from an intensity below a hysteresis intensity threshold to an intensity above the press-input intensity threshold, and optionally, a subsequent decrease in intensity of the contact to an intensity below the hysteresis intensity, and the respective action is performed in response to detecting the press input (e.g., an increase in intensity of the contact or a decrease in intensity of the contact depending on the environment).
설명의 편의상, 누르기 입력 세기 임계치와 연관된 누르기 입력에 응답하여 또는 누르기 입력을 포함하는 제스처에 응답하여 수행되는 동작들의 설명은, 선택적으로, 누르기 입력 세기 임계치 초과의 접촉의 세기의 증가, 히스테리시스 세기 임계치 미만의 세기로부터 누르기 입력 세기 임계치 초과의 세기로의 접촉의 세기의 증가, 누르기 입력 세기 임계치 미만의 접촉의 세기의 감소, 및/또는 누르기 입력 세기 임계치에 대응하는 히스테리시스 세기 임계치 미만의 접촉의 세기의 감소 중 어느 하나를 검출하는 것에 응답하여 트리거된다. 부가적으로, 동작이 누르기 입력 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 수행되는 것으로서 설명되어 있는 예들에서, 동작은, 선택적으로, 누르기 입력 세기 임계치에 대응하고 그보다 더 낮은 히스테리시스 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 수행된다.For convenience of explanation, the description of actions performed in response to a press input associated with a press input intensity threshold or in response to a gesture including a press input is optionally triggered in response to detecting any one of: an increase in intensity of the contact exceeding the press input intensity threshold, an increase in intensity of the contact from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold, a decrease in intensity of the contact below the press input intensity threshold, and/or a decrease in intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold. Additionally, in examples where the action is described as being performed in response to detecting a decrease in intensity of the contact below the press input intensity threshold, the action is optionally performed in response to detecting a decrease in intensity of the contact below a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold.
본 명세서에 사용되는 바와 같이, "설치된 애플리케이션"은 전자 디바이스(예를 들어, 디바이스들(100, 300, 및/또는 500)) 상에 다운로드되어 디바이스 상에서 시작될(예를 들어, 열리게 될) 준비가 된 소프트웨어 애플리케이션을 지칭한다. 일부 실시예들에서, 다운로드된 애플리케이션은, 다운로드된 패키지로부터 프로그램 부분들을 추출하여 추출된 부분들을 컴퓨터 시스템의 운영 체제와 통합하는 설치 프로그램을 통해 설치된 애플리케이션이 된다.As used herein, an "installed application" refers to a software application that has been downloaded onto an electronic device (e.g., devices (100, 300, and/or 500)) and is ready to be launched (e.g., opened) on the device. In some embodiments, a downloaded application is an application that is installed via an installer program that extracts program portions from a downloaded package and integrates the extracted portions with the operating system of a computer system.
본 명세서에 사용되는 바와 같이, 용어들 "열린 애플리케이션" 또는 "실행 중인 애플리케이션"은 (예를 들어, 디바이스/글로벌 내부 상태(157) 및/또는 애플리케이션 내부 상태(192)의 일부로서) 보유된 상태 정보를 갖는 소프트웨어 애플리케이션을 지칭한다. 열린 또는 실행 중인 애플리케이션은, 선택적으로, 다음의 애플리케이션 유형들 중 임의의 것이다:As used herein, the terms "open application" or "running application" refer to a software application that has state information maintained (e.g., as part of the device/global internal state (157) and/or the application internal state (192)). An open or running application is, optionally, any of the following application types:
애플리케이션이 사용되고 있는 디바이스의 디스플레이 스크린 상에 현재 디스플레이되는 활성 애플리케이션; The active application currently displayed on the display screen of the device on which the application is being used;
현재 디스플레이되지 않지만, 애플리케이션에 대한 하나 이상의 프로세스들이 하나 이상의 프로세서들에 의해 프로세싱되고 있는 백그라운드 애플리케이션(또는 백그라운드 프로세스); 및 A background application (or background process) that is not currently displayed, but in which one or more processes for the application are being processed by one or more processors; and
실행 중이 아니지만, 메모리(각각 휘발성 및 비휘발성)에 저장되고 애플리케이션의 실행을 재개하는 데 사용될 수 있는 상태 정보를 갖는 보류(suspended) 또는 휴면(hibernated) 애플리케이션. A suspended or hibernated application that is not running, but has state information that is stored in memory (volatile and non-volatile, respectively) and can be used to resume execution of the application.
본 명세서에 사용되는 바와 같이, 용어 "닫힌 애플리케이션"은 보유된 상태 정보가 없는 소프트웨어 애플리케이션들을 지칭한다(예를 들어, 닫힌 애플리케이션들에 대한 상태 정보가 디바이스의 메모리에 저장되어 있지 않다). 따라서, 애플리케이션을 닫는 것은 애플리케이션에 대한 애플리케이션 프로세스들을 중지 및/또는 제거하고, 디바이스의 메모리로부터 애플리케이션에 대한 상태 정보를 제거하는 것을 포함한다. 일반적으로, 제1 애플리케이션에 있는 동안 제2 애플리케이션을 여는 것은 제1 애플리케이션을 닫지 않는다. 제2 애플리케이션이 디스플레이되고 제1 애플리케이션이 디스플레이되는 것이 중지되는 경우, 제1 애플리케이션은 백그라운드 애플리케이션으로 된다.As used herein, the term "closed application" refers to software applications that do not have any retained state information (e.g., no state information is stored in the memory of the device for closed applications). Thus, closing an application includes stopping and/or removing application processes for the application, and removing state information for the application from the memory of the device. In general, opening a second application while in a first application does not close the first application. When the second application is displayed and the first application ceases to be displayed, the first application becomes a background application.
이제, 휴대용 다기능 디바이스(100), 디바이스(300), 또는 디바이스(500)와 같은 전자 디바이스 상에서 구현되는 사용자 인터페이스("UI")들 및 연관된 프로세스들의 실시예들에 주목한다.Now, attention is drawn to embodiments of user interfaces (“UIs”) and associated processes implemented on an electronic device, such as a portable multifunction device (100), device (300), or device (500).
사용자 인터페이스들 및 연관된 프로세스들User interfaces and associated processes
그래픽 객체의 요소들을 맞춤화Customizing elements of graphic objects
사용자들은 전자 디바이스 내로 텍스트를 입력하는 것을 포함한 많은 다양한 방식들로 전자 디바이스들과 상호작용한다. 일부 실시예들에서, 전자 디바이스는 물리적 키보드의 레이아웃을 모방하고 사용자가 입력할 문자들(예를 들어, 글자들)을 선택하게 허용하는 가상 키보드(예를 들어, 소프트 키보드)를 제공한다. 일부 실시예들에서, 가상 키보드는 이모지들(및 다른 그래픽 객체들)을 선택하고 삽입하기 위한 이모지 키보드를 포함한다. 일부 실시예들에서, 디바이스는 다수의 맞춤화가능 요소들을 갖는 이모지들을 맞춤화하고 삽입하기 위한 사용자 인터페이스들을 제공하며, 따라서 디바이스와의 사용자의 상호작용들을 향상시킬 수 있다. 디바이스와의 상호작용들을 향상시키는 것은 동작들을 수행하기 위해 사용자가 필요로 하는 시간을 감소시키고, 이에 따라 디바이스의 전력 사용량을 감소시키고 배터리 작동형 디바이스들에 대한 배터리 수명을 증가시킨다. 사람들이 디바이스들을 사용하는 것으로 이해한다. 사람이 디바이스를 사용할 때, 그 사람은, 선택적으로, 디바이스의 사용자로 지칭된다.Users interact with electronic devices in a variety of ways, including entering text into the electronic device. In some embodiments, the electronic device provides a virtual keyboard (e.g., a soft keyboard) that mimics the layout of a physical keyboard and allows the user to select characters (e.g., letters) to enter. In some embodiments, the virtual keyboard includes an emoji keyboard for selecting and inserting emojis (and other graphical objects). In some embodiments, the device provides user interfaces for customizing and inserting emojis with a number of customizable elements, thereby enhancing user interactions with the device. Enhancing interactions with the device reduces the time required by the user to perform actions, thereby reducing power usage of the device and increasing battery life for battery-operated devices. It is understood that people use the devices. When a person uses the device, the person is, optionally, referred to as a user of the device.
도 6a 내지 도 6xx는 전자 디바이스가 이모지들과 같은 그래픽 객체들을 맞춤화하고 삽입하기 위한 맞춤화 사용자 인터페이스를 제시하는 예시적인 방식들을 예시한다. 이들 도면들에서의 실시예들은 도 7a 내지 도 7m을 참조하여 설명되는 프로세스들을 포함하여, 아래에서 설명되는 프로세스들을 예시하는 데 사용된다.FIGS. 6A through 6XX illustrate exemplary ways in which an electronic device presents a customized user interface for customizing and inserting graphical objects, such as emojis. The embodiments in these drawings are used to illustrate the processes described below, including the processes described with reference to FIGS. 7A through 7M.
도 6a는 터치 스크린(504)을 포함하는 예시적인 디바이스(500)를 예시한다. 도 6a에 도시된 바와 같이, 전자 디바이스(500)는 사용자 인터페이스(600)를 디스플레이한다. 일부 실시예들에서, 사용자 인터페이스(600)는 하나 이상의 텍스트 입력 필드들(예를 들어, 텍스트 입력 구역들)을 포함하는 임의의 사용자 인터페이스이다. 일부 실시예들에서, 텍스트 입력 필드(예를 들어, 텍스트 입력 구역)는 사용자가 텍스트(예를 들어, 글자들, 문자들, 단어들 등)를 입력할 수 있는 사용자 인터페이스 요소이다. 예를 들어, 텍스트 입력 필드는 애플리케이션 내의 텍스트 필드, 양식 상의 텍스트 필드, 브라우저 내의 URL 입력 요소, 로그인 필드들 등일 수 있다. 텍스트 입력 필드(예를 들어, 텍스트 입력 구역)가 텍스트만을 수용하는 사용자 인터페이스 요소로 제한되는 것이 아니라 오디오 및/또는 시각적 미디어 및/또는 임의의 다른 유형의 시각적 또는 그래픽 객체를 또한 수용 및 디스플레이할 수 있는 것이라는 것이 이해된다.FIG. 6A illustrates an exemplary device (500) including a touch screen (504). As shown in FIG. 6A, the electronic device (500) displays a user interface (600). In some embodiments, the user interface (600) is any user interface that includes one or more text input fields (e.g., text input zones). In some embodiments, a text input field (e.g., a text input zone) is a user interface element into which a user can enter text (e.g., letters, characters, words, etc.). For example, a text input field may be a text field within an application, a text field on a form, a URL input element within a browser, a login field, etc. It is to be understood that a text input field (e.g., a text input zone) is not limited to a user interface element that accepts only text, but may also accept and display audio and/or visual media and/or any other type of visual or graphical object.
도 6a에서, 사용자 인터페이스(600)는 텍스트 메시지 대화를 디스플레이하고 있는 텍스트 메시징 애플리케이션의 것이다. 일부 실시예들에서, 사용자 인터페이스(600)는 대화 구역(602), 텍스트 입력 구역(604), 및 가상 키보드(606)를 포함한다. 일부 실시예들에서, 가상 키보드(606)는 가상 키보드(606)의 디스플레이를 요청하는 사용자 입력에 응답하여 디스플레이된다. 일부 실시예들에서, 가상 키보드(606)는 객체들(예를 들어, 텍스트, 이모지들, 이미지들 등)을 텍스트 입력 구역(604) 내에 삽입하기 위한 복수의 선택가능 옵션들을 갖는 사용자 인터페이스 요소이다. 도 6a에서, 가상 키보드(606)는 이모지들을 텍스트 입력 구역(604) 내에 삽입하기 위한 하나 이상의 선택가능 옵션들을 포함하는 이모지 선택 사용자 인터페이스(이하 이모지 키보드(606)로 지칭됨)를 제시하고 있다. 일부 실시예들에서, 이모지는 그래픽 객체이다. 일부 실시예들에서, 이모지는 사람들, 장소들, 동물들, 물체들, 플래그들, 기호들 등을 표현하는 이미지, 아이콘, 심벌, 표의문자이다. 일부 실시예들에서, 이모지는, 예컨대 유니코드 표준(예를 들어, 유니코드 6.0 이상)에 의해 텍스트 문자로서 인식가능하다. 일부 실시예들에서, 이모지는 텍스트 입력 구역 내에 삽입되고 다른 전자 디바이스들로 송신될 수 있다. 일부 실시예들에서, 이모지 키보드(606)는 스마일 이모지들, 엄지손가락 위 및 아래 이모지들, 사람 이모지들, 그룹 이모지들 가족 이모지들 등을 포함한다. 일부 실시예들에서, 이용가능한 이모지들은 하나 이상의 카테고리들로 편성된다. 일부 실시예들에서, 이모지 키보드(606)는 상이한 페이지 또는 탭 상에서 각각의 카테고리를 디스플레이한다. 일부 실시예들에서, 하나 이상의 선택가능 옵션들(610)이 개개의 페이지 또는 탭으로 내비게이팅하기 위해 이모지 키보드(606) 상에서 디스플레이된다.In FIG. 6A , a user interface (600) is of a text messaging application displaying a text message conversation. In some embodiments, the user interface (600) includes a conversation area (602), a text input area (604), and a virtual keyboard (606). In some embodiments, the virtual keyboard (606) is displayed in response to user input requesting display of the virtual keyboard (606). In some embodiments, the virtual keyboard (606) is a user interface element having a plurality of selectable options for inserting objects (e.g., text, emojis, images, etc.) into the text input area (604). In FIG. 6A , the virtual keyboard (606) presents an emoji selection user interface (hereinafter referred to as the emoji keyboard (606)) that includes one or more selectable options for inserting emojis into the text input area (604). In some embodiments, an emoji is a graphical object. In some embodiments, emojis are images, icons, symbols, or ideograms that represent people, places, animals, objects, flags, signs, and the like. In some embodiments, emojis are recognizable as text characters, for example, by the Unicode standard (e.g., Unicode 6.0 or later). In some embodiments, emojis can be inserted into a text input area and transmitted to other electronic devices. In some embodiments, the emoji keyboard (606) includes smiley emojis, thumbs up and thumbs down emojis, person emojis, group emojis, family emojis, and the like. In some embodiments, the available emojis are organized into one or more categories. In some embodiments, the emoji keyboard (606) displays each category on a different page or tab. In some embodiments, one or more selectable options (610) are displayed on the emoji keyboard (606) for navigating to individual pages or tabs.
일부 실시예들에서, 이모지 키보드(606) 상의 특정 이모지들이 맞춤화가능하다. 일부 실시예들에서, 특정 맞춤화가능 이모지들은 하나의 맞춤화가능 요소를 갖는다. 예를 들어, 하나의 인간 이모지는 사람의 피부 톤을 변화시키도록 선택적으로 맞춤화가능하다. 일부 실시예들에서, 특정 맞춤화가능 이모지들은 다수의 맞춤화가능 요소들을 갖는다. 예를 들어, 그룹 이모지(예를 들어, 2명의 사람 이모지) 또는 가족 이모지(예를 들어, 3명 또는 4명의 사람 이모지)는 선택적으로, 이모지에서 표현되는 사람들 각각의 피부 톤을 변화시키도록 맞춤화가능하다. 일부 실시예들에서, 다른 맞춤화들이 가능하다. 일부 실시예들에서, 특정 맞춤화가능 이모지들은 하나 이상의 액세서리들을 갖는다. 예를 들어, 사람들에 대한 이모지는 모자, 보석 등을 추가하도록 선택적으로 맞춤화가능하다. 일반적으로, 일부 이모지들은 선택적으로, 본 개시내용의 사용자 인터페이스들을 사용하여 맞춤화가능한 다수의 맞춤화가능 시각적 요소들(예를 들어, 색상들, 객체들과 같은 시각적 요소들 등)을 포함한다.In some embodiments, certain emojis on the emoji keyboard (606) are customizable. In some embodiments, certain customizable emojis have one customizable element. For example, a single human emoji is optionally customizable to change the skin tone of the person. In some embodiments, certain customizable emojis have multiple customizable elements. For example, a group emoji (e.g., a two-person emoji) or a family emoji (e.g., a three-person or four-person emoji) is optionally customizable to change the skin tone of each of the people represented in the emoji. In some embodiments, other customizations are possible. In some embodiments, certain customizable emojis have one or more accessories. For example, an emoji of people is optionally customizable to add a hat, jewelry, etc. In general, some emojis optionally include multiple customizable visual elements (e.g., colors, visual elements such as objects, etc.) that are customizable using the user interfaces of the present disclosure.
도 6a에 도시된 바와 같이, 이모지 키보드(606)는 8개의 이모지들(608-1 내지 608-8)을 포함한다. 이모지들(608-1, 608-2)은 스마일(smile) 및 찌푸림(frown) 이모지에 대응하고 맞춤화가능 요소들을 갖지 않는다. 이모지들(608-3, 608-4)은 남성 캐릭터 및 여성 캐릭터 이모지에 대응하고, 단일 맞춤화가능 요소(예를 들어, 이모지에서 표현된 사람)를 갖는다. 이모지들(608-5, 608-6)은 여성-남성 그룹 및 여성-여성 그룹에 대응하고, 2개의 맞춤화가능 요소들(예를 들어, 이모지에서 표현된 2명의 사람들)을 갖는다. 이모지 키보드(606)는 선택적으로 이모지(608-7, 608-8)와 같은 다른 이모지들을 포함하고, 선택적으로 다른 이모지들을 드러내도록 스크롤링가능하다.As illustrated in FIG. 6A, the emoji keyboard (606) includes eight emojis (608-1 to 608-8). Emojis (608-1, 608-2) correspond to smile and frown emojis and do not have customizable elements. Emojis (608-3, 608-4) correspond to male character and female character emojis and have a single customizable element (e.g., a person represented in the emoji). Emojis (608-5, 608-6) correspond to female-male groups and female-female groups and have two customizable elements (e.g., two people represented in the emoji). The emoji keyboard (606) optionally includes other emojis, such as emojis (608-7, 608-8), and is optionally scrollable to reveal other emojis.
본 명세서에 예시된 이모지들이 단지 예시적인 것이며, 본 명세서에 예시되고 설명된 것들 이외의 이모지들이 어떠한 맞춤화가능 요소들도 갖지 않거나 하나 또는 다수의 맞춤화가능 요소들 중 임의의 것을 갖는다는 것이 이해된다. 도 6a 내지 도 6xx에 도시된 예들은 예시적인 것이며, 예시된 사용자 인터페이스들 및/또는 애플리케이션들만으로 제한하는 것으로 간주되어서는 안된다는 것이 이해된다.It is to be understood that the emojis illustrated herein are merely exemplary, and that emojis other than those illustrated and described herein may have no customizable elements or may have any of one or more customizable elements. It is to be understood that the examples illustrated in FIGS. 6A-6XX are exemplary, and should not be considered limiting to the illustrated user interfaces and/or applications.
도 6b에서, 스마일 이모지에 대응하는 이모지(608-1)를 선택하는 사용자 입력(603)이 터치 스크린(504) 상에서 수신(예를 들어, 검출)된다. 일부 실시예들에서, 이모지(608-1)를 선택하는 사용자 입력(603)은 이모지(608-1)를 텍스트 입력 구역(604) 내에 삽입하라는 요청에 대응한다. 일부 실시예들에서, 사용자 입력(603)은 탭 입력이다. 예를 들어, 도 6b에 예시된 사용자 입력(603)은 타이머(612)에 의해 예시된 바와 같이, 미리 결정된 임계치(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 미만 동안의 접촉이다. 일부 실시예들에서, 이모지(608-1)는 어떠한 맞춤화가능 요소들도 갖지 않는다. 따라서, 일부 실시예들에서, 사용자 입력에 응답하여, 디바이스(500)는 도 6c에 도시된 바와 같이, 이모지(608-1)를 텍스트 입력 구역(604) 내에 삽입한다. 일부 실시예들에서, 삽입된 캐릭터(예를 들어, 이모지(608-1))를 수신하는 텍스트 입력 구역에 응답하여, 텍스트 입력 구역(604) 내의 텍스트를 (예를 들어, 텍스트 메시지로서) 송신(예를 들어, 전송)하도록 선택가능한 송신 옵션(616)이 디스플레이된다.In FIG. 6b, a user input (603) selecting an emoji (608-1) corresponding to a smiley emoji is received (e.g., detected) on the touch screen (504). In some embodiments, the user input (603) selecting the emoji (608-1) corresponds to a request to insert the emoji (608-1) into the text input area (604). In some embodiments, the user input (603) is a tap input. For example, the user input (603) illustrated in FIG. 6b is a contact for less than a predetermined threshold (e.g., 0.1 second, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as illustrated by the timer (612). In some embodiments, the emoji (608-1) does not have any customizable elements. Accordingly, in some embodiments, in response to a user input, the device (500) inserts an emoji (608-1) into the text input area (604), as illustrated in FIG. 6C . In some embodiments, in response to the text input area receiving the inserted character (e.g., the emoji (608-1)), a selectable transmission option (616) is displayed to transmit (e.g., send) the text in the text input area (604) (e.g., as a text message).
도 6c에서, 여성 캐릭터 이모지에 대응하는 이모지(608-4)를 선택하는 사용자 입력(603)이 터치 스크린(504) 상에서 수신된다. 위에서 설명된 바와 같이, 이모지(608-4)는 하나의 맞춤화가능 요소를 갖는다. 도 6c에 예시된 실시예에서, 이모지(608-4)는 이전에 맞춤화되지 않았다(예를 들어, 사용자는 맞춤화가능 요소의 변형을 이전에 선택하지 않았다). 일부 실시예들에서, 이모지(608-4)를 선택하는 사용자 입력(603)은 (예를 들어, 이모지가 아직 맞춤화되지 않았기 때문에) 이모지(608-4)를 맞춤화하라는 요청에 대응한다. 일부 실시예들에서, 이모지(608-4)를 선택하는 사용자 입력(603)은 이모지(608-4)를 텍스트 입력 구역(604) 내에 삽입하라는 요청에 대응한다. 일부 실시예들에서, 사용자 입력(603)은 탭 입력이다. 예를 들어, 도 6c에 예시된 사용자 입력(603)은 타이머(612)에 의해 예시된 바와 같이, 미리 결정된 임계치(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 미만 동안의 접촉이다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6d에 도시된 바와 같이, 단일-요소 맞춤화 사용자 인터페이스(618)를 디스플레이하는데, 이는 이모지(608-4)가 사용자에 의해 아직 맞춤화되지 않았기 때문이다. 일부 실시예들에서, 단일-요소 맞춤화 사용자 인터페이스(618)는 사용자가 이모지를 이전에 맞춤화하지 않은 경우에만 탭 입력에 응답하여 디스플레이된다. 일부 실시예들에서, 단일-요소 맞춤화 사용자 인터페이스(618)는 사용자가 이모지를 이전에 맞춤화하였는지 여부에 관계없이 탭 입력에 응답하여 항상 디스플레이된다. 일부 실시예들에서, 단일-요소 맞춤화 사용자 인터페이스(618)는 단지 미리 결정된 임계치보다 긴 접촉 지속기간을 갖는 사용자 입력(예를 들어, "길게 누르기" 또는 "탭 및 유지" 입력)에 응답해서만 디스플레이된다.In FIG. 6C , a user input (603) is received on the touch screen (504) selecting an emoji (608-4) corresponding to a female character emoji. As described above, the emoji (608-4) has a single customizable element. In the embodiment illustrated in FIG. 6C , the emoji (608-4) has not previously been customized (e.g., the user has not previously selected a variation of the customizable element). In some embodiments, the user input (603) selecting the emoji (608-4) corresponds to a request to customize the emoji (608-4) (e.g., because the emoji has not yet been customized). In some embodiments, the user input (603) selecting the emoji (608-4) corresponds to a request to insert the emoji (608-4) into the text input area (604). In some embodiments, the user input (603) is a tap input. For example, the user input (603) illustrated in FIG. 6c is a contact for less than a predetermined threshold (e.g., 0.1 second, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as illustrated by the timer (612). In some embodiments, in response to the user input (603), the device (500) displays a single-element customization user interface (618), as illustrated in FIG. 6d, because the emoji (608-4) has not yet been customized by the user. In some embodiments, the single-element customization user interface (618) is displayed in response to a tap input only if the user has not previously customized the emoji. In some embodiments, the single-element customization user interface (618) is always displayed in response to a tap input, regardless of whether the user has previously customized the emoji. In some embodiments, the single-element customization user interface (618) is displayed only in response to user input having a contact duration longer than a predetermined threshold (e.g., a “long press” or “tap and hold” input).
도 6d에 도시된 바와 같이, 단일-요소 맞춤화 사용자 인터페이스(618)는 이모지(608-4)의 하나 이상의 변형들의 하나 이상의 표현들을 포함하는 사용자 인터페이스 요소이다. 예를 들어, 이모지(608-4)의 맞춤화가능 요소는 이모지(608-4)에서의 여성 캐릭터의 피부 톤이다. 도 6d에 도시된 바와 같이, 단일-요소 맞춤화 사용자 인터페이스(618)는 변형들(620, 및 622-1 내지 622-3)을 포함한다. 일부 실시예들에서, 변형(620)은 이모지(608-4)의 디폴트 변형(예를 들어, 임의의 특정 피부 톤을 표현하지 않는 디폴트 색상, 예컨대 황색을 갖는 이모지)에 대응한다. 일부 실시예들에서, 변형들(622-1 내지 622-3)은 이모지(608-4)의 맞춤화가능 피부 톤들에 대응한다. 일부 실시예들에서, 단일-요소 맞춤화 사용자 인터페이스(618)는 디폴트 변형(620)과 맞춤형 변형들(622-1 내지 622-3) 사이의 시각적 묘사(delineation)를 포함한다. 일부 실시예들에서, 디폴트 변형(620)은 맞춤형 변형들(622-1 내지 622-3)로부터 시각적으로 분리된 것으로 디스플레이된다. 일부 실시예들에서, 변형들(620 및 622-1 내지 622-3)은, 1) 개개의 변형을 선택하고, 2) 개개의 변형을 텍스트 입력 필드(618) 내에 삽입하는 둘 모두를 행하도록 선택가능하다. 예를 들어, 도 6d에서, 변형(622-2)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 변형(622-2)을 선택하는 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6e에 도시된 바와 같이, 이모지(608-4)의 변형(622-2)을 캐릭터(614-2)로서 텍스트 입력 필드(604) 내에 삽입한다. 도 6e에 도시된 바와 같이, 변형(622-2)을 텍스트 입력 필드(604) 내에 삽입하는 것에 부가하여, 디바이스(500)는, (예를 들어, 사용자 입력에 응답하여) 이모지(608-4)가 선택된 변형(622-2)으로 디스플레이되도록 이모지 키보드(606)를 업데이트한다.As illustrated in FIG. 6d , the single-element customization user interface (618) is a user interface element that includes one or more representations of one or more variations of the emoji (608-4). For example, the customizable element of the emoji (608-4) is the skin tone of the female character in the emoji (608-4). As illustrated in FIG. 6d , the single-element customization user interface (618) includes variations (620, and 622-1 through 622-3). In some embodiments, variation (620) corresponds to a default variation of the emoji (608-4) (e.g., an emoji having a default color that does not represent any particular skin tone, such as yellow). In some embodiments, variations (622-1 through 622-3) correspond to customizable skin tones of the emoji (608-4). In some embodiments, the single-element customization user interface (618) includes a visual delineation between the default variant (620) and the custom variants (622-1 through 622-3). In some embodiments, the default variant (620) is displayed as visually separated from the custom variants (622-1 through 622-3). In some embodiments, the variants (620 and 622-1 through 622-3) are selectable to both: 1) select an individual variant; and 2) insert an individual variant into the text input field (618). For example, in FIG. 6d , user input (603) is received selecting (e.g., tapping) a variant (622-2). In some embodiments, in response to user input (603) selecting a variant (622-2), the device (500) inserts the variant (622-2) of the emoji (608-4) as a character (614-2) into the text input field (604), as illustrated in FIG. 6E . In addition to inserting the variant (622-2) into the text input field (604), as illustrated in FIG. 6E , the device (500) updates the emoji keyboard (606) such that the emoji (608-4) is displayed as the selected variant (622-2).
도 6e 내지 도 6ee는 다수의 맞춤화가능 요소들을 갖는 이모지들을 맞춤화하고 삽입하는 방법들을 예시한다. 도 6e에서, 여성-여성 그룹 이모지에 대응하는 이모지(608-6)를 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 이모지(608-6)는 2개의 맞춤화가능 요소들을 갖는다. 예를 들어, 이모지(608-6)는 2명의 사람들의 표현(예를 들어, 그룹 이모지)이다. 일부 실시예들에서, 이모지(608-6) 내의 각각의 사람의 피부 톤은 맞춤화가능하다. 도 6e에 예시된 실시예에서, 이모지(608-6)는 이전에 맞춤화되지 않았다(예를 들어, 사용자는 맞춤화가능 요소들 중 임의의 요소에 대한 옵션 또는 변형을 이전에 선택하지 않았다). 일부 실시예들에서, 이모지(608-6)를 선택하는 사용자 입력(603)은 (예를 들어, 이모지(608-6)가 아직 맞춤화되지 않았기 때문에) 이모지(608-6)를 맞춤화하라는 요청에 대응한다. 일부 실시예들에서, 이모지(608-6)를 선택하는 사용자 입력(603)은 이모지(608-6)를 텍스트 입력 구역(604) 내에 삽입하라는 요청에 대응한다. 일부 실시예들에서, 사용자 입력(603)은 탭 입력이다. 예를 들어, 도 6e에 예시된 사용자 입력(603)은 타이머(612)에 의해 예시된 바와 같이, 미리 결정된 임계치(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 미만 동안의 접촉이다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6f에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(624)를 디스플레이한다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(624)는 사용자가 이모지의 맞춤화를 아직 완료하지 않은 경우에만 탭 입력에 응답하여 디스플레이된다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(624)는 사용자가 이모지를 이전에 맞춤화하였는지 여부에 관계없이 탭 입력에 응답하여 항상 디스플레이된다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(624)는 단지 미리 결정된 임계치보다 긴 접촉 지속기간을 갖는 사용자 입력에 응답해서만 디스플레이된다.FIGS. 6E-6EE illustrate methods of customizing and inserting emojis having multiple customizable elements. In FIG. 6E, a user input (603) is received selecting (e.g., tapping) an emoji (608-6) corresponding to a female-female group emoji. In some embodiments, the emoji (608-6) has two customizable elements. For example, the emoji (608-6) is a representation of two people (e.g., a group emoji). In some embodiments, the skin tone of each person in the emoji (608-6) is customizable. In the embodiment illustrated in FIG. 6E, the emoji (608-6) has not previously been customized (e.g., the user has not previously selected an option or variation for any of the customizable elements). In some embodiments, the user input (603) selecting an emoji (608-6) corresponds to a request to customize the emoji (608-6) (e.g., because the emoji (608-6) has not yet been customized). In some embodiments, the user input (603) selecting an emoji (608-6) corresponds to a request to insert the emoji (608-6) into the text input area (604). In some embodiments, the user input (603) is a tap input. For example, the user input (603) illustrated in FIG. 6E is a contact for less than a predetermined threshold (e.g., 0.1 seconds, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as illustrated by the timer (612). In some embodiments, in response to user input (603), the device (500) displays a multi-element customization user interface (624), as illustrated in FIG. 6F. In some embodiments, the multi-element customization user interface (624) is displayed in response to a tap input only if the user has not yet completed customizing the emoji. In some embodiments, the multi-element customization user interface (624) is always displayed in response to a tap input, regardless of whether the user has previously customized the emoji. In some embodiments, the multi-element customization user interface (624) is only displayed in response to a user input having a contact duration longer than a predetermined threshold.
도 6f에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(624)는 이모지(608-6)를 맞춤화하기 위한 변형들의 2개의 행(row)들을 포함한다. 일부 실시예들에서, 제1 행은 제1 맞춤화가능 요소(예를 들어, 이모지의 좌측 상의 사람)의 변형들에 대응하는 이모지(608-6)의 변형들(626-1 내지 626-4)을 포함한다. 일부 실시예들에서, 제2 행은 제2 맞춤화가능 요소(예를 들어, 이모지의 우측 상의 사람)에 대응하는 이모지(608-6)의 변형들(628-1 내지 628-4)를 포함한다. 예를 들어, 이모지(608-6)에 대한 제1 맞춤화가능 요소는 이모지(608-6) 내의 좌측 사람의 피부 톤이고, 이모지(608-6)에 대한 제2 맞춤화가능 요소는 이모지(608-6) 내의 우측 사람에 대한 피부 톤이다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(624)의 제1 및 제2 행들 내의 변형들은 맞춤화가능한 요소들 각각을 디스플레이한다(예를 들어, 개개의 행에 의해 맞춤화되지 않은 이모지의 부분들을 크롭핑 어웨이(crop away)하지 않으면서 전체 이모지를 디스플레이한다). 일부 실시예들에서, 제1 행 내의 변형들의 표현들은 좌측 사람에 대한 개개의 변형으로 디스플레이된다(예를 들어, 각각의 선택가능 옵션은 상이한 피부 톤을 갖는 좌측 사람을 디스플레이한다). 일부 실시예들에서, 제1 행 내의 표현들은, 제1 행이 우측 사람을 맞춤화하기 위한 것이 아니라는(예를 들어, 우측 사람을 맞춤화하도록 선택가능하지 않다는) 것을 표시하기 위해 플레이스홀더 외관(예를 들어, 그레이 아웃됨)을 갖는 우측 사람과 함께 디스플레이된다. 일부 실시예들에서, 제2 행 내의 표현들은 우측 사람에 대한 개개의 변형으로 디스플레이된다(예를 들어, 각각의 선택가능 옵션은 상이한 피부 톤을 갖는 우측 사람을 디스플레이한다). 일부 실시예들에서, 제2 행 내의 표현들은, 제2 행이 좌측 사람을 맞춤화하기 위한 것이 아니라는(예를 들어, 좌측 사람을 맞춤화하도록 선택가능하지 않다는) 것을 표시하기 위해 플레이스홀더 외관(예를 들어, 그레이 아웃됨)을 갖는 좌측 사람과 함께 디스플레이된다. 일부 실시예들에서, 위에서 설명된 좌측 및 우측 사람들에 대한 변형 옵션들 중 임의의 옵션은 아래에 설명되는 디폴트 변형(예를 들어, 이모지들의 디폴트 착색(coloration)에 해당하는 황색 착색)일 수 있다. 일부 실시예들에서, 위에서 설명된 변형 옵션들 중 어느 것도 디폴트 변형이 아니다(예를 들어, 그것은 행들에서 옵션으로서 열거되지 않고, 좌측 또는 우측 사람 중 임의의 사람에 대한 맞춤화로서 선택가능하지 않다). 그러한 실시예들에서, 디폴트 변형은 선택가능 요소들을 맞춤화하기 위한 옵션이 아니다. 그러한 실시예들에서, 사용자는 선택가능 요소들 중 어느 하나에 대한 디폴트 변형을 선택할 수 없고(예를 들어, 하나의 요소에 대한 디폴트 변형 및 다른 요소에 대한 피부 톤 변형, 또는 둘 모두의 요소들에 대한 디폴트 변형도 선택할 수 없고), 사용자는 선택가능 요소들에 대한 피부 톤 변형만을 선택할 수 있다. 본 명세서에 설명된 바와 같이, 디폴트 변형(예를 들어, 이모지들의 디폴트 착색에 대응하는 황색 착색)은 (예를 들어, 이모지를 맞춤화하도록 선택가능한 것들과 같은) 피부 톤 변형이 아니고, 단지 이모지들의 디폴트 착색일 뿐이며, 특정 피부 톤을 표현하지 않는다.As illustrated in FIG. 6F , the multi-element customization user interface (624) includes two rows of variations for customizing the emoji (608-6). In some embodiments, the first row includes variations (626-1 through 626-4) of the emoji (608-6) that correspond to variations of a first customizable element (e.g., the person on the left side of the emoji). In some embodiments, the second row includes variations (628-1 through 628-4) of the emoji (608-6) that correspond to a second customizable element (e.g., the person on the right side of the emoji). For example, the first customizable element for the emoji (608-6) is the skin tone of the left person in the emoji (608-6), and the second customizable element for the emoji (608-6) is the skin tone of the right person in the emoji (608-6). In some embodiments, the variations within the first and second rows of the multi-element customization user interface (624) display each of the customizable elements (e.g., displaying the entire emoji without cropping away portions of the emoji that are not customized by the individual rows). In some embodiments, the representations of the variations within the first row are displayed as individual variations for the left person (e.g., each selectable option displays the left person with a different skin tone). In some embodiments, the representations within the first row are displayed with the right person having a placeholder appearance (e.g., grayed out) to indicate that the first row is not intended for customizing the right person (e.g., the right person is not selectable to customize). In some embodiments, the representations within the second row are displayed as individual variations for the right person (e.g., each selectable option displays the right person with a different skin tone). In some embodiments, the expressions in the second row are displayed with the left person having a placeholder appearance (e.g., grayed out) to indicate that the second row is not intended for customizing the left person (e.g., is not selectable to customize the left person). In some embodiments, any of the transformation options for the left and right people described above may be a default transformation described below (e.g., a yellow coloring corresponding to the default coloration of emojis). In some embodiments, none of the transformation options described above are default transformations (e.g., they are not listed as options in the rows and are not selectable as a customization for either the left or right person). In such embodiments, the default transformation is not an option for customizing the selectable elements. In such embodiments, a user cannot select a default transformation for either of the selectable elements (e.g., a default transformation for one element and a skin tone transformation for another element, or a default transformation for both elements), and the user can only select a skin tone transformation for the selectable elements. As described herein, the default variation (e.g., a yellow tint corresponding to the default tint of the emoji) is not a skin tone variation (such as those selectable to customize the emoji), but is merely the default tint of the emoji and does not represent a particular skin tone.
일부 실시예들에서, 제3 행은 이모지(608-6)에 대한 디폴트 변형(630-1)을 포함한다. 예를 들어, 디폴트 변형(630-1)은 좌측 및 우측 사람 둘 모두에 대한 디폴트 착색(예를 들어, 임의의 특정 피부 톤을 표현하지 않는 이모지들의 디폴트 착색, 예컨대 황색)을 갖는다. 일부 실시예들에서, 제3 행은 이모지(608-6)에 대한 맞춤화된 변형(630-2)을 포함한다. 일부 실시예들에서, 이모지(608-6)가 임의의 맞춤화들을 갖지 않았다면(예를 들어, 제1 및 제2 행들로부터의 어떠한 옵션들도 선택되지 않았다면), 맞춤화된 변형(630-2)은 사람들 둘 모두(예를 들어, 맞춤화가능 요소들 둘 모두)에 대한 플레이스홀더 요소들로 디스플레이된다. 예를 들어, 도 6f에서, 맞춤화된 변형(630-2) 내의 사람들 둘 모두는 어떠한 맞춤화들도 선택되지 않았다는 것을 표시하기 위해 플레이스홀더 외관(예를 들어, 그레이 아웃됨)으로 디스플레이된다. 아래에서 더 상세히 설명될 바와 같이, 맞춤화된 변형(630-2)은 맞춤화가 완료되면 맞춤화된 변형을 텍스트 입력 필드 내에 삽입하도록 선택가능하다.In some embodiments, the third row includes a default variation (630-1) for emoji (608-6). For example, the default variation (630-1) has a default coloring for both the left and right person (e.g., the default coloring for emojis that do not express any particular skin tone, such as yellow). In some embodiments, the third row includes a customized variation (630-2) for emoji (608-6). In some embodiments, if emoji (608-6) did not have any customizations (e.g., no options from the first and second rows were selected), the customized variation (630-2) is displayed with placeholder elements for both people (e.g., both customizable elements). For example, in FIG. 6F , both people in the customized variation (630-2) are displayed with a placeholder appearance (e.g., grayed out) to indicate that no customizations were selected. As described in more detail below, the customized variation (630-2) may be optionally inserted into a text input field when customization is complete.
도 6f에서, 디폴트 변형(630-1)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6g에 도시된 바와 같이, 이모지(608-6)의 디폴트 변형(630-1)을 텍스트 입력 구역(604) 내에 삽입한다. 도 6g에 도시된 바와 같이, 변형(630-1)이 사용자가 가장 최근에 선택했고 그리고/또는 텍스트 입력 구역(604) 내에 삽입한 변형이기 때문에, 이모지 키보드(606) 상의 이모지(608-6)가 디폴트 변형(630-1)으로서 디스플레이된다.In FIG. 6f, a user input (603) is received selecting (e.g., tapping) a default variation (630-1). In some embodiments, in response to the user input (603), the device (500) inserts the default variation (630-1) of the emoji (608-6) into the text input area (604), as illustrated in FIG. 6g. As illustrated in FIG. 6g, the emoji (608-6) on the emoji keyboard (606) is displayed as the default variation (630-1) because the variation (630-1) is the variation that the user most recently selected and/or inserted into the text input area (604).
도 6g에서, 이모지 키보드(606) 상에서 이모지(608-6)를 선택하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 사용자 입력(603)은 탭 입력이다. 예를 들어, 도 6g에 예시된 사용자 입력(603)은 타이머(612)에 의해 예시된 바와 같이, 미리 결정된 임계치(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 미만 동안의 접촉이다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6h에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(624)를 디스플레이한다. 일부 실시예들에서, 맞춤화가능 요소들 각각에 대한 변형들이 아직 선택되지 않았기 때문에, 이모지(608-6)는 완전히 맞춤화되지 않았으며, 따라서, 이모지 키보드(606)의 이모지(608-6)의 선택은 다중-요소 맞춤화 사용자 인터페이스(624)의 디스플레이를 야기한다.In FIG. 6g, a user input (603) is received selecting an emoji (608-6) on an emoji keyboard (606). In some embodiments, the user input (603) is a tap input. For example, the user input (603) illustrated in FIG. 6g is a contact for less than a predetermined threshold (e.g., 0.1 second, 0.25 second, 0.5 second, 1 second, 3 seconds, 5 seconds, etc.), as illustrated by a timer (612). In some embodiments, in response to the user input (603), the device (500) displays a multi-element personalized user interface (624), as illustrated in FIG. 6h. In some embodiments, the emoji (608-6) is not fully customized because variations for each of the customizable elements have not yet been selected, and thus, selection of the emoji (608-6) in the emoji keyboard (606) causes display of the multi-element customization user interface (624).
도 6h에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(624)는 맞춤화된 변형(630-2)의 이전 상태를 유지한다. 예를 들어, 맞춤화된 변형(630-2) 내의 사람들 둘 모두(예를 들어, 맞춤화가능 요소들 둘 모두)는 어떠한 맞춤화들도 아직 선택되지 않았다는 것을 표시하기 위해 플레이스홀더 외관(예를 들어, 회색 착색됨, 그레이 아웃됨 등)을 갖는다. 도 6h에서, 맞춤화된 변형(630-2)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 이모지(608-6)가 맞춤화되지 않았기 때문에, 맞춤화된 표현(630-2)을 선택하는 것은 텍스트 입력 필드(604) 내로의 맞춤화된 변형(630-2)의 삽입을 야기하지 않는다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6i에 도시된 바와 같이, 개개의 맞춤화가능 요소들이 아직 맞춤화되지 않았고, 맞춤화된 표현을 텍스트 입력 필드 내에 삽입하기 위해 개개의 맞춤화가능 요소들의 선택이 요구된다는 것을 표시하기 위한 표시(632)를 디스플레이한다. 예를 들어, 도 6i에 도시된 바와 같이, 표시(632)는 애니메이션이다. 일부 실시예들에서, 애니메이션은 아직 맞춤화되지 않은 각각의 맞춤화가능 변형에 대한 선택가능 옵션들의 크기를 순간적으로 증가시키는 것을 포함한다. 일부 실시예들에서, 애니메이션은 애니메이션이 (예를 들어, 파동과 유사하게) 하나의 단부로부터 시작하여 다른 단부로 이동하도록 적어도 부분적으로 스태거링(stagger)된다. 예를 들어, 변형(626-1)은 먼저 크기가 증가하고, 변형(626-1)이 크기가 감소함에 따라 변형(626-2)은 크기가 증가하기 시작하는 식이다. 일부 실시예들에서, 제1 및 제2 행들 내의 변형들 각각이 애니메이션화된다. 일부 실시예들에서, 애니메이션은 제1 및 제2 행들 상에서 동시에 수행된다(예를 들어, 파동이 변형들의 제2 행을 아래로 이동시키는 것과 동시에 파동은 변형들의 제1 행을 아래로 이동시킨다). 아래에서 더 상세히 설명될 바와 같이, 맞춤화(예를 들어, 아직 맞춤화되지 않았음)를 요구하는 맞춤화가능 변형들에 대응하는 행(들)은 애니메이션화되는 반면, 이미 맞춤화된 맞춤화가능 변형들에 대응하는 행(들)은 애니메이션화되지 않는다.As illustrated in FIG. 6h , the multi-element customization user interface (624) retains the previous state of the customized variation (630-2). For example, both people (e.g., both customizable elements) within the customized variation (630-2) have a placeholder appearance (e.g., grayed out, grayed out, etc.) to indicate that no customizations have yet been selected. In FIG. 6h , a user input (603) is received selecting (e.g., tapping) the customized variation (630-2). In some embodiments, because the emoji (608-6) is not customized, selecting the customized expression (630-2) does not result in insertion of the customized variation (630-2) into the text input field (604). In some embodiments, in response to user input (603), the device (500) displays an indicia (632) to indicate that individual customizable elements have not yet been customized and that selection of individual customizable elements is required to insert a customized expression into the text input field, as illustrated in FIG. 6i . For example, as illustrated in FIG. 6i , the indicia (632) is an animation. In some embodiments, the animation comprises momentarily increasing the size of the selectable options for each customizable variation that has not yet been customized. In some embodiments, the animation is at least partially staggered such that the animation begins at one end and moves to the other end (e.g., similar to a wave). For example, variation (626-1) first increases in size, and as variation (626-1) decreases in size, variation (626-2) begins to increase in size, and so on. In some embodiments, each of the variations within the first and second rows is animated. In some embodiments, the animation is performed simultaneously on the first and second rows (e.g., the wave moves down the first row of transformations at the same time that the wave moves down the second row of transformations). As described in more detail below, the row(s) corresponding to customizable transformations that require customization (e.g., have not yet been customized) are animated, while the row(s) corresponding to customizable transformations that have already been customized are not animated.
따라서, 일부 실시예들에서, 이모지(608-6)의 맞춤화가능 요소들 모두에 대한 맞춤화가 완료될 때까지, 맞춤화된 변형(630-2)은 이모지(608-6)의 맞춤형 변형을 텍스트 입력 구역 내에 삽입하도록 선택가능하지 않다. 일부 실시예들에서, 맞춤화된 변형(630-2)에 대해 디폴트 맞춤화가 선택되지 않는데, 그 이유는, 맞춤화가 선택적으로는 이모지(608-6) 내의 사람들의 피부 톤의 것이고, 맞춤화된 변형(630-2)에 대한 디폴트 피부 톤이 전자 디바이스의 제조자(또는 제공자)에 의해 선택되지 않기 때문이다. 일부 실시예들에서, 사용자가 맞춤화가능 이모지들에서 각각의 사람의 피부 톤의 초기 선택들을 수행하게 허용하는 것이 바람직하다. 따라서, 일부 실시예들에서, 맞춤화가능 요소들에 대한 디폴트 피부 톤들을 선택하는 대신 플레이스홀더 요소들을 사용하는 것은 이용가능한 피부 톤 옵션들에 대해 중립 위치를 유지한다. 이러한 방식으로, 맞춤화된 변형(630-2)은 (암시적이든 아니든) 어떠한 편견 없이 사용자의 맞춤화들 및 선호도들을 실제로 반영한다.Thus, in some embodiments, until customization of all of the customizable elements of the emoji (608-6) is complete, the customized variation (630-2) is not selectable to insert the customized variation of the emoji (608-6) into the text input area. In some embodiments, the default customization is not selected for the customized variation (630-2) because the customization is optionally of a skin tone of the person within the emoji (608-6), and the default skin tone for the customized variation (630-2) is not selected by the manufacturer (or provider) of the electronic device. In some embodiments, it is desirable to allow the user to make initial selections of the skin tone of each person in the customizable emoji. Thus, in some embodiments, using placeholder elements instead of selecting default skin tones for the customizable elements maintains a neutral position with respect to the available skin tone options. In this way, the customized variant (630-2) actually reflects the user's customizations and preferences without any bias (implicit or not).
도 6j에서, 변형(626-1)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 변형(626-1)은 이모지(608-6)의 좌측 사람에 대한 맞춤화가능 옵션에 대응한다. 일부 실시예들에서, 변형(626-1)은 이모지(608-6)의 좌측 사람에 대한 맞춤형 변형(예를 들어, 좌측 사람에 대한 맞춤화가능 피부 톤)이다. 일부 실시예들에서, 디폴트 변형(예를 들어, 피부 톤을 표현하지 않는 황색 착색)은 옵션으로서 제공되지 않는다. 일부 실시예들에서, 변형(626-1)을 선택하는 사용자 입력(603)에 응답하여, 변형(626-1)은 도 6k에 도시된 바와 같이, 변형(626-1)이 (예를 들어, 점선들로 도시된 바와 같이) 선택되었다는 시각적 표시로 업데이트된다. 일부 실시예들에서, 변형(626-1)을 선택하는 사용자 입력(603)에 응답하여, 맞춤화된 변형(630-2)은 도 6k에 도시된 바와 같이 변형(626-1)의 사용자의 선택을 반영하도록 업데이트된다. 일부 실시예들에서, 시각적 표시는 변형을 하이라이트하는 것(예를 들어, 이모지 주위의 박스의 배경 색상을 청색, 황색, 적색 등으로 변화시키는 것)을 포함한다. 일부 실시예들에서, 다른 시각적 특성들 또는 표시들이 가능하다. 도 6k에 도시된 바와 같이, 맞춤화된 변형(630-2) 내의 좌측 사람이 변형(626-1)의 선택된 피부 톤을 갖는 반면, 우측 사람이 사용자에 의해 아직 맞춤화되지 않았기 때문에 우측 사람이 플레이스홀더 요소(예를 들어, 그레이 아웃되는 것과 같은 플레이스홀더 외관을 가짐)로서 유지되도록 맞춤화된 변형(630-2)이 업데이트된다.In FIG. 6j , a user input (603) is received selecting (e.g., tapping) a variant (626-1). In some embodiments, the variant (626-1) corresponds to a customizable option for the left person of emoji (608-6). In some embodiments, the variant (626-1) is a customized variant for the left person of emoji (e.g., a customizable skin tone for the left person). In some embodiments, a default variant (e.g., a yellow tint that does not represent a skin tone) is not provided as an option. In some embodiments, in response to the user input (603) selecting the variant (626-1), the variant (626-1) is updated with a visual indication that the variant (626-1) is selected (e.g., as shown in dashed lines), as illustrated in FIG. 6k . In some embodiments, in response to user input (603) selecting a variant (626-1), the customized variant (630-2) is updated to reflect the user's selection of the variant (626-1), as illustrated in FIG. 6K . In some embodiments, the visual indication includes highlighting the variant (e.g., changing the background color of the box around the emoji to blue, yellow, red, etc.). In some embodiments, other visual characteristics or indications are possible. As illustrated in FIG. 6K , the customized variant (630-2) is updated such that the left person in the customized variant (630-2) has the selected skin tone of variant (626-1), while the right person remains as a placeholder element (e.g., has a placeholder appearance, such as being grayed out) because the right person has not yet been customized by the user.
도 6k에서, 맞춤화된 변형(630-2)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 이모지(608-6)가 아직 완전히 맞춤화되지 않았기 때문에(예를 들어, 좌측 사람만이 맞춤화되었지만, 우측 사람이 아직 맞춤화되지 않았기 때문에), 맞춤화된 변형(630-2)을 선택하는 것은 텍스트 입력 필드(604) 내로의 맞춤화된 변형(630-2)의 삽입을 야기하지 않는다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6l에 도시된 바와 같이, 우측의 맞춤화가능 요소가 아직 맞춤화되지 않았고, 텍스트 입력 필드 내로의 맞춤화된 표현의 삽입을 가능하게 하기 위해 우측의 맞춤화가능 요소에 대한 옵션의 선택이 요구된다는 것을 표시하기 위한 표시(632)를 디스플레이한다. 일부 실시예들에서, 표시(632)는 도 6i에 관해 위에서 설명된 표시(632)와 유사하다. 일부 실시예들에서, 제2 행이 아직 맞춤화되지 않은 맞춤화가능 요소에 대응하기 때문에, 제2 행 내의 변형들만이 표시(632)를 디스플레이한다. 유사하게, 디바이스(500)가 맞춤화된 변형(630-2)을 선택하는 사용자 입력을 수신했을 때 제1 행과 연관된 맞춤화가능 요소가 아직 맞춤화되지 않았다면, 제1 행 내의 변형들이 표시를 디스플레이할 것이다.In FIG. 6k , a user input (603) is received selecting (e.g., tapping) a customized variation (630-2). In some embodiments, because the emoji (608-6) is not yet fully customized (e.g., only the left person is customized, but the right person is not yet customized), selecting the customized variation (630-2) does not result in insertion of the customized variation (630-2) into the text input field (604). In some embodiments, in response to the user input (603), the device (500) displays an indicia (632) to indicate that the right-hand customizable element is not yet customized, and that selection of an option for the right-hand customizable element is required to enable insertion of the customized expression into the text input field, as illustrated in FIG. 6l . In some embodiments, the indicia (632) is similar to the indicia (632) described above with respect to FIG. 6i . In some embodiments, only the variants within the second row will display the indication (632) because the second row corresponds to a customizable element that has not yet been customized. Similarly, if the device (500) receives user input selecting a customized variant (630-2) and the customizable element associated with the first row has not yet been customized, the variants within the first row will display the indication.
도 6m에서, 다중-요소 맞춤화 사용자 인터페이스(624) 외부의 사용자 인터페이스(600) 상에서 사용자 입력(603)(예를 들어, 탭)이 수신된다. 일부 실시예들에서, 사용자 입력은 다중-요소 맞춤화 사용자 인터페이스(624)를 해산(dismiss)시키라는 요청에 대응한다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 도 6n에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(624)가 해산된다(예를 들어, 디스플레이되는 것이 중단된다). 일부 실시예들에서, 디바이스(500)는, 다중-요소 맞춤화 사용자 인터페이스(624)가 디스플레이되기 전에 디스플레이되었던 사용자 인터페이스(예를 들어, 사용자 인터페이스(600) 전체)를 디스플레이한다. 도 6n에 도시된 바와 같이, 이모지 키보드(606) 상의 이모지(608-6)는, 사용자가 부분 맞춤화를 수행했더라도 사용자가 맞춤화를 완료하지 않았고 그리고/또는 사용자가 맞춤화된 변형(630-2)을 선택하지 않았기 때문에 변화되지 않는다(예를 들어, 디폴트 변형을 계속 나타낸다). 일부 실시예들에서, 맞춤화 사용자 인터페이스(624)의 패들 부분(paddle portion)(예를 들어, 이모지(608-6) 위에 오버레이된 다중-요소 맞춤화 사용자 인터페이스(624)의 부분) 상의 사용자 입력은 또한, 맞춤화 사용자 인터페이스를 해산시키라는 요청으로서 해석되고, 다중-요소 맞춤화 사용자 인터페이스(624)가 해산되게 할 수 있다.In FIG. 6m, user input (603) (e.g., a tap) is received on a user interface (600) outside of a multi-element customization user interface (624). In some embodiments, the user input corresponds to a request to dismiss the multi-element customization user interface (624). In some embodiments, in response to the user input (603), the multi-element customization user interface (624) is dismissed (e.g., stops being displayed), as illustrated in FIG. 6n. In some embodiments, the device (500) displays a user interface that was displayed prior to the multi-element customization user interface (624) being displayed (e.g., the entire user interface (600). As illustrated in FIG. 6n, the emoji (608-6) on the emoji keyboard (606) does not change (e.g., continues to display the default variation) because the user did not complete the customization and/or the user did not select a customized variation (630-2), even if the user performed a partial customization. In some embodiments, user input on the paddle portion of the customization user interface (624) (e.g., the portion of the multi-element customization user interface (624) that is overlaid on the emoji (608-6)) may also be interpreted as a request to dismiss the customization user interface, causing the multi-element customization user interface (624) to be dismissed.
도 6n에서, 이모지(608-6)를 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 이모지(608-6)가 완전히 맞춤화되지 않았기 때문에(예를 들어, 좌측 사람에 대한 변형이 선택되었지만, 우측 사람에 대한 변형이 아직 선택되지 않았기 때문에), 사용자 입력(603)에 응답하여, 다중-요소 맞춤화 사용자 인터페이스(624)가 도 6o에 도시된 바와 같이 디스플레이된다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(624)는 이모지(608-6)가 완전히 맞춤화되었는지 또는 완전히 맞춤화되지 않았는지에 관계없이 이모지(608-6)를 선택하는 사용자 입력에 응답하여 항상 디스플레이된다.In FIG. 6n, a user input (603) is received selecting (e.g., tapping) an emoji (608-6). In some embodiments, because the emoji (608-6) is not fully customized (e.g., a variation for the left person has been selected, but a variation for the right person has not yet been selected), in response to the user input (603), a multi-element customization user interface (624) is displayed as illustrated in FIG. 6o. In some embodiments, the multi-element customization user interface (624) is always displayed in response to a user input selecting an emoji (608-6), regardless of whether the emoji (608-6) is fully customized or not fully customized.
도 6o에서, 이모지(608-6)의 우측 사람에 대한 변형에 대응하는 변형(628-3)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 위에서 설명된 바와 같이, 변형(628-3)은 이모지(608-6)의 우측 사람에 대한 피부 톤 변형이다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 맞춤화된 변형(630-2)은 도 6p에 도시된 바와 같이, 우측 사람이 변형(628-3)과 연관된 시각적 특성들(예를 들어, 변형(628-3)의 피부 톤)로 디스플레이되도록 업데이트된다. 일부 실시예들에서, 변형(628-3)의 사용자의 선택은 이모지(608-6)의 맞춤화를 완료한다(예를 들어, 각각의 맞춤화가능 요소에 대한 변형이 선택되었다). 따라서, 일부 실시예들에서, 맞춤화를 완료한 것에 응답하여, 변형(630-2)의 맞춤화가 완료되고, 변형(630-2)을 텍스트 입력 구역 내에 삽입하도록 이제 선택가능하다는 것을 표시하기 위한 표시(634)가 맞춤화된 변형(630-2) 상에서 디스플레이된다. 일부 실시예들에서, 표시(634)는 그래픽 애니메이션이다. 일부 실시예들에서, 애니메이션은 도 6i 및 도 6l을 참조하여 위에서 설명된 표시(632)와 유사하게, 변형(630-2)의 크기를 일시적으로 증가 및 감소시키는 것을 포함한다.In FIG. 6o, a user input (603) is received that selects (e.g., taps) a variant (628-3) corresponding to a variant for the right person of emoji (608-6). As described above, the variant (628-3) is a skin tone variant for the right person of emoji (608-6). In some embodiments, in response to the user input (603), the customized variant (630-2) is updated such that the right person is displayed with visual characteristics associated with the variant (628-3) (e.g., the skin tone of the variant (628-3)), as illustrated in FIG. 6p. In some embodiments, the user's selection of the variant (628-3) completes the customization of the emoji (608-6) (e.g., a variant for each customizable element has been selected). Accordingly, in some embodiments, in response to completing the customization, an indicia (634) is displayed on the customized variant (630-2) to indicate that the customization of the variant (630-2) is complete and that the variant (630-2) is now selectable for insertion into the text input area. In some embodiments, the indicia (634) is a graphical animation. In some embodiments, the animation includes temporarily increasing and decreasing the size of the variant (630-2), similar to the indicia (632) described above with reference to FIGS. 6I and 6L.
도 6q에서, 맞춤화된 변형(630-2)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 이모지(608-6)의 맞춤화가 완료되었기 때문에, 사용자 입력(603)에 응답하여, 맞춤화된 변형(630-2)은 도 6r에 도시된 바와 같이 캐릭터(614-4)로서 텍스트 입력 구역(604) 내에 삽입된다. 도 6r에서, 맞춤화된 변형(630-2)이 텍스트 입력 필드(604)로의 삽입을 위한 이모지(608-6)의 사용자의 가장 최근에 선택된 변형이기 때문에, 이모지 키보드(606) 상의 이모지(608-6)는 맞춤화된 변형(630-2)을 디스플레이하도록 업데이트된다.In FIG. 6q, a user input (603) is received selecting (e.g., tapping) a customized variation (630-2). In some embodiments, since the customization of the emoji (608-6) is complete, in response to the user input (603), the customized variation (630-2) is inserted into the text input area (604) as a character (614-4), as illustrated in FIG. 6r. In FIG. 6r, since the customized variation (630-2) is the user's most recently selected variation of the emoji (608-6) for insertion into the text input field (604), the emoji (608-6) on the emoji keyboard (606) is updated to display the customized variation (630-2).
도 6r에서, 이모지(608-6)가 맞춤화된 변형(630-2)으로서 디스플레이되는 동안 이모지(608-6)를 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 이모지(608-6)의 맞춤화가 완료되었기 때문에(예를 들어, 변형(630-2)이 완전히 맞춤화되기 때문에), 이모지(608-6)가 맞춤화된 변형(630-2)으로서 디스플레이되는 동안 이모지(608-6)를 선택하는 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6s에 도시된 바와 같이, 맞춤화된 변형(630-2)을 캐릭터(614-5)로서 텍스트 입력 구역(604) 내에 삽입한다(예를 들어, 맞춤화된 변형(630-2)에 의해 구현된 제1 및 제2 맞춤화가능 요소들의 변형들을 갖는 이모지(608-6)가 삽입된다). 따라서, 일부 실시예들에서, 이모지(608-6)가 완전히 맞춤화되었기 때문에, 이모지 키보드(606) 상의 이모지(608-6)를 탭핑하는 사용자 입력은 다중-요소 맞춤화 사용자 인터페이스(624)를 디스플레이하지 않는다. 일부 실시예들에서, 이모지(608-6)를 탭핑하는 것은 이모지(608-6)의 가장 최근에 선택된 변형(예를 들어, 그리고 더 나아가, 선택적으로는 이모지 키보드(606) 상에 디스플레이된 변형)의 삽입을 야기한다.In FIG. 6r , a user input (603) is received selecting (e.g., tapping) the emoji (608-6) while it is displayed as a customized variation (630-2). In some embodiments, in response to the user input (603) selecting the emoji (608-6) while it is displayed as a customized variation (630-2), because the customization of the emoji (608-6) is complete (e.g., because the variation (630-2) is fully customized), the device (500) inserts the customized variation (630-2) as a character (614-5) into the text input area (604), as illustrated in FIG. 6s (e.g., the emoji (608-6) having variations of the first and second customizable elements implemented by the customized variation (630-2) is inserted). Thus, in some embodiments, since the emoji (608-6) is fully customized, a user input of tapping on the emoji (608-6) on the emoji keyboard (606) does not display the multi-element customization user interface (624). In some embodiments, tapping on the emoji (608-6) results in insertion of the most recently selected variation of the emoji (608-6) (e.g., and optionally, a variation displayed on the emoji keyboard (606).
도 6t에서, 이모지(608-6)가 맞춤화된 변형(630-2)으로서 디스플레이되는 동안 접촉(603)의 터치다운이 이모지(608-6) 상에서 수신된다. 도 6u에서, 이모지(608-6) 상의 접촉(603)은 타이머(612)에 의해 표시된 바와 같이, 미리 결정된 임계 지속기간(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 초과 동안 유지된다. 도 6u에 도시된 바와 같이, 접촉(603)이 미리 결정된 임계 지속기간 초과 동안 유지되었다는 것을 검출하는 것에 응답하여, 다중-요소 맞춤화 사용자 인터페이스(624)가 디스플레이된다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(624)는 이모지(608-6)에 대한 현재 맞춤화 상태를 디스플레이한다. 예를 들어, 맞춤화가능 요소들 각각에 대한 맞춤화 선택들이 유지된다. 도 6u에서, 변형들(626-1, 628-3)은 하이라이트되어, 변형들(626-1, 628-3)이 선택되었고, 맞춤화된 변형(630-2)에 현재 적용되었다는 것을 표시한다. 도 6v에서, 터치 스크린(504)으로부터의 접촉(603)의 리프트오프가 검출된다. 일부 실시예들에서, 접촉(603)의 리프트오프를 검출하는 것에 응답하여, 디바이스(500)는 도 6v에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(624)의 디스플레이를 유지한다(예를 들어, 다중-요소 맞춤화 사용자 인터페이스(624)를 해산시키는 것을 보류한다).In FIG. 6t , a touchdown of a contact (603) is received on the emoji (608-6) while the emoji (608-6) is displayed as a customized variation (630-2). In FIG. 6u , the contact (603) on the emoji (608-6) is held for a predetermined threshold duration (e.g., 0.1 seconds, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as indicated by the timer (612). As illustrated in FIG. 6u , in response to detecting that the contact (603) has been held for a predetermined threshold duration, a multi-element customization user interface (624) is displayed. In some embodiments, the multi-element customization user interface (624) displays a current customization state for the emoji (608-6). For example, customization selections for each of the customizable elements are maintained. In FIG. 6u, the variants (626-1, 628-3) are highlighted, indicating that the variants (626-1, 628-3) are selected and are currently applied to the customized variant (630-2). In FIG. 6v, a liftoff of the contact (603) from the touch screen (504) is detected. In some embodiments, in response to detecting a liftoff of the contact (603), the device (500) maintains the display of the multi-element customization user interface (624) (e.g., holds off dismissing the multi-element customization user interface (624)), as illustrated in FIG. 6v.
도 6w에서, 이모지(608-6)의 좌측 사람에 대한 제2 피부 톤 변형에 대응하는 변형(626-2)을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 맞춤화된 변형(630-2)은 도 6x에 도시된 바와 같이, 좌측 사람이 변형(626-2)의 피부 톤 변형을 반영하도록 업데이트된다(예를 들어, 변형(626-1)의 이전의 선택이 변형(626-2)으로 대체된다). 도 6x에 도시된 바와 같이, 변형(626-2)은 하이라이트된 것으로 디스플레이되고, 변형(626-1)은 하이라이트된 것으로 더 이상 디스플레이되지 않는다. 따라서, 일부 실시예들에서, 사용자는 맞춤화된 요소들에 대한 다른 변형들을 선택하고 이전의 선택을 오버라이딩(override)함으로써, 맞춤화된 변형(630-2)을 업데이트할 수 있다. 일부 실시예들에서, 새로운 변형 선택들로 맞춤화된 변형(630-2)을 업데이트한 이후 이모지(608-6)가 맞춤화된 변형(630-2)을 디스플레이하고 있는 동안 사용자가 다중-요소 맞춤화 사용자 인터페이스(624)를 해산시키면, 이모지 키보드(606) 상의 이모지(608-6)는 또한, 업데이트된 맞춤화된 변형(630-2)을 (예를 들어, 좌측 사람으로서 변형(626-2) 및 우측 사람으로서 변형(628-3)으로) 디스플레이하도록 업데이트된다. 일부 실시예들에서, 새로운 변형 선택들로 맞춤화된 변형(630-2)을 업데이트한 이후 이모지(608-6)가 맞춤화된 변형(630-2)을 디스플레이하고 있는 동안 사용자가 다중-요소 맞춤화 사용자 인터페이스(624)를 해산시키면, 선택적으로, 사용자가 다중-요소 맞춤화 사용자 인터페이스(624)부터 텍스트 입력 구역 내로의 삽입을 위한 업데이트된 맞춤화된 변형(630-2)을 선택하지 않았기 때문에, 이모지 키보드(606) 상의 이모지(608-6)는 업데이트된 맞춤화된 변형(630-2)으로 업데이트되지 않고, 이전의 맞춤화(예를 들어, 업데이트되지 않은 맞춤화된 변형(630-2))를 유지한다.In FIG. 6w , a user input (603) is received selecting (e.g., tapping) a variant (626-2) corresponding to a second skin tone variant for the left person of the emoji (608-6). In some embodiments, in response to the user input (603), the customized variant (630-2) is updated to reflect the skin tone variant of the left person in the variant (626-2), as illustrated in FIG. 6x (e.g., the previous selection of variant (626-1) is replaced with variant (626-2). As illustrated in FIG. 6x , variant (626-2) is displayed as highlighted, and variant (626-1) is no longer displayed as highlighted. Thus, in some embodiments, the user may update the customized variant (630-2) by selecting other variants for the customized elements and overriding the previous selection. In some embodiments, after updating the customized variant (630-2) with new variant selections, if the user dismisses the multi-element customization user interface (624) while the emoji (608-6) is displaying the customized variant (630-2), the emoji (608-6) on the emoji keyboard (606) is also updated to display the updated customized variant (630-2) (e.g., as a left person variant (626-2) and as a right person variant (628-3)). In some embodiments, after updating the customized variant (630-2) with new variant selections, if the user dismisses the multi-element customization user interface (624) while the emoji (608-6) is displaying the customized variant (630-2), optionally, the emoji (608-6) on the emoji keyboard (606) is not updated with the updated customized variant (630-2) because the user did not select the updated customized variant (630-2) for insertion into the text input area from the multi-element customization user interface (624), but rather retains its previous customization (e.g., the non-updated customized variant (630-2)).
도 6x에서, 업데이트된 변형 선택들을 갖는 맞춤화된 변형(630-2)(예를 들어, 좌측 사람으로서 변형(626-2) 및 우측 사람으로서 변형(628-3))을 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 업데이트된 맞춤화된 변형(630-2)은 도 6y에 도시된 바와 같이 캐릭터(614-6)로서 텍스트 입력 구역(604) 내에 삽입된다. 도 6y에 도시된 바와 같이, 이모지 키보드(606) 상의 이모지(608-6)는 업데이트된 맞춤화된 변형(630-2)을 반영하도록 업데이트되었다.In FIG. 6x , a user input (603) is received selecting (e.g., tapping) a customized variant (630-2) with updated variant selections (e.g., variant 626-2 as a left person and variant 628-3 as a right person). In some embodiments, in response to the user input (603), the updated customized variant (630-2) is inserted into the text input area (604) as a character (614-6), as illustrated in FIG. 6y . As illustrated in FIG. 6y , the emoji (608-6) on the emoji keyboard (606) is updated to reflect the updated customized variant (630-2).
도 6z에서, 접촉(603)의 터치다운이 이모지(608-6) 상에서 검출된다. 도 6aa에서, 이모지(608-6) 상의 접촉(603)은 타이머(612)에 의해 표시된 바와 같이, 미리 결정된 임계 지속기간(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 초과 동안 유지된다. 일부 실시예들에서, 도 6aa에 도시된 바와 같이, 이모지(608-6) 상의 접촉(603)이 미리 결정된 임계 지속기간 초과 동안 유지되었다는 것을 검출하는 것에 응답하여, 다중-요소 맞춤화 사용자 인터페이스(624)가 디스플레이된다. 도 6bb에서, 터치 스크린(504)과의 접촉을 유지하면서 디폴트 변형(630-1)으로 이동하는 접촉(603)(예를 들어, 디폴트 변형(630-1)으로의 스와이프 제스처)이 검출된다. 일부 실시예들에서, 디폴트 변형(630-1)으로 접촉(603)을 이동시키는 스와이프 제스처 이후의 접촉(603)의 리프트오프는 디폴트 변형(630-1)의 선택 입력으로서 해석된다. 일부 실시예들에서, 디폴트 변형(630-1)으로 접촉(603)을 이동시키는 제스처, 및 디폴트 변형(630-1) 상에 위치설정되는 동안의 접촉(603)의 리프트오프를 검출하는 것에 응답하여, 도 6cc에 도시된 바와 같이, 디폴트 변형(630-1)은 캐릭터(614-7)로서 텍스트 입력 구역(604) 내에 삽입된다. 일부 실시예들에서, 이모지 키보드(606) 상의 이모지(608-6)는 디폴트 변형(630-1)을 (예를 들어, 이모지(608-6)의 가장 최근에 선택된 변형으로서) 디스플레이하도록 업데이트된다.In FIG. 6z, a touchdown of the contact (603) is detected on the emoji (608-6). In FIG. 6aa, the contact (603) on the emoji (608-6) is maintained for more than a predetermined threshold duration (e.g., 0.1 seconds, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as indicated by the timer (612). In some embodiments, in response to detecting that the contact (603) on the emoji (608-6) is maintained for more than the predetermined threshold duration, as illustrated in FIG. 6aa, a multi-element customization user interface (624) is displayed. In FIG. 6bb, a contact (603) moving to the default variant (630-1) while maintaining contact with the touch screen (504) is detected (e.g., a swipe gesture to the default variant (630-1)). In some embodiments, a liftoff of the contact (603) following a swipe gesture that moves the contact (603) to the default variant (630-1) is interpreted as a selection input of the default variant (630-1). In some embodiments, in response to detecting the gesture that moves the contact (603) to the default variant (630-1) and the liftoff of the contact (603) while positioned on the default variant (630-1), the default variant (630-1) is inserted into the text input area (604) as a character (614-7), as illustrated in FIG. 6cc. In some embodiments, the emoji (608-6) on the emoji keyboard (606) is updated to display the default variant (630-1) (e.g., as the most recently selected variant of the emoji (608-6)).
도 6dd에서, 이모지(608-6)가 디폴트 변형(630-1)(예를 들어, 좌측 및 우측 사람 둘 모두에 대한 디폴트 이모지 착색, 예컨대 황색)을 디스플레이하고 있는 동안 이모지(608-6)를 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디폴트 변형(630-1)은 도 6ee에 도시된 바와 같이 캐릭터(614-8)로서 텍스트 입력 구역(604) 내에 삽입된다. 따라서, 일부 실시예들에서, 이모지(608-6)가 완전히 맞춤화된 이후 이모지(608-6)를 선택하는 사용자 입력(예를 들어, 사용자는 이모지(608-6)의 현재 디스플레이 상태가 디폴트 변형인지 또는 맞춤화된 변형인지와는 독립적으로, 이모지(608-6)의 맞춤화가능 요소들 각각에 대한 변형을 과거에 선택했음)은 현재 디스플레이된 변형(예를 들어, 디폴트 변형 또는 맞춤화된 변형 중 어느 하나)이 텍스트 입력 구역 내에 삽입되게 할 것이다. 위에서 예시된 바와 같이, 개개의 이모지에 대한 맞춤화가 완료된 이후, 다중-요소 맞춤화 사용자 인터페이스(624)는 선택적으로, 길게 누르기 사용자 입력(예를 들어, 미리 결정된 지속기간 임계치 초과 동안의 접촉)에만 응답하여 그 개개의 이모지에 대해 디스플레이된다. 이모지 키보드 상의 각각의 이모지가 그 자체의 맞춤화 상태를 유지할 수 있다는 것이 이해된다. 따라서, 개개의 이모지가 부분적으로 맞춤화되었는지 또는 완전히 맞춤화되었는지는 개개의 이모지에 특정하고 고유하며, 맞춤화 사용자 인터페이스의 거동은 또한 개개의 이모지에 특정하고 고유하다. 예를 들어, 다수의 맞춤화가능 요소들로 제1 이모지의 맞춤화를 완료하는 것은, 사용자가 제1 이모지를 맞춤화했을 때 제2 이모지가 맞춤화되지 않았다면, 제2 이모지의 맞춤화된 변형 상의 플레이스홀더 요소들을 포함하여, 제2 이모지에 대한 맞춤화 사용자 인터페이스가 제2 이모지 상의 탭에 응답하여 여전히 디스플레이되도록, 다수의 맞춤화가능 요소들로 제2 이모지의 맞춤화 상태를 변화시키지 않는다.In FIG. 6dd, a user input (603) is received selecting (e.g., tapping) the emoji (608-6) while the emoji (608-6) is displaying a default variation (630-1) (e.g., default emoji coloring for both the left and right person, e.g., yellow). In some embodiments, in response to the user input (603), the default variation (630-1) is inserted into the text input area (604) as a character (614-8), as illustrated in FIG. 6ee. Thus, in some embodiments, after the emoji (608-6) is fully customized, user input selecting the emoji (608-6) (e.g., the user has previously selected a variant for each of the customizable elements of the emoji (608-6), independent of whether the current display state of the emoji (608-6) is the default variant or a customized variant) will cause the currently displayed variant (e.g., either the default variant or the customized variant) to be inserted into the text input area. As illustrated above, after the customization for an individual emoji is complete, the multi-element customization user interface (624) is optionally displayed for that individual emoji only in response to a long-press user input (e.g., a contact for more than a predetermined duration threshold). It is understood that each emoji on the emoji keyboard may maintain its own customized state. Accordingly, whether an individual emoji is partially or fully customized is specific and unique to the individual emoji, and the behavior of the customized user interface is also specific and unique to the individual emoji. For example, completing customization of a first emoji with a plurality of customizable elements does not change the customized state of the second emoji with a plurality of customizable elements, such that if the second emoji was not customized when the user customized the first emoji, the customized user interface for the second emoji would still be displayed in response to a tap on the second emoji, including placeholder elements on the customized variation of the second emoji.
일부 실시예들에서, 다른 거동들이 가능하다. 예를 들어, 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스는, 개개의 이모지의 맞춤화 상태에 관계없이, 사용자 입력(예를 들어, 탭)에 응답하여 항상 디스플레이된다. 다른 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스는 개개의 이모지의 맞춤화 상태에 관계없이 길게 누르기 사용자 입력에만 응답하여 디스플레이되며, 다수의 맞춤화가능 요소들을 갖는 이모지의 선택(예를 들어, 탭핑)은, 사용자가 (예를 들어, 다중-요소 맞춤화 사용자 인터페이스를 통해) 상이한 변형들을 정의하고 삽입할 때까지 디폴트 변형의 삽입을 야기한다.In some embodiments, other behaviors are possible. For example, in some embodiments, the multi-element customization user interface is always displayed in response to user input (e.g., a tap), regardless of the customization state of individual emojis. In other embodiments, the multi-element customization user interface is displayed only in response to a long-press user input, regardless of the customization state of individual emojis, and selection (e.g., a tap) of an emoji having multiple customizable elements causes insertion of the default variation until the user defines and inserts different variations (e.g., via the multi-element customization user interface).
도 6ff 내지 도 6nn은 하나의 맞춤화가능 요소만을 갖는 이모지들을 맞춤화하고 삽입하는 방법들을 예시한다. 도 6ff에서, 이모지(608-4)가 변형(622-2)(예를 들어, 이모지(608-4)의 이전에 선택된 변형)으로서 디스플레이되는 동안 이모지(608-4)를 선택하는 사용자 입력(603)이 검출된다. 일부 실시예들에서, 사용자 입력(603)은 타이머(612)에 의해 예시된 바와 같이, 미리 결정된 임계치(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 미만 동안의 접촉이다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6gg에 도시된 바와 같이, 이모지(608-4)의 변형(622-2)(예를 들어, 이모지(608-4)의 이전에 선택된 변형)을 캐릭터(614-9)로서 텍스트 입력 필드(604) 내에 삽입한다.FIGS. 6ff-6nn illustrate methods of customizing and inserting emojis having only one customizable element. In FIG. 6ff, a user input (603) is detected selecting an emoji (608-4) while the emoji (608-4) is displayed as a variation (622-2) (e.g., a previously selected variation of the emoji (608-4)). In some embodiments, the user input (603) is a contact for less than a predetermined threshold (e.g., 0.1 seconds, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as exemplified by a timer (612). In some embodiments, in response to user input (603), the device (500) inserts a variation (622-2) of emoji (608-4) (e.g., a previously selected variation of emoji (608-4)) as a character (614-9) into the text input field (604), as illustrated in FIG. 6gg.
도 6hh에서, 이모지(608-4)가 변형(622-2)으로서 디스플레이되는 동안 접촉(603)의 터치다운이 이모지(608-4) 상에서 검출된다. 도 6ii에서, 이모지(608-4) 상의 접촉(603)은 타이머(612)에 의해 표시된 바와 같이, 미리 결정된 임계 지속기간(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 초과 동안 유지된다. 일부 실시예들에서, 도 6ii에 도시된 바와 같이, 접촉(603)이 미리 결정된 임계 지속기간 초과 동안 유지되었다는 것을 검출하는 것에 응답하여, 단일-요소 맞춤화 사용자 인터페이스(618)가 디스플레이된다. 도 6jj에서, 접촉(603)이 변형들(620, 622-1, 622-2 또는 622-3) 위에 위치설정되지 않는 동안, 터치 스크린(504)으로부터의 접촉(603)의 리프트 오프가 검출된다. 일부 실시예들에서, 접촉(603)의 리프트오프를 검출하는 것에 응답하여, 디바이스(500)는 도 6jj에 도시된 바와 같이, 단일-요소 맞춤화 사용자 인터페이스(618)의 디스플레이를 해산시키고, 이모지(608-4)의 변형(622-2)(예를 들어, 이모지(608-4)의 이전에 선택된 변형)을 캐릭터(614-10)로서 텍스트 입력 필드(604) 내에 삽입한다. 따라서, 일부 실시예들에서, 접촉(603)의 리프트오프는 단일-요소 맞춤화 사용자 인터페이스(618)의 디스플레이가 유지되게 하지 않는다.In FIG. 6hh, a touchdown of a contact (603) is detected on the emoji (608-4) while the emoji (608-4) is displayed as a variant (622-2). In FIG. 6ii, the contact (603) on the emoji (608-4) is held for a predetermined threshold duration (e.g., 0.1 seconds, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as indicated by the timer (612). In some embodiments, in response to detecting that the contact (603) is held for a predetermined threshold duration, as illustrated in FIG. 6ii, a single-element customization user interface (618) is displayed. In FIG. 6jj , a lift-off of the contact (603) from the touch screen (504) is detected while the contact (603) is not positioned over any of the variations (620, 622-1, 622-2, or 622-3). In some embodiments, in response to detecting a lift-off of the contact (603), the device (500) dismisses the display of the single-element customization user interface (618), as illustrated in FIG. 6jj , and inserts the variation (622-2) of the emoji (608-4) (e.g., the previously selected variation of the emoji (608-4)) as the character (614-10) into the text input field (604). Thus, in some embodiments, the lift-off of the contact (603) does not cause the display of the single-element customization user interface (618) to remain.
도 6kk 내지 도 6ll은, 단일-요소 맞춤화 사용자 인터페이스(618)의 디스플레이를 야기하는, 미리 결정된 임계 지속기간(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 초과 동안의 이모지(608-4) 상의 접촉(603)의 터치다운을 예시한다. 도 6mm에서, 터치 스크린(504)과의 접촉을 유지하면서 변형(622-1)으로 이동하는 접촉(603)(예를 들어, 변형(622-1)으로의 스와이프 제스처)이 검출된다. 일부 실시예들에서, 변형(622-1)으로 접촉(603)을 이동시키는 스와이프 제스처 이후의 접촉(603)의 리프트오프는 변형(622-1)의 선택 입력으로서 해석된다. 일부 실시예들에서, 변형(622-1)으로 접촉(603)을 이동시키는 제스처, 및 변형(622-1) 위에 위치설정되는 동안의 접촉(603)의 리프트오프를 검출하는 것에 응답하여, 도 6nn에 도시된 바와 같이, 변형(622-1)은 캐릭터(614-11)로서 텍스트 입력 구역(604) 내에 삽입된다. 일부 실시예들에서, 이모지 키보드(606) 상의 이모지(608-4)는 변형(622-1)을 (예를 들어, 이모지(608-4)의 가장 최근에 선택된 변형으로서) 디스플레이하도록 업데이트된다.FIGS. 6kk-6ll illustrate a touchdown of a contact (603) on an emoji (608-4) for greater than a predetermined threshold duration (e.g., 0.1 second, 0.25 second, 0.5 second, 1 second, 3 seconds, 5 seconds, etc.) that causes display of a single-element customization user interface (618). In FIG. 6mm, a contact (603) is detected that moves to a variant (622-1) while maintaining contact with the touch screen (504) (e.g., a swipe gesture to variant (622-1)). In some embodiments, a liftoff of the contact (603) following a swipe gesture that moves the contact (603) to variant (622-1) is interpreted as a selection input of the variant (622-1). In some embodiments, in response to a gesture moving the contact (603) to the variant (622-1), and detecting liftoff of the contact (603) while positioned over the variant (622-1), the variant (622-1) is inserted into the text input area (604) as a character (614-11), as illustrated in FIG. 6nn. In some embodiments, the emoji (608-4) on the emoji keyboard (606) is updated to display the variant (622-1) (e.g., as the most recently selected variant of emoji (608-4)).
도 6nn에서, 접촉(603)의 터치다운이 이모지(608-1) 위에서 검출된다. 일부 실시예들에서, 이모지(608-1)는 임의의 맞춤화가능 요소들과 연관되지 않는다(예를 들어, 어떠한 맞춤화가능 요소들도 갖지 않는다). 도 6oo에서, 이모지(608-1) 상의 접촉(603)은 타이머(612)에 의해 표시된 바와 같이, 미리 결정된 임계 지속기간(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 초과 동안 유지된다. 일부 실시예들에서, 접촉(603)이 미리 결정된 임계 지속기간 초과 동안 유지되었다는 것을 검출하는 것에 응답하여, 디바이스(500)는 맞춤화 사용자 인터페이스를 디스플레이하지 않거나 또는 이모지(608-1)를 텍스트 입력 구역(604) 내에 삽입하지 않는다. 일부 실시예들에서, 미리 결정된 임계치 초과 동안 접촉이 유지되는 것에 응답하여(예를 들어, 선택적으로는 접촉(603)이 유지되는 동안에는), 이모지(608-1)의 미리보기(예를 들어, 가상 키보드(606)에 나타나는 것보다 큰 미리보기)와 함께 오버레이가 디스플레이된다. 도 6pp에서, 터치 스크린(504)으로부터의 접촉(603)의 리프트오프가 검출된다. 일부 실시예들에서, 접촉(603)의 리프트오프를 검출하는 것에 응답하여, 디바이스(500)는 도 6pp에 도시된 바와 같이, 이모지(608-1)를 캐릭터(614-12)로서 텍스트 입력 구역(604) 내에 삽입한다. 따라서, 일부 실시예들에서, 임의의 맞춤화가능 요소들을 갖지 않는 이모지 상의 짧은 탭 및 길게 누르기는 맞춤화 사용자 인터페이스의 디스플레이를 야기하지 않고, 선택적으로 이모지를 텍스트 입력 구역 내에 삽입한다.In FIG. 6nn, a touchdown of the contact (603) is detected over the emoji (608-1). In some embodiments, the emoji (608-1) is not associated with any customizable elements (e.g., does not have any customizable elements). In FIG. 6oo, the contact (603) over the emoji (608-1) is maintained for more than a predetermined threshold duration (e.g., 0.1 seconds, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as indicated by the timer (612). In some embodiments, in response to detecting that the contact (603) is maintained for more than the predetermined threshold duration, the device (500) does not display a customizable user interface or insert the emoji (608-1) into the text input area (604). In some embodiments, in response to the contact being held for a predetermined threshold period of time (e.g., optionally while the contact (603) is held), an overlay is displayed with a preview of the emoji (608-1) (e.g., a larger preview than that which appears on the virtual keyboard (606)). In FIG. 6pp, a liftoff of the contact (603) from the touch screen (504) is detected. In some embodiments, in response to detecting the liftoff of the contact (603), the device (500) inserts the emoji (608-1) as a character (614-12) into the text input area (604), as illustrated in FIG. 6pp. Thus, in some embodiments, short taps and long presses on emojis that do not have any customizable elements do not cause the display of a customizable user interface, and optionally insert the emoji into the text input area.
도 6qq는 3개의 맞춤화가능 요소들을 갖는 이모지의 다중-요소 맞춤화 사용자 인터페이스(624)의 일 실시예를 예시한다. 도 6qq에 디스플레이된 실시예에서, 이모지(608-6)는 3개의 맞춤화가능 요소들: 좌측 사람에 대한 피부 톤, 우측 사람에 대한 피부 톤, 및 좌측 사람에 대한 모자 액세서리를 갖는다. 일부 실시예들에서, 도 6qq에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(624)는 이모지(606-8)를 맞춤화하기 위한 변형들의 3개의 행들을 포함한다. 일부 실시예들에서, 제1 행은 (예를 들어, 위에서 설명된 변형들의 제1 행과 유사하게) 제1 맞춤화가능 요소의 변형들에 대응하는 이모지(608-4)의 변형들(626-1 내지 626-4)을 포함한다. 일부 실시예들에서, 제2 행은 (예를 들어, 위에서 설명된 변형들의 제2 행과 유사하게) 제2 맞춤화가능 요소에 대응하는 이모지(608-4)의 변형들(628-1 내지 628-4)을 포함한다. 일부 실시예들에서, 제3 행은 제3 맞춤화가능 요소에 대응하는 이모지(608-4)의 변형들(636-1 내지 636-4)을 포함한다. 일부 실시예들에서, 제3 맞춤화가능 요소는 선택적 요소이다. 예를 들어, 변형(636-1)에 의해 예시된 바와 같이, 사용자는 이모지(608-4)의 좌측 사람에 대한 모자를 포함하지 않도록 변형(636-1)을 선택할 수 있다. 일부 실시예들에서, 변형(636-2 내지 636-4)은 이모지(608-4)의 좌측 사람에 대한 상이한 모자 옵션들에 대응한다. 변형들(626-1 내지 626-4 및 628-1 내지 628-4)과 유사하게, 변형들(636-1 내지 636-4) 내의 좌측 및 우측 사람은 좌측 및 우측 사람들이 변형들(636-1 내지 636-4)을 통해 맞춤화가능하지 않다는 것을 표시하기 위해 플레이스홀더 외관들(예를 들어, 회색)로 디스플레이된다. 일부 실시예들에서, 제4 행은 (예를 들어, 위에서 설명된 디폴트 변형(630-1) 및 맞춤화된 변형(630-2)과 유사한) 디폴트 변형(630-1) 및 맞춤화된 변형(630-2)을 포함한다. 따라서, 다중-요소 맞춤화 사용자 인터페이스(624)는 개개의 이모지에 대한 맞춤화가능 요소들의 수에 기초하여 임의의 수의 섹션들을 선택적으로 포함한다. 이모지(608-4)가 선택적으로 우측 사람에 대한 액세서리 옵션들과 같은 임의의 수의 맞춤화가능 요소들을 갖는다는 것이 이해된다. 사용자는 도 6e 내지 도 6ee를 참조하여 위에서 설명된 것과 동일한 방식으로 다중-요소 이모지를 맞춤화/삽입/등을 할 수 있다.FIG. 6QQ illustrates an embodiment of a multi-element customization user interface (624) for an emoji having three customizable elements. In the embodiment displayed in FIG. 6QQ, emoji (608-6) has three customizable elements: a skin tone for the left person, a skin tone for the right person, and a headwear accessory for the left person. In some embodiments, as shown in FIG. 6QQ, the multi-element customization user interface (624) includes three rows of variations for customizing emoji (606-8). In some embodiments, a first row includes variations (626-1 through 626-4) of emoji (608-4) corresponding to variations of the first customizable element (e.g., similar to the first row of variations described above). In some embodiments, the second row includes variations (628-1 through 628-4) of emoji (608-4) corresponding to the second customizable element (e.g., similar to the second row of variations described above). In some embodiments, the third row includes variations (636-1 through 636-4) of emoji (608-4) corresponding to the third customizable element. In some embodiments, the third customizable element is optional. For example, as illustrated by variation (636-1), a user may select variation (636-1) to not include a hat for the left person of emoji (608-4). In some embodiments, variations (636-2 through 636-4) correspond to different hat options for the left person of emoji (608-4). Similar to variations (626-1 through 626-4 and 628-1 through 628-4), the left and right people in variations (636-1 through 636-4) are displayed with placeholder appearances (e.g., gray) to indicate that the left and right people are not customizable via variations (636-1 through 636-4). In some embodiments, the fourth row includes a default variation (630-1) and a customized variation (630-2) (e.g., similar to the default variation (630-1) and customized variation (630-2) described above). Thus, the multi-element customization user interface (624) optionally includes any number of sections based on the number of customizable elements for each emoji. It is understood that emoji (608-4) optionally has any number of customizable elements, such as accessory options for the right person. Users can customize/insert/etc. multi-element emojis in the same manner as described above with reference to FIGS. 6e to 6ee.
도 6rr 내지 도 66tt는 (예를 들어, 디바이스(500)가 가로 모드에 있고 그리고/또는 터치 감응형 디스플레이가 콘텐츠의 하나의 또는 제한된 수의 행들만을 지원할 수 있을 때) 하나의 행에서 수평으로 연장되는 다중-요소 맞춤화 사용자 인터페이스(624)의 일 실시예를 예시한다. 도 6rr에서, 디바이스(500)는 대화 구역(602), 텍스트 입력 필드(604), 및 이모지 키보드(606)를 갖는 가로 모드로 사용자 인터페이스(600)를 디스플레이하고 있다. 이모지 키보드(606)가 단지 예시적인 것으로 이모지들의 단일 행으로 도 6rr에서 디스플레이되고, 임의의 수의 행들이 가능하다는 것이 이해된다. 일부 실시예들에서, 이모지 키보드는 5개의 이모지들(608-1, 608-3, 608-5, 608-7, 608-8)을 포함한다.FIGS. 6rr through 66tt illustrate one embodiment of a multi-element customizable user interface (624) that extends horizontally in a single row (e.g., when the device (500) is in landscape mode and/or the touch-sensitive display can support only one or a limited number of rows of content). In FIG. 6rr, the device (500) is displaying the user interface (600) in landscape mode having a conversation area (602), a text input field (604), and an emoji keyboard (606). It is understood that the emoji keyboard (606) is displayed in FIG. 6rr as a single row of emojis for illustrative purposes only, and that any number of rows are possible. In some embodiments, the emoji keyboard includes five emojis (608-1, 608-3, 608-5, 608-7, 608-8).
도 6ss에서, 이모지(608-5)를 선택하는 사용자 입력(603)이 수신된다. 일부 실시예들에서, 사용자 입력(603)은 타이머(612)에 의해 예시된 바와 같이, 미리 결정된 임계치(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 미만 동안의 접촉이다. 도 6ss에 예시된 실시예에서, 이모지(608-5)는 2개의 맞춤화가능 요소들(예를 들어, 좌측 사람의 피부 톤 및 우측 사람의 피부 톤)을 갖고, 아직 맞춤화되지 않았다. 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6tt에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(638)를 디스플레이한다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(638)는 디바이스(500)가 가로 모드에 있을 때 사용되는 다중-요소 맞춤화 사용자 인터페이스이다. 도 6tt에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(638)는 단일 행의 선택가능 옵션들을 포함한다. 일부 실시예들에서, 단일 행은 (예를 들어, 위에서 설명된 디폴트 변형(630-1) 및 맞춤화된 변형(630-2)과 유사한) 디폴트 변형(630-1) 및 맞춤화된 변형(630-2), 제1 맞춤화가능 요소를 맞춤화하기 위한 변형들(626-1 내지 626-4) 및 제2 맞춤화가능 요소를 맞춤화하기 위한 변형들(628-1 내지 628-4)을 포함한다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스는 3개의 섹션들: 각각 두 개의 맞춤화가능 요소들의 변형들에 대한 하나의 섹션, 및 이모지를 텍스트 입력 구역 내에 삽입하기 위한 변형들(예를 들어, 디폴트 변형 및 맞춤화된 변형)에 대한 하나의 섹션으로 분할된다. 일부 실시예들에서, 섹션들은 시각적 분배기(예를 들어, 바(bar))를 이용하여 분할되고 그리고/또는 화이트스페이스(whitespace)에 의해 분할된다. 일부 실시예들에서, 변형들(626-1 내지 626-4, 628-1 내지 628-4) 및 디폴트 변형(630-1) 및 맞춤화된 변형(630-2)은 위에서 설명된 대응하는 변형들과 유사하게 거동한다.In FIG. 6ss, a user input (603) is received selecting an emoji (608-5). In some embodiments, the user input (603) is a contact for less than a predetermined threshold (e.g., 0.1 seconds, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), as exemplified by a timer (612). In the embodiment illustrated in FIG. 6ss, the emoji (608-5) has two customizable elements (e.g., a skin tone of a left person and a skin tone of a right person) and is not yet customized. In response to the user input (603), the device (500) displays a multi-element customization user interface (638), as illustrated in FIG. 6tt. In some embodiments, the multi-element customization user interface (638) is a multi-element customization user interface that is used when the device (500) is in landscape mode. As illustrated in FIG. 6tt, the multi-element customization user interface (638) includes a single row of selectable options. In some embodiments, the single row includes a default variant (630-1) and a customized variant (630-2) (similar to the default variant (630-1) and customized variant (630-2) described above), variants for customizing the first customizable element (626-1 through 626-4), and variants for customizing the second customizable element (628-1 through 628-4). In some embodiments, the multi-element customization user interface is divided into three sections: one section for variants of each of the two customizable elements, and one section for variants for inserting emoji into the text input area (e.g., the default variant and the customized variant). In some embodiments, the sections are divided using a visual divider (e.g., a bar) and/or are divided by whitespace. In some embodiments, the variants (626-1 to 626-4, 628-1 to 628-4) and the default variant (630-1) and the customized variant (630-2) behave similarly to the corresponding variants described above.
도 6uu 내지 도 6xx는 다중-요소 맞춤화 사용자 인터페이스가 풀-스크린 모드로 디스플레이될 때의 다중-요소 맞춤화 사용자 인터페이스(624)의 일 실시예를 예시한다. 일부 실시예들에서, 디바이스(500)는 웨어러블 디바이스이고, 터치 스크린(504)을 갖는다. 일부 실시예들에서, 터치 스크린(504)은 제한된 스크린 공간을 갖는다. 일부 실시예들에서, 사용자 인터페이스 상에서 디스플레이된 요소들은 (예를 들어, 디스플레이가 작기 때문에) 디스플레이의 크기와 관련하여 크다. 도 6uu에서, 디바이스(500)는 이모지 키보드(602)(예를 들어, 이모지 선택 페이지를 디스플레이하는 가상 키보드)를 디스플레이하고 있다. 따라서, 일부 실시예들에서, 이모지 키보드(602)는 (예를 들어, 텍스트 입력 구역 및/또는 임의의 다른 사용자 인터페이스 요소와 동시에 디스플레이하는 대신에) 풀-스크린 모드로 디스플레이된다. 일부 실시예들에서, 이모지 키보드(602) 상에서의 이모지의 선택은 텍스트 입력 구역 내로의 개개의 이모지의 삽입 및 이모지 키보드의 해산을 야기한다(예를 들어, 그리고 선택적으로는, 이모지 키보드(602)가 디스플레이되기 전에 디스플레이되었던 사용자 인터페이스를 디스플레이한다). 도 6uu에서, 이모지 키보드(602)는 9개의 이모지들(608-1 내지 608-9)을 포함한다.FIGS. 6UU through 6XX illustrate an embodiment of a multi-element customization user interface (624) when the multi-element customization user interface is displayed in full-screen mode. In some embodiments, the device (500) is a wearable device and has a touch screen (504). In some embodiments, the touch screen (504) has limited screen real estate. In some embodiments, the elements displayed on the user interface are large relative to the size of the display (e.g., because the display is small). In FIG. 6UU, the device (500) is displaying an emoji keyboard (602) (e.g., a virtual keyboard that displays an emoji selection page). Thus, in some embodiments, the emoji keyboard (602) is displayed in full-screen mode (e.g., instead of being displayed concurrently with the text input area and/or any other user interface elements). In some embodiments, selection of an emoji on the emoji keyboard (602) causes insertion of the individual emoji into the text input area and dismissal of the emoji keyboard (e.g., and optionally, displays the user interface that was displayed prior to the emoji keyboard (602) being displayed). In FIG. 6UU, the emoji keyboard (602) includes nine emojis (608-1 through 608-9).
도 6vv에서, 이모지(608-5)를 선택(예를 들어, 탭핑)하는 사용자 입력(603)이 수신된다. 도 6vv에 예시된 실시예에서, 이모지(608-5)는 2개의 맞춤화가능 요소들을 갖고, 아직 맞춤화되지 않았다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 디바이스(500)는 도 6ww에 도시된 바와 같이, 다중-요소 맞춤화 사용자 인터페이스(642)를 디스플레이한다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(642)는 풀-스크린 모드로 디스플레이되고, (예를 들어, 오버레이로서가 아니라) 가상 키보드(602)의 디스플레이를 대체한다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(642)는, 다중-요소 맞춤화 사용자 인터페이스(642)를 해산시키고, 다중-요소 사용자 인터페이스가 디스플레이되기 전에 디스플레이되었던 사용자 인터페이스(예를 들어, 이모지 키보드(602))로 복귀하도록 선택가능한 선택가능 옵션(644)을 포함한다. 일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(642)는 (예를 들어, 위에서 설명된 다중-요소 맞춤화 사용자 인터페이스(624)와 유사하게) 선택가능 옵션들의 3개의 섹션들을 포함한다. 일부 실시예들에서, 제1 섹션은 디폴트 변형(630-1) 및 맞춤형 변형(630-2)을 포함한다. 일부 실시예들에서, 제2 섹션은 제1 맞춤화가능 요소를 맞춤화하기 위한 변형들(626-1 내지 626-4)을 포함한다. 일부 실시예들에서, 제2 섹션은 제2 맞춤화가능 요소를 맞춤화하기 위한 변형들(628-1 내지 628-4)(도시되지 않음)을 포함한다. 일부 실시예들에서, 변형들(630-1, 630-2, 626-1 내지 626-4 및 628-1 내지 628-4)은 위에서 설명된 변형들과 유사하게 거동한다.In FIG. 6vv, a user input (603) is received selecting (e.g., tapping) an emoji (608-5). In the embodiment illustrated in FIG. 6vv, the emoji (608-5) has two customizable elements and is not yet customized. In some embodiments, in response to the user input (603), the device (500) displays a multi-element customization user interface (642), as illustrated in FIG. 6ww. In some embodiments, the multi-element customization user interface (642) is displayed in full-screen mode and replaces the display of the virtual keyboard (602) (e.g., rather than as an overlay). In some embodiments, the multi-element customizable user interface (642) includes a selectable option (644) that is selectable to dismiss the multi-element customizable user interface (642) and revert to a user interface that was displayed before the multi-element user interface was displayed (e.g., the emoji keyboard (602)). In some embodiments, the multi-element customizable user interface (642) includes three sections of selectable options (e.g., similar to the multi-element customizable user interface (624) described above). In some embodiments, the first section includes a default variation (630-1) and a customized variation (630-2). In some embodiments, the second section includes variations (626-1 through 626-4) for customizing the first customizable element. In some embodiments, the second section includes variations (628-1 through 628-4) (not shown) for customizing the second customizable element. In some embodiments, the variants (630-1, 630-2, 626-1 through 626-4 and 628-1 through 628-4) behave similarly to the variants described above.
일부 실시예들에서, 다중-요소 맞춤화 사용자 인터페이스(642)는 스크롤링가능하다. 예를 들어, 도 6xx는 사용자 인터페이스를 상향으로 스크롤링하기 위한 상향 스와이프 제스처에 대응하는 사용자 입력(603)을 예시한다. 일부 실시예들에서, 사용자 입력(603)에 응답하여, 다중-요소 맞춤화 사용자 인터페이스(642)는 제2 맞춤화가능 요소를 맞춤화하기 위한 변형들(628-1 내지 628-4)을 포함하는 제3 섹션을 드러내도록 상향으로 스크롤링된다. 일부 실시예들에서, 웨어러블 디바이스의 다이얼(예를 들어, 크라운)을 회전시키는 것은 또한 상향 스크롤링 입력으로서 해석된다. 일부 실시예들에서, 디폴트 변형(630-1) 또는 (맞춤화가 완료된 경우) 맞춤형 변형(630-2)의 선택은, 다중-요소 맞춤화 사용자 인터페이스(642)의 해산, 이모지 키보드(602)가 디스플레이되기 전에 디스플레이되었던 사용자 인터페이스(예를 들어, 이모지가 삽입될 사용자 인터페이스)의 디스플레이, 및 사용자 인터페이스 내의 텍스트 입력 구역 내로의 개개의 변형의 삽입을 야기한다. 일부 실시예들에서, 디폴트 변형(630-1) 또는 (맞춤화가 완료된 경우) 맞춤형 변형(630-2)의 선택은, 다중-요소 맞춤화 사용자 인터페이스(642)의 해산, 및 선택된 변형을 디스플레이하도록 업데이트된 개개의 이모지를 갖는 이모지 키보드(602)의 디스플레이를 야기한다(예를 들어, 이어서, 선택된 변형은 개개의 변형을 텍스트 입력 구역 내에 삽입하도록 선택가능하다).In some embodiments, the multi-element customization user interface (642) is scrollable. For example, FIG. 6xx illustrates a user input (603) corresponding to an upward swipe gesture for scrolling the user interface upward. In some embodiments, in response to the user input (603), the multi-element customization user interface (642) scrolls upward to reveal a third section that includes variations (628-1 through 628-4) for customizing the second customizable element. In some embodiments, rotating a dial (e.g., a crown) of the wearable device is also interpreted as an upward scrolling input. In some embodiments, selection of the default variant (630-1) or (if customization is complete) a custom variant (630-2) causes dismissal of the multi-element customization user interface (642), display of the user interface that was displayed prior to display of the emoji keyboard (602) (e.g., the user interface into which the emoji is to be inserted), and insertion of the individual variant into the text input area within the user interface. In some embodiments, selection of the default variant (630-1) or (if customization is complete) a custom variant (630-2) causes dismissal of the multi-element customization user interface (642), and display of the emoji keyboard (602) with the individual emoji updated to display the selected variant (e.g., the selected variant is then selectable to insert the individual variant into the text input area).
도 7a 내지 도 7m은 이모지들을 맞춤화하고 삽입하기 위한 맞춤화 사용자 인터페이스를 제시하는 방법을 예시하는 흐름도들이다. 방법(700)은 선택적으로, 도 1a와 도 1b, 도 2, 도 3, 도 4a와 도 4b 및 도 5a 내지 도 5h를 참조하여 위에서 설명된 바와 같은, 디바이스(100), 디바이스(300), 및 디바이스(500)와 같은 전자 디바이스에서 수행된다. 방법(700)에서의 일부 동작들은 선택적으로 조합되고 그리고/또는, 일부 동작들의 순서는 선택적으로 변경된다.FIGS. 7A through 7M are flowcharts illustrating a method of presenting a customized user interface for customizing and inserting emojis. The method (700) is optionally performed in an electronic device, such as device (100), device (300), and device (500), as described above with reference to FIGS. 1A and 1B, FIGS. 2, 3, FIGS. 4A and 4B, and FIGS. 5A through 5H. Some of the operations in the method (700) are optionally combined and/or the order of some of the operations is optionally changed.
아래에서 설명되는 바와 같이, 방법(700)은 이모지들과 같은 그래픽 객체들을 맞춤화하고 삽입하기 위한 맞춤화 사용자 인터페이스들을 제시하기 위한 방식들을 제공한다. 방법은 본 개시내용의 디바이스의 사용자 인터페이스와 상호작용할 때 사용자에 대한 인지적 부담을 감소시키며, 그에 의해 더 효율적인 인간-기계 인터페이스를 생성한다. 배터리 작동형 전자 디바이스들의 경우, 사용자 인터페이스와의 사용자 상호작용의 효율성을 증가시키는 것은 전력을 절약하고, 배터리 충전들 사이의 시간을 증가시킨다.As described below, the method (700) provides ways to present customized user interfaces for customizing and inserting graphical objects, such as emojis. The method reduces the cognitive burden on a user when interacting with a user interface of a device of the present disclosure, thereby creating a more efficient human-machine interface. For battery-operated electronic devices, increasing the efficiency of user interaction with a user interface saves power and increases the time between battery charges.
일부 실시예들에서, 디스플레이 디바이스 및 하나 이상의 입력 디바이스들과 통신하는 전자 디바이스(예를 들어, 전자 디바이스, 터치 스크린을 포함하는 모바일 디바이스(예를 들어, 태블릿, 스마트폰, 미디어 플레이어, 또는 웨어러블 디바이스), 또는 터치 스크린을 포함하는 컴퓨터, 예컨대 디바이스(100), 디바이스(300), 또는 디바이스(500))는 디스플레이 디바이스를 통해 사용자 인터페이스, 예컨대 도 6a의 사용자 인터페이스(600)에서 텍스트 입력 구역 및 가상 키보드(예를 들어, 이모지 키보드를 디스플레이하고 있는 가상 키보드)를 디스플레이하며, 여기서, 가상 키보드는 복수의 그래픽 객체들의 복수의 선택가능 표현들을 포함한다(702). 일부 실시예들에서, 사용자 인터페이스는 사용자가 가상 키보드를 사용하여 텍스트를 입력할 수 있는 임의의 사용자 인터페이스이다. 일부 예들에서, 이모지 키보드는 선택된 이모지를 텍스트 입력 구역 내에 삽입하도록 선택가능한 복수의 이모지들을 디스플레이한다. 일부 실시예들에서, 이모지 키보드는 이모지들의 복수의 카테고리들을 포함한다.In some embodiments, an electronic device (e.g., an electronic device, a mobile device (e.g., a tablet, a smartphone, a media player, or a wearable device), or a computer (e.g., a touchscreen) that communicates with a display device and one or more input devices, such as device (100), device (300), or device (500)) displays a user interface via the display device, such as the user interface (600) of FIG. 6A , a text input area and a virtual keyboard (e.g., a virtual keyboard displaying an emoji keyboard), wherein the virtual keyboard includes a plurality of selectable representations of a plurality of graphical objects (702). In some embodiments, the user interface is any user interface through which a user can enter text using the virtual keyboard. In some examples, the emoji keyboard displays a plurality of selectable emojis for inserting a selected emoji into the text input area. In some embodiments, the emoji keyboard includes a plurality of categories of emojis.
일부 실시예들에서, 전자 디바이스들은 하나 이상의 입력 디바이스들을 통해, 그래픽 객체들의 복수의 표현들 중 제1 그래픽 객체의 제1 선택가능 표현을 선택하는 제1 사용자 입력(예를 들어, 이모지 키보드 상의 제1 이모지 상의 탭, 길게 누르기, 또는 임의의 다른 적합한 선택 입력), 예컨대 도 6e의 사용자 입력(603)을 수신하며, 여기서, 제1 그래픽 객체는 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소를 포함하는 복수의 맞춤화가능 시각적 요소들과 연관된다(예를 들어, 제1 이모지는 복수의 맞춤화가능 요소들을 포함한다)(704). 일부 실시예들에서, 제1 사용자 입력은 제1 이모지를 텍스트 입력 구역 내에 삽입하라는 요청에 대응한다. 일부 실시예들에서, 제1 사용자 입력은 아래에서 설명될 바와 같이, 제1 이모지를 맞춤화하라는 요청에 대응한다. 일부 실시예들에서, 제1 이모지는 선택적으로 다수의 사람들(예컨대, 그룹 이모지들, "가족" 이모지들 등)을 포함하고, 이모지 내의 각각의 사람은 맞춤화가능 요소이다. 일부 실시예들에서, 다중-사람 이모지 내의 각각의 사람의 피부 톤은 개별적으로 맞춤화가능하다. 일부 실시예들에서, 제1 이모지는 맞춤화가능 액세서리들(예를 들어, 모자 유형, 모자 색상 등)을 포함한다. 일부 예들에서, 사용자는 각각의 맞춤화가능 요소에 대한 맞춤화 옵션을 선택할 수 있다.In some embodiments, the electronic devices receive, via one or more input devices, a first user input (e.g., a tap, a long press, or any other suitable selection input on a first emoji on an emoji keyboard) selecting a first selectable representation of a first graphical object from among a plurality of representations of graphical objects, such as user input (603) of FIG. 6E , wherein the first graphical object is associated with a plurality of customizable visual elements including a first customizable visual element and a second customizable visual element (e.g., the first emoji includes a plurality of customizable elements) (704). In some embodiments, the first user input corresponds to a request to insert the first emoji into a text input area. In some embodiments, the first user input corresponds to a request to customize the first emoji, as described below. In some embodiments, the first emoji optionally includes multiple people (e.g., group emojis, “family” emojis, etc.), wherein each person within the emoji is a customizable element. In some embodiments, the skin tone of each person within the multi-person emoji is individually customizable. In some embodiments, the first emoji includes customizable accessories (e.g., hat type, hat color, etc.). In some examples, the user can select a customization option for each customizable element.
일부 실시예들에서, 제1 사용자 입력을 수신하는 것에 응답하여(706), 하나 이상의 제1 기준들이 만족된다는 결정에 따라(예를 들어, 하나 이상의 제1 기준들이 만족되면, 사용자가 제1 이모지의 요소들을 맞춤화하기 위한 맞춤화 사용자 인터페이스가 디스플레이됨), 전자 디바이스는 디스플레이 디바이스를 통해, 도 6f의 다중-요소 맞춤화 사용자 인터페이스(624)와 같은 맞춤화 사용자 인터페이스를 디스플레이한다(예를 들어, 제1 이모지의 맞춤화가능 요소들을 맞춤화하기 위한 사용자 인터페이스를 디스플레이함)(708).In some embodiments, in response to receiving the first user input (706), and upon a determination that one or more first criteria are satisfied (e.g., if the one or more first criteria are satisfied, a customization user interface for the user to customize elements of the first emoji is displayed), the electronic device displays, via the display device, a customization user interface, such as the multi-element customization user interface (624) of FIG. 6F (e.g., displays a user interface for customizing customizable elements of the first emoji) (708).
일부 실시예들에서, 하나 이상의 제1 기준들이 만족되지 않으면, 맞춤화 사용자 인터페이스는 디스플레이되지 않는다. 일부 실시예들에서, 맞춤화 사용자 인터페이스는 하나 이상의 제1 기준들이 만족되는 것에 관계없이 디스플레이된다. 일부 실시예들에서, 하나 이상의 제1 기준들이 만족되지 않으면, 제1 이모지가 텍스트 입력 구역 내에 삽입된다. 일부 실시예들에서, 사용자가 제1 이모지의 맞춤화를 이전에 완료하지 않았다면, 하나 이상의 제1 기준들이 충족된다. 일부 실시예들에서, 사용자 입력이 길게 누르기(예를 들어, 미리 결정된 임계치, 예컨대 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등보다 긴 지속기간을 갖는 터치다운 및 계속된 접촉)이면, 하나 이상의 제1 기준들이 만족된다. 일부 실시예들에서, 사용자가 제1 이모지의 맞춤화를 이전에 완료했다면(예를 들어, 각각의 맞춤화가능 요소에 대한 맞춤화 옵션을 선택했다면) 또는 선택적으로는, 사용자가 제1 이모지의 디폴트 변형을 이전에 선택했고, 제1 이모지의 디폴트 변형을 텍스트 입력 필드 내에 삽입했다면, 하나 이상의 제1 기준들이 만족되지 않는다. 일부 실시예들에서, 제1 이모지가 맞춤화가능 이모지가 아니거나 또는 다수의 맞춤화가능 요소들을 갖는 이모지(예를 들어, 단일 맞춤화가능 요소만을 갖는 이모지)가 아니라면, 하나 이상의 제1 기준들이 만족되지 않는다. 일부 실시예들에서, 맞춤화 사용자 인터페이스는, 맞춤화 사용자 인터페이스가 디스플레이되기 전에 디스플레이되었던 사용자 인터페이스(예를 들어, 팝업 사용자 인터페이스)의 요소들 위에 오버레이되는 사용자 인터페이스 요소이다. 일부 실시예들에서, 맞춤화 사용자 인터페이스는 풀-스크린 사용자 인터페이스이다. 일부 실시예들에서, 맞춤화 사용자 인터페이스는 맞춤화가능 사용자 인터페이스가 디스플레이되기 전에 디스플레이되었던 사용자 인터페이스를 디스플레이하도록 해산가능하다.In some embodiments, if one or more of the first criteria are not satisfied, the personalized user interface is not displayed. In some embodiments, the personalized user interface is displayed regardless of whether the one or more of the first criteria are satisfied. In some embodiments, if one or more of the first criteria are not satisfied, the first emoji is inserted into the text input area. In some embodiments, if the user has not previously completed customization of the first emoji, the one or more of the first criteria are satisfied. In some embodiments, if the user input is a long press (e.g., a touchdown and continued contact having a duration greater than a predetermined threshold, such as 0.1 second, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), the one or more of the first criteria are satisfied. In some embodiments, if the user has previously completed customization of the first emoji (e.g., selected a customization option for each customizable element) or, optionally, if the user has previously selected a default variation of the first emoji and inserted the default variation of the first emoji into the text input field, one or more of the first criteria are not satisfied. In some embodiments, if the first emoji is not a customizable emoji or is not an emoji with multiple customizable elements (e.g., an emoji with only a single customizable element), one or more of the first criteria are not satisfied. In some embodiments, the customizable user interface is a user interface element that overlays elements of a user interface that was displayed before the customizable user interface was displayed (e.g., a pop-up user interface). In some embodiments, the customizable user interface is a full-screen user interface. In some embodiments, the customizable user interface is dismissible to display a user interface that was displayed before the customizable user interface was displayed.
일부 실시예들에서, 맞춤화 사용자 인터페이스는, 제1 맞춤화가능 시각적 요소를 맞춤화하기 위한 하나 이상의 제1 선택가능 옵션들을 포함하는 제1 섹션(710), 예컨대 도 6f의 변형들(626-1 내지 626-4)(예를 들어, 제1 맞춤화가능 시각적 요소에 대한 하나 이상의 변형들을 디스플레이하는 제1 행), 제2 맞춤화가능 시각적 요소를 맞춤화하기 위한 하나 이상의 제2 선택가능 옵션들을 포함하는 제2 섹션(712), 예컨대 도 6f의 변형들(628-1 내지 628-4)(예를 들어, 제2 맞춤화가능 시각적 요소에 대한 하나 이상의 변형들을 디스플레이하는 제2 행), 및 제1 그래픽 객체의 현재 맞춤화 상태를 표시하는 제1 그래픽 객체의 제1 개개의 표현을 디스플레이하기 위한 제3 섹션(714), 예컨대 도 6f의 맞춤화된 변형(630-2)(예를 들어, 이모지의 현재 맞춤화 상태의 표현을 디스플레이하는 제3 행)을 포함한다.In some embodiments, the customization user interface includes a first section (710) including one or more first selectable options for customizing a first customizable visual element, such as variations (626-1 through 626-4) of FIG. 6f (e.g., a first row displaying one or more variations for the first customizable visual element), a second section (712) including one or more second selectable options for customizing a second customizable visual element, such as variations (628-1 through 628-4) of FIG. 6f (e.g., a second row displaying one or more variations for the second customizable visual element), and a third section (714) for displaying a first individual representation of the first graphical object indicating a current customization state of the first graphical object, such as customized variations (630-2) of FIG. 6f (e.g., a third row displaying a representation of a current customization state of an emoji).
일부 예들에서, 제1 행 내의 선택가능 옵션들은 제1 맞춤화가능 시각적 요소에 대한 개개의 변형의 시각적 미리보기이다. 일부 예들에서, 제1 선택가능 옵션들에 의해 맞춤화가능하지 않은 시각적 요소들은 제1 선택가능 옵션들에 의해 맞춤화가능한 시각적 요소들과 상이한 시각적 특성으로 디스플레이된다. 예를 들어, 제1 이모지가 그룹 이모지(예를 들어, 2명의 사람 이모지)이면, 제1 섹션은 선택적으로 좌측 사람을 맞춤화하기 위한 것이다. 그러한 예들에서, 제1 섹션 내의 선택가능 옵션들은 선택적으로, 플레이스홀더 외관(예를 들어, 제1 섹션이 우측 사람을 맞춤화하기 위한 것이 아니라는 것을 표시하기 위해 그레이 아웃됨)을 갖는 우측 사람과 함께 디스플레이되고, 좌측 사람은 개개의 변형으로 디스플레이된다. 예를 들어, 제1 섹션은 선택적으로, 좌측 사람에 대한 하나 이상의 피부 톤 옵션들을 포함한다. 일부 예들에서, 제2 행 내의 선택가능 옵션들은 제2 맞춤화가능 시각적 요소에 대한 개개의 변형의 시각적 미리보기이다. 일부 예들에서, 제2 선택가능 옵션들에 의해 맞춤화가능하지 않은 시각적 요소들은 제2 선택가능 옵션들에 의해 맞춤화가능한 시각적 요소들과 상이한 시각적 특성으로 디스플레이된다. 예를 들어, 제1 이모지가 그룹 이모지(예를 들어, 2명의 사람 이모지)이면, 제2 섹션은 선택적으로 우측 사람을 맞춤화하기 위한 것이다. 그러한 예들에서, 제2 섹션 내의 선택가능 옵션들은 선택적으로, 플레이스홀더 외관(예를 들어, 제2 섹션이 좌측 사람을 맞춤화하기 위한 것이 아니라는 것을 표시하기 위해 그레이 아웃됨)을 갖는 좌측 사람과 함께 디스플레이되고, 우측 사람은 개개의 변형으로 디스플레이된다. 예를 들어, 제2 섹션은 선택적으로, 우측 사람에 대한 하나 이상의 피부 톤 옵션들을 포함한다. 일부 실시예들에서, 이모지가 아직 맞춤화되지 않았다면, 현재 맞춤화 상태의 표현은 이모지가 맞춤화되지 않았다는 것을 표시한다. 예를 들어, 표현은, 이모지가 부분적으로 또는 완전히 맞춤화된 경우와 상이한 시각적 특성으로 디스플레이될 수 있다. 일부 실시예들에서, 표현은 플레이스홀더 외관들(예를 들어, 회색)을 갖는 시각적 요소들로 디스플레이된다. 일부 실시예들에서, 맞춤화되지 않은 이모지는 이모지를 텍스트 입력 구역 내에 삽입하도록 선택가능하지 않다. 일부 실시예들에서, 3개의 섹션들이 맞춤화 사용자 인터페이스 상에서 별개의 행들로서 디스플레이된다. 일부 실시예들에서, 3개의 섹션들은 단일 행으로 디스플레이되지만, (예를 들어, 화이트스페이스 또는 묘사 마커에 의해) 시각적으로 분리된다.In some examples, the selectable options within the first row are visual previews of individual variations for the first customizable visual element. In some examples, the visual elements that are not customizable by the first selectable options are displayed with different visual characteristics than the visual elements that are customizable by the first selectable options. For example, if the first emoji is a group emoji (e.g., two person emoji), the first section is optionally for customizing the left person. In such examples, the selectable options within the first section are optionally displayed with the right person having a placeholder appearance (e.g., grayed out to indicate that the first section is not for customizing the right person), and the left person is displayed as an individual variation. For example, the first section optionally includes one or more skin tone options for the left person. In some examples, the selectable options within the second row are visual previews of individual variations for the second customizable visual element. In some examples, visual elements that are not customizable by the second selectable options are displayed with different visual characteristics than visual elements that are customizable by the second selectable options. For example, if the first emoji is a group emoji (e.g., two person emoji), the second section is optionally for customizing the right person. In such examples, the selectable options within the second section are optionally displayed with the left person having a placeholder appearance (e.g., grayed out to indicate that the second section is not for customizing the left person), and the right person is displayed as an individual variation. For example, the second section optionally includes one or more skin tone options for the right person. In some embodiments, if the emoji has not yet been customized, the representation of the current customization state indicates that the emoji is not customized. For example, the representation may be displayed with different visual characteristics than if the emoji was partially or fully customized. In some embodiments, the representation is displayed with visual elements having placeholder appearances (e.g., grayed out). In some embodiments, non-customized emojis are not selectable for insertion into the text input area. In some embodiments, the three sections are displayed as separate rows on the customized user interface. In some embodiments, the three sections are displayed as a single row, but are visually separated (e.g., by whitespace or a descriptive marker).
(예를 들어, 이모지 키보드 상의 이모지의 사용자 선택을 수신하고, 이모지가 아직 맞춤화되지 않았다면, 이모지의 각각의 맞춤화가능 컴포넌트에 대한 옵션들을 선택하기 위한 상이한 섹션들을 갖는 맞춤화 사용자 인터페이스를 디스플레이함으로써) 다수의 맞춤화가능 컴포넌트들을 갖는 이모지에 대한 맞춤화 사용자 인터페이스를 제공하는 위에서 설명된 방식은, (예를 들어, 선택된 이모지의 각각의 맞춤화가능 컴포넌트에 대한 맞춤화 옵션들을 사용자에게 제시함으로써) 사용자가 이모지를 삽입하려는 소망을 나타내었을 때, 선택된 이모지를 맞춤화하는 신속하고 효율적인 방식을 제공하며, 이는, (예를 들어, 이모지 키보드 상의 개개의 이모지를 선택하기 전에 이모지의 컴포넌트들을 맞춤화하기 위해 별개의 사용자 인터페이스로 내비게이팅하도록 사용자에게 요구하지 않으면서, 사용자가 각각의 맞춤화가능 컴포넌트에 대한 이용가능한 옵션들을 보고, 이모지의 현재 맞춤화 상태를 보고, 원하는 맞춤화 옵션들을 선택하게 허용함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of providing a customization user interface for an emoji having multiple customizable components (e.g., by receiving a user selection of an emoji on an emoji keyboard and, if the emoji has not yet been customized, displaying a customization user interface having different sections for selecting options for each of the customizable components of the emoji) provides a quick and efficient way to customize a selected emoji when a user has indicated a desire to insert an emoji (e.g., by presenting the user with customization options for each of the customizable components of the selected emoji), which simplifies the interaction between a user and an electronic device, improves the operability of the electronic device, and makes the user-device interface more efficient (e.g., by allowing the user to view available options for each of the customizable components, view the current customization status of the emoji, and select desired customization options, without requiring the user to navigate to a separate user interface to customize the components of the emoji before selecting an individual emoji on an emoji keyboard), which additionally allows the user to use the electronic device more quickly and efficiently. It reduces power consumption of electronic devices and improves battery life by reducing errors in device usage.
일부 실시예들에서, 제1 개개의 표현은 하나 이상의 제1 선택가능 옵션들에 기초하여 제1 맞춤화가능 시각적 요소 및 하나 이상의 제2 선택가능 옵션들에 기초하여 제2 맞춤화가능 시각적 요소를 반영하며(716), 예컨대 도 6p의 맞춤화된 변형(630-2)은 변형(626-1 및 628-3)의 선택을 반영한다(예를 들어, 이모지가 부분적으로 또는 완전히 맞춤화되었다면, 제1 개개의 표현은 사용자의 맞춤화의 결과를 디스플레이한다(예를 들어, 표현은 선택된 맞춤화들을 반영한다)).In some embodiments, the first individual representation reflects a first customizable visual element based on one or more first selectable options and a second customizable visual element based on one or more second selectable options (716), for example, the customized variation (630-2) of FIG. 6p reflects a selection of variations (626-1 and 628-3) (e.g., if the emoji is partially or fully customized, the first individual representation displays the results of the user's customization (e.g., the representation reflects the selected customizations)).
일부 실시예들에서, 제1 개개의 표현은 제1 및 제2 섹션들로부터 사용자의 선택들의 미리보기를 디스플레이한다. 예를 들어, 제1 이모지가 그룹 이모지(예를 들어, 2명의 사람 이모지)이면, 표현은 선택적으로, 어떠한 사람도 아직 맞춤화되지 않았다는 것을 표시하기 위해 플레이스홀더 외관들(예를 들어, 회색)을 갖는 사람들 둘 모두를 초기에 디스플레이한다. 그러한 예들에서, 사용자가 제1 섹션에서 옵션을 선택하는 것에 응답하여, 표현은 선택적으로, 좌측 사람이 선택된 옵션으로 도시되고 (예를 들어, 사용자가 우측 사람에 대한 옵션을 아직 선택하지 않았기 때문에) 우측 사람이 플레이스홀더 외관으로 여전히 디스플레이되도록 업데이트된다. 일부 실시예들에서, 사용자가 제2 섹션에서 옵션을 선택하는 것에 응답하여, 표현은 선택적으로, 우측 사람이 선택된 옵션으로 도시되도록 업데이트된다. 일부 실시예들에서, 맞춤화를 완료한 이후의 다른 옵션의 선택은 이전의 선택을 오버라이딩하고, 표현은 새로운 선택을 반영하도록 업데이트된다. 일부 실시예들에서, 사용자가 맞춤화를 완료했다면(예를 들어, 각각의 맞춤화가능 요소에 대한 옵션을 선택했다면), 표현의 선택은 맞춤화된 이모지를 텍스트 입력 필드 내에 삽입한다. 일부 실시예들에서, 사용자가 맞춤화를 완료하지 않았다면(예를 들어, 각각의 요구된 맞춤화가능 요소에 대한 옵션을 선택하지 않았다면), 표현의 선택은 텍스트 입력 필드 내로의 맞춤화된 이모지의 삽입을 야기하지 않는다.In some embodiments, the first individual representation displays a preview of the user's selections from the first and second sections. For example, if the first emoji is a group emoji (e.g., two person emoji), the representation optionally initially displays both people with placeholder appearances (e.g., gray) to indicate that no person has yet been customized. In such examples, in response to the user selecting an option in the first section, the representation optionally updates to show the left person as the selected option (e.g., because the user has not yet selected an option for the right person) and to still display the right person with the placeholder appearance. In some embodiments, in response to the user selecting an option in the second section, the representation optionally updates to show the right person as the selected option. In some embodiments, selection of another option after completing customization overrides the previous selection, and the representation is updated to reflect the new selection. In some embodiments, if the user has completed customization (e.g., selected an option for each customizable element), selection of the representation inserts the customized emoji into the text input field. In some embodiments, if the user has not completed customization (e.g., has not selected an option for each requested customizable element), selecting an expression does not result in insertion of the customized emoji into the text input field.
(예를 들어, 사용자의 선택들에 기초하여 시각적 요소들을 반영하는 이모지의 표현을 디스플레이함으로써) 사용자의 맞춤화 선택들의 미리보기를 디스플레이하는 위에서 설명된 방식은 (예를 들어, 사용자가 맞춤화들의 선택들을 수행했던 동일한 사용자 인터페이스 상에서 사용자의 맞춤화들을 반영하는 표현을 디스플레이함으로써) 사용자가 맞춤화 옵션들을 선택할 때 사용자의 맞춤화의 결과들을 디스플레이하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 사용자의 맞춤화의 결과들을 미리보게 하기 위해 별개의 사용자 인터페이스로 내비게이팅하도록 사용자에게 요구하지 않으면서, 사용자가 이모지를 맞춤화하고 있을 때 사용자가 맞춤형 이모지의 미리보기를 보게 허용함으로써(이는 맞춤화된 이모지를 생성할 시에 사용자 에러를 피함) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of displaying a preview of a user's customization choices (e.g., by displaying a representation of an emoji that reflects the user's customizations on the same user interface in which the user made the selections of the customizations) provides a quick and efficient way to display the results of the user's customizations when the user selects customization options (e.g., by displaying a representation that reflects the user's customizations on the same user interface in which the user made the selections of the customizations), which simplifies the interaction between the user and the electronic device (e.g., by allowing the user to see a preview of a customized emoji as he or she customizes the emoji without requiring the user to navigate to a separate user interface to preview the results of his or her customizations (which avoids user errors in generating customized emojis), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 그래픽 객체의 제1 개개의 표현은 제1 맞춤화가능 시각적 요소의 표현 및 제2 맞춤화가능 시각적 요소의 표현, 예컨대 도 6h의 맞춤화된 변형(630-2) 상의 좌측 및 우측 사람들을 포함한다(718)(예를 들어, 제1 개개의 표현은 맞춤화가능 시각적 요소들을 포함하는 개개의 이모지의 이미지이다).In some embodiments, the first individual representation of the first graphical object includes a representation of a first customizable visual element and a representation of a second customizable visual element, such as the left and right people on the customized variation (630-2) of FIG. 6h (718) (e.g., the first individual representation is an image of an individual emoji that includes customizable visual elements).
일부 실시예들에서, 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는(예를 들어, 2명의 사람 이모지의 좌측 사람 또는 우측 사람 중 어느 한 명에 대한 변형들이 선택되지 않았다는) 결정에 따라, 제1 맞춤화가능 시각적 요소의 표현 및 제2 맞춤화가능 시각적 요소의 표현은 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 것을 표시하는 플레이스홀더 요소들, 예컨대 도 6h의 맞춤화된 변형(630-2) 내의 회색으로 윤곽을 나타낸 캐릭터들로 디스플레이된다(720)(예를 들어, 시각적 요소들이 아직 맞춤화되지 않았다면, 제1 개개의 표현 내의 좌측 및 우측 사람은 플레이스홀더 요소들이다).In some embodiments, upon a determination that the first customizable visual element and the second customizable visual element are not customized (e.g., no variations for either the left person or the right person of the two person emoji were selected), the representation of the first customizable visual element and the representation of the second customizable visual element are displayed (720) as placeholder elements indicating that the first customizable visual element and the second customizable visual element are not customized, such as characters outlined in gray within the customized variation (630-2) of FIG. 6H (e.g., if the visual elements have not yet been customized, the left and right people within the first individual representation are placeholder elements).
일부 실시예들에서, 제1 개개의 표현은 좌측 또는 우측 사람 중 어느 한명에 대한 크롭핑이 없는 2명의 사람 이모지의 전체 이미지이다. 일부 실시예들에서, 플레이스홀더 요소들은 유효한 변형과 상이한 시각적 특성을 갖는 맞춤화가능 요소의 표현들이다. 예를 들어, 좌측 및 우측 사람들은 유효한 변형과 상이한 회색, 음영, 또는 임의의 다른 시각적 특성과 같은 플레이스홀더 외관들로 디스플레이된다(예를 들어, 플레이스홀더 요소들은 유효한 피부 톤 옵션을 반영하지 않고, 선택적으로 각각의 맞춤화가능 요소의 윤곽을 디스플레이한다).In some embodiments, the first individual representation is a full image of the two person emoji, without cropping of either the left or right person. In some embodiments, the placeholder elements are representations of the customizable element that have different visual characteristics than the valid variations. For example, the left and right people are displayed with placeholder appearances, such as gray, shade, or any other visual characteristics that are different than the valid variations (e.g., the placeholder elements do not reflect the valid skin tone options, and optionally display an outline of each of the customizable elements).
맞춤화가능 시각적 요소들 대신에 플레이스홀더 요소들을 갖는 그래픽 객체의 미리보기를 디스플레이하는 위에서 설명된 방식은 (예를 들어, 유효한 맞춤형 변형들 대신 플레이스홀더 요소들을 디스플레이함으로써) 특정 맞춤화가능 시각적 요소들이 아직 맞춤화되지 않았다는 것을 사용자에게 표시하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 제1 개개의 표현이 텍스트 입력 구역 내에 삽입될 수 있기 전에 추가적인 맞춤화가 요구되는지 여부를 결정하기 위해 부가적인 입력들을 수행하거나 별개의 사용자 인터페이스로 내비게이팅하도록 사용자에게 요구하지 않으면서, 사용자가 특정 맞춤화가능 시각적 요소들이 아직 맞춤화되지 않았다는 것을 보게 허용함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of displaying a preview of a graphical object having placeholder elements instead of customizable visual elements (e.g., by displaying placeholder elements instead of valid customizable variations) provides a quick and efficient way to indicate to a user that certain customizable visual elements have not yet been customized, which simplifies the interaction between a user and an electronic device, improves the operability of the electronic device, and makes the user-device interface more efficient (e.g., by allowing the user to see that certain customizable visual elements have not yet been customized without requiring the user to perform additional inputs or navigate to a separate user interface to determine whether additional customization is required before the first individual expression can be inserted into a text input area), which additionally reduces power usage and improves battery life of the electronic device by enabling the user to use the electronic device more quickly and efficiently while reducing errors in use of the device.
일부 실시예들에서, 제1 그래픽 객체의 제1 개개의 표현이 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소에 대한 플레이스홀더 요소들로 디스플레이되는 동안, 하나 이상의 입력 디바이스들을 통해, 맞춤화 사용자 인터페이스에서 개개의 선택가능 옵션을 선택하는 제2 사용자 입력, 예컨대, 도 6j의 사용자 입력(603)을 수신한다(722)(예를 들어, 개개의 이모지가 어떠한 맞춤화들도 갖지 않아서, 개개의 표현이 플레이스홀더 요소들(예를 들어, 사람들의 윤곽들)만을 디스플레이하고 있는 동안, 변형 옵션을 선택하는 입력을 맞춤화 사용자 인터페이스 상에서 수신함).In some embodiments, while a first individual representation of a first graphical object is displayed with placeholder elements for the first customizable visual element and the second customizable visual element, a second user input, e.g., user input (603 of FIG. 6J ), is received (722) via one or more input devices selecting an individual selectable option on the customization user interface (e.g., while the individual emoji does not have any customizations, and thus the individual representation only displays placeholder elements (e.g., outlines of people), selecting a transform option on the customization user interface).
일부 실시예들에서, 개개의 선택가능 옵션을 선택하는 제2 사용자 입력을 수신하는 것에 응답하여(724), 개개의 선택가능 옵션이 하나 이상의 제1 선택가능 옵션들 중 제1 선택가능 옵션이라는 결정에 따라, 전자 디바이스는 제1 맞춤화가능 시각적 요소에 대한 플레이스홀더 요소를 제1 선택가능 옵션에 대응하는 제1 맞춤화가능 시각적 요소의 제1 변형으로 대체하도록 제1 그래픽 객체의 제1 개개의 표현을 업데이트하며(726), 예컨대, 맞춤화된 변형(630-2)의 좌측 사람은 도 6k의 변형(626-1)의 피부 톤 옵션을 나타내도록 업데이트된다(예를 들어, 사용자가 제1 맞춤화가능 시각적 요소에 대한 변형(예를 들어, 좌측 사람)을 선택하는 것에 응답하여, 선택된 변형을 갖는 제1 개개의 표현을 업데이트함).In some embodiments, in response to receiving a second user input selecting an individual selectable option (724), and in response to a determination that the individual selectable option is a first selectable option of the one or more first selectable options, the electronic device updates (726) the first individual representation of the first graphical object to replace the placeholder element for the first customizable visual element with a first variation of the first customizable visual element corresponding to the first selectable option, for example, the left person in the customized variation (630-2) is updated to represent the skin tone option of variation (626-1) of FIG. 6K (e.g., in response to the user selecting a variation for the first customizable visual element (e.g., the left person), updating the first individual representation with the selected variation).
예를 들어, 사용자가 좌측 사람에 대한 피부 톤 옵션을 선택했다면, 제1 개개의 표현 내의 좌측 사람은 선택된 피부 톤 옵션을 갖도록 업데이트된다. 따라서, 일부 실시예들에서, 제1 개개의 표현은 사용자의 선택들의 미리보기를 디스플레이한다. 일부 실시예들에서, 선택되지 않았던 맞춤화가능 시각적 요소는 플레이스홀더 요소로서 계속 디스플레이된다(예를 들어, 우측 사람은 회색과 같은 플레이스홀더 외관으로 계속 디스플레이된다). 일부 실시예들에서, 사용자가 제1 맞춤화가능 시각적 요소에 대한 변형을 선택하는 것에 응답하여, 선택된 변형은 그것이 선택되었다는 표시와 함께 디스플레이된다. 예를 들어, 선택된 변형은 선택적으로, 특정 색상으로 하이라이트되거나, 확대되거나, 또는 임의의 다른 적합한 시각적 특성으로 디스플레이된다.For example, if the user selected a skin tone option for the left person, the left person in the first individual representation is updated to have the selected skin tone option. Accordingly, in some embodiments, the first individual representation displays a preview of the user's selections. In some embodiments, the customizable visual element that was not selected continues to be displayed as a placeholder element (e.g., the right person continues to be displayed with a placeholder appearance, such as gray). In some embodiments, in response to the user selecting a variation for the first customizable visual element, the selected variation is displayed with an indication that it has been selected. For example, the selected variation is optionally highlighted in a particular color, enlarged, or displayed with any other suitable visual characteristic.
일부 실시예들에서, 개개의 선택가능 옵션을 선택하는 제2 사용자 입력을 수신하는 것에 응답하여(724), 개개의 선택가능 옵션이 하나 이상의 제2 선택가능 옵션들 중 제2 선택가능 옵션이라는 결정에 따라, 전자 디바이스는 제2 맞춤화가능 시각적 요소에 대한 플레이스홀더 요소를 제2 선택가능 옵션에 대응하는 제2 맞춤화가능 시각적 요소의 제1 변형으로 대체하도록 제1 그래픽 객체의 제1 개개의 표현을 업데이트하며(728), 예컨대, 맞춤화된 변형(630-2)의 우측 사람은 도 6p의 변형(628-3)의 피부 톤 옵션을 나타내도록 업데이트된다(예를 들어, 사용자가 제2 맞춤화가능 시각적 요소에 대한 변형(예를 들어, 우측 사람)을 선택하는 것에 응답하여, 선택된 변형을 갖는 제1 개개의 표현을 업데이트함).In some embodiments, in response to receiving a second user input selecting an individual selectable option (724), and in response to a determination that the individual selectable option is a second selectable option of the one or more second selectable options, the electronic device updates (728) the first individual representation of the first graphical object to replace the placeholder element for the second customizable visual element with a first variation of the second customizable visual element corresponding to the second selectable option, for example, the person on the right in the customized variation (630-2) is updated to represent the skin tone option of variation (628-3) of FIG. 6p (e.g., in response to the user selecting a variation for the second customizable visual element (e.g., the person on the right) to update the first individual representation with the selected variation).
예를 들어, 사용자가 우측 사람에 대한 피부 톤 옵션을 선택했다면, 제1 개개의 표현 내의 우측 사람은 선택된 피부 톤 옵션을 갖도록 업데이트된다. 따라서, 일부 실시예들에서, 제1 개개의 표현은 사용자의 선택들의 미리보기를 디스플레이한다. 일부 실시예들에서, 선택되지 않았던 맞춤화가능 시각적 요소는 플레이스홀더 요소로서 계속 디스플레이된다(예를 들어, 좌측 사람은 회색과 같은 플레이스홀더 외관으로 계속 디스플레이된다). 일부 실시예들에서, 사용자가 제2 맞춤화가능 시각적 요소에 대한 변형을 선택하는 것에 응답하여, 선택된 변형은 그것이 선택되었다는 표시와 함께 디스플레이된다. 예를 들어, 선택된 변형은 선택적으로, 특정 색상으로 하이라이트되거나, 확대되거나, 또는 임의의 다른 적합한 시각적 특성을 갖는다. 일부 실시예들에서, 옵션들 둘 모두가 이제 선택되었다면, 제1 개개의 표현은 더 이상 임의의 플레이스홀더 요소들을 디스플레이하지 않는다. 일부 실시예들에서, 사용자 입력이 맞춤화를 완료하면, 맞춤화가 완료되었다는 표시가 디스플레이된다. 일부 실시예들에서, 표시는 위에서 설명된 변형들의 애니메이션(예를 들어, 표현의 크기를 일시적으로 확대함)과 유사한 제1 개개의 표현 상의 애니메이션이다.For example, if the user selected a skin tone option for the right person, the right person in the first individual representation is updated to have the selected skin tone option. Thus, in some embodiments, the first individual representation displays a preview of the user's selections. In some embodiments, the customizable visual element that was not selected continues to be displayed as a placeholder element (e.g., the left person continues to be displayed with a placeholder appearance, such as gray). In some embodiments, in response to the user selecting a variation for the second customizable visual element, the selected variation is displayed with an indication that it has been selected. For example, the selected variation is optionally highlighted in a particular color, enlarged, or has any other suitable visual characteristic. In some embodiments, if both options are now selected, the first individual representation no longer displays any of the placeholder elements. In some embodiments, when the user input completes the customization, an indication that the customization is complete is displayed. In some embodiments, the indication is an animation on the first individual representation similar to the animation of the variations described above (e.g., temporarily enlarging the size of the representation).
사용자가 제1 및 제2 맞춤화가능 시각적 요소들에 대한 변형들을 선택할 때 그래픽 객체의 미리보기에서의 플레이스홀더 요소들을 사용자의 선택들로 대체하는 위에서 설명된 방식은 (예를 들어, 사용자가 변형들을 선택할 때, 플레이스홀더 요소들을 사용자의 선택된 변형들로 대체함으로써) 사용자가 선택들이 조합에서 어떻게 보이는지를 미리보기위한 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 이모지를 삽입하거나, 부가적인 입력들을 수행하거나, 또는 별개의 사용자 인터페이스로 내비게이팅하도록 사용자에게 요구하지 않으면서 사용자가 사용자의 맞춤화의 결과를 미리보게 허용함으로써(이는 또한, 이모지를 맞춤화/삽입할 시에 사용자 에러를 감소시킴)) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of replacing placeholder elements in a preview of a graphical object with the user's selections when the user selects variations for the first and second customizable visual elements (e.g., by replacing the placeholder elements with the user's selected variations when the user selects variations) provides a quick and efficient way for the user to preview what their selections will look like in combination, which simplifies the interaction between the user and the electronic device (e.g., by allowing the user to preview the results of their customizations without requiring the user to insert an emoji, perform additional inputs, or navigate to a separate user interface (which also reduces user errors when customizing/inserting an emoji)), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by allowing the user to use the electronic device more quickly and efficiently while reducing errors in use of the device.
일부 실시예들에서, 제1 그래픽 객체의 제1 개개의 표현을 제1 선택가능 옵션에 대응하는 제1 맞춤화가능 시각적 요소의 제1 변형으로 업데이트한 이후, 전자 디바이스는 하나 이상의 입력 디바이스들을 통해 하나 이상의 제1 선택가능 옵션들 중 제3 선택가능 옵션을 선택하는 제3 사용자 입력, 예컨대 도 6w의 사용자 입력(603)을 수신한다(730)(예를 들어, 개개의 표현이 좌측 사람에 대한 맞춤화된 피부 톤을 갖는 동안, 좌측 사람에 대한 다른 피부 톤을 선택하는 옵션을 수신함).In some embodiments, after updating the first individual representation of the first graphical object with the first variation of the first customizable visual element corresponding to the first selectable option, the electronic device receives (730) a third user input, such as user input (603 of FIG. 6w), selecting a third selectable option from the one or more first selectable options via one or more input devices (e.g., while the individual representation has a skin tone customized for the left person, receiving an option to select a different skin tone for the left person).
일부 실시예들에서, 제3 사용자 입력을 수신하는 것에 응답하여, 전자 디바이스는 제1 맞춤화가능 시각적 요소의 제1 변형을 제3 선택가능 옵션에 대응하는 제1 맞춤화가능 시각적 요소의 제1 변형과 상이한 제2 변형으로 대체하도록 제1 그래픽 객체의 제1 개개의 표현을 업데이트하며(732), 예컨대, 맞춤화된 변형(630-2) 내의 좌측 사람은 도 6x의 변형(626-2)의 피부 톤을 반영하도록 업데이트된다(예를 들어, 제1 개개의 표현을 새로운 피부 톤 선택으로 업데이트함).In some embodiments, in response to receiving the third user input, the electronic device updates (732) the first individual representation of the first graphical object to replace the first variation of the first customizable visual element with a second variation that is different from the first variation of the first customizable visual element corresponding to the third selectable option, for example, the left person in the customized variation (630-2) is updated to reflect the skin tone of the variation (626-2) of FIG. 6x (e.g., updating the first individual representation with the new skin tone selection).
예를 들어, 제1 개개의 표현 내의 좌측 사람이 제1 피부 톤을 디스플레이하고 있었고 사용자가 제2 피부 톤 옵션을 선택하면, 제1 개개의 표현 내의 좌측 사람은 제2 피부 톤을 갖도록 업데이트된다. 일부 실시예들에서, 우측 사람(예를 들어, 제2 맞춤화가능 요소)에 대한 새로운 피부 톤 변형을 선택하는 사용자 입력은 유사하게, 제1 개개의 표현이 우측 사람의 피부 톤을 새롭게 선택된 피부 톤으로 업데이트하게 할 것이다. 따라서, 일부 실시예들에서, 이전에 선택된 변형들은 다른 변형의 선택으로 오버라이딩되거나 대체된다. 개개의 이모지의 맞춤화를 변화시키는 것은 선택적으로 개개의 이모지의 이전에 삽입된 인스턴스들이 새로운 맞춤화로 업데이트되게 하지 않고(예를 들어, 텍스트 입력 구역들 내에 삽입된 개개의 이모지의 이전의 버전들은 그들이 삽입되었을 때 적용되었던 변형들을 유지함), 선택적으로 개개의 이모지의 미래의 삽입들에만 적용된다는 것이 이해된다. 일부 실시예들에서, 맞춤화가 완료된 이후, 이모지의 맞춤화는 상이한 변형의 선택으로 수정되거나 업데이트될 수 있다. 일부 실시예들에서, 이모지의 맞춤화는 단지 수정되거나 교체될 수 있지만, 클리어(clear)되거나 재설정(예를 들어, 어떠한 맞춤화 및 플레이스홀더 요소들도 나타나지 않은 상태로 재설정)될 수 없다.For example, if the left person in the first individual representation was displaying the first skin tone and the user selected the second skin tone option, the left person in the first individual representation would be updated to have the second skin tone. In some embodiments, user input selecting a new skin tone variation for the right person (e.g., the second customizable element) would similarly cause the first individual representation to update the right person's skin tone to the newly selected skin tone. Thus, in some embodiments, previously selected variations are overridden or replaced by the selection of a different variation. It is understood that changing the customization of an individual emoji optionally does not cause previously inserted instances of the individual emoji to be updated with the new customization (e.g., previous versions of the individual emoji inserted into text input areas retain the variations that were applied when they were inserted), and optionally only applies to future insertions of the individual emoji. In some embodiments, after the customization is complete, the customization of the emoji may be modified or updated with the selection of a different variation. In some embodiments, emoji customizations can only be modified or replaced, but cannot be cleared or reset (e.g., reset to a state where no customization or placeholder elements appear).
(예를 들어, 현재 선택된 변형과 상이한 변형을 선택하는 사용자 입력을 수신하고, 새롭게 선택된 변형을 반영하도록 미리보기를 업데이트함으로써) 맞춤화 선택들을 업데이트하는 위에서 설명된 방식은 (예를 들어, 사용자의 새로운 선택들에 기초하여 변형의 미리보기를 업데이트함으로써) 상이한 변형들을 샘플링하고 사용자의 선택들을 변화시키는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 별개의 사용자 인터페이스로 내비게이팅하거나 부가적인 입력들을 수행하도록 사용자에게 요구하지 않으면서 사용자가 사용자의 이전의 선택들을 변화시키고 변화들을 미리보게 허용함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of updating personalized selections (e.g., by receiving user input selecting a different variation than the currently selected variation and updating the preview to reflect the newly selected variation) provides a fast and efficient way to sample different variations and change the user's selections (e.g., by updating the preview of the variation based on the user's new selections), which simplifies the interaction between the user and the electronic device (e.g., by allowing the user to change their previous selections and preview the changes without requiring the user to navigate to a separate user interface or perform additional inputs), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 그래픽 객체의 맞춤화 상태가 부분 맞춤화 상태이고 제1 그래픽 객체의 제1 개개의 표현이 제1 맞춤화가능 시각적 요소에 대한 제1 변형 및 제2 맞춤화가능 시각적 요소에 대한 플레이스홀더 요소로 디스플레이되는(예를 들어, 좌측 사람이 맞춤화되지만, 우측 사람이 아직 맞춤화되지 않은) 동안, 전자 디바이스는 하나 이상의 입력 디바이스들을 통해, 맞춤화 사용자 인터페이스를 해산시키라는 요청에 대응하는 제2 사용자 입력, 예컨대 도 6m의 사용자 입력(603)을 수신한다(734).In some embodiments, while the customization state of the first graphical object is a partially customizable state and a first individual representation of the first graphical object is displayed with a first variation for the first customizable visual element and a placeholder element for the second customizable visual element (e.g., the person on the left is customized, but the person on the right is not yet customized), the electronic device receives (734) a second user input, via one or more input devices, corresponding to a request to dismiss the customization user interface, such as user input (603) of FIG. 6m.
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여, 전자 디바이스는 도 6n에서와 같이 맞춤화 사용자 인터페이스의 디스플레이를 중단한다(736)(예를 들어, 맞춤화 사용자 인터페이스를 해산시키거나 또는 그렇지 않으면 맞춤화 사용자 인터페이스를 디스플레이하는 것을 중단하고, 선택적으로는, 맞춤화 사용자 인터페이스가 디스플레이되기 전에 디스플레이되었던 사용자 인터페이스를 디스플레이함). 일부 실시예들에서, 이모지가 맞춤화를 완료하지 않았기 때문에, 가상 키보드 상에서 디스플레이되는 개개의 이모지는 좌측 및 우측 사람 둘 모두에 대한 디폴트 변형(예를 들어, 황색과 같은 디폴트 색상을 갖는 이모지)의 디스플레이를 유지한다.In some embodiments, in response to receiving the second user input, the electronic device ceases displaying (736) the customized user interface (e.g., dismisses the customized user interface or otherwise ceases displaying the customized user interface, and optionally, displays the user interface that was displayed before the customized user interface was displayed), as in FIG. 6n. In some embodiments, because the emoji has not completed customization, the individual emoji displayed on the virtual keyboard retains the display of the default variation for both the left and right person (e.g., the emoji having a default color, such as yellow).
일부 실시예들에서, 맞춤화 사용자 인터페이스의 디스플레이를 중단한 이후 그리고 제1 그래픽 객체의 맞춤화 상태가 부분 맞춤화 상태인 동안, 전자 디바이스는 하나 이상의 입력 디바이스들을 통해, 제1 그래픽 객체의 제1 선택가능 표현을 선택하는 제3 사용자 입력, 예컨대, 도 6n의 사용자 입력(603)을 수신한다(738)(예를 들어, 가상 키보드 상에서 부분적으로 맞춤화된 이모지를 선택하는 사용자 입력을 수신함).In some embodiments, after ceasing to display the personalized user interface and while the personalized state of the first graphical object is in a partially personalized state, the electronic device receives (738) a third user input, e.g., user input (603 of FIG. 6n), selecting a first selectable representation of the first graphical object via one or more input devices (e.g., receiving user input selecting a partially personalized emoji on a virtual keyboard).
일부 실시예들에서, 제3 사용자 입력을 수신하는 것에 응답하여, 전자 디바이스는 도 6o에서와 같이 디스플레이 디바이스를 통해 맞춤화 사용자 인터페이스를 디스플레이하며, 여기서, 제1 그래픽 객체의 제1 개개의 표현은 제1 맞춤화가능 시각적 요소에 대한 제1 변형 및 제2 맞춤화가능 시각적 요소에 대한 플레이스홀더 요소로 맞춤화 사용자 인터페이스에서 디스플레이된다(740)(예를 들어, 맞춤화 사용자 인터페이스를 재디스플레이함). 일부 실시예들에서, 맞춤화 사용자 인터페이스는 맞춤화 상태를 보존한다. 예를 들어, 개개의 이모지의 좌측 사람이 이전에 맞춤화되었지만 개개의 이모지의 우측 사람이 맞춤화되지 않았기 때문에, 개개의 표현은 좌측 사람에 대한 맞춤화된 변형 및 우측 사람에 대한 플레이스홀더 요소를 디스플레이한다. 일부 실시예들에서, 맞춤화가능 사용자 인터페이스 내의 선택가능 옵션들은 또한 그들의 선택 상태를 유지한다. 예를 들어, 이전에 선택되었던(그리고 제1 개개의 표현에 적용되고 있는) 좌측 사람에 대한 변형은 그것이 선택되었다는 표시(예를 들어, 하이라이트됨, 확대됨 등)로 계속 디스플레이된다.In some embodiments, in response to receiving the third user input, the electronic device displays a customizable user interface via the display device, as in FIG. 6o , wherein the first individual representation of the first graphical object is displayed (740) in the customizable user interface with a first variation for the first customizable visual element and a placeholder element for the second customizable visual element (e.g., re-displaying the customizable user interface). In some embodiments, the customizable user interface preserves the customization state. For example, since the left person of the individual emoji was previously customized but the right person of the individual emoji was not customized, the individual representation displays the customized variation for the left person and the placeholder element for the right person. In some embodiments, the selectable options within the customizable user interface also preserve their selection state. For example, the variation for the left person that was previously selected (and is being applied to the first individual representation) continues to be displayed with an indication that it is selected (e.g., highlighted, enlarged, etc.).
(예를 들어, 사용자가 그래픽 객체를 단지 부분적으로만 맞춤화했더라도 사용자의 선택들을 저장하고, 맞춤화 사용자 인터페이스의 해산 이후, 맞춤화 사용자 인터페이스의 후속 디스플레이 시에 사용자의 이전의 선택들을 디스플레이함으로써) 사용자의 맞춤화 선택들을 유지하는 위에서 설명된 방식은 사용자가 이전에-부분적으로 맞춤화된 그래픽 객체를 계속 맞춤화하기 위한 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 사용자가 이전에 이미 선택했던 변형(들)을 재선택하기 위해 부가적인 사용자 입력들을 수행하도록 사용자에게 요구하지 않으면서 사용자가 중단했던 맞춤화 프로세스를 계속하게 허용함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of retaining a user's customization selections (e.g., by storing the user's selections even if the user only partially customized a graphical object, and, after dismissal of the customization user interface, displaying the user's previous selections upon subsequent displays of the customization user interface) provides a quick and efficient way for a user to continue customizing a previously-partially customized graphical object, which simplifies the interaction between the user and the electronic device (e.g., by allowing the user to continue a customization process where they left off without requiring the user to perform additional user inputs to reselect the variation(s) they have already previously selected), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 복수의 맞춤화가능 시각적 요소들이 제3 맞춤화가능 시각적 요소를 포함한다는 결정에 따라, 맞춤화 사용자 인터페이스는 도 6qq에서와 같이 제3 맞춤화가능 시각적 요소를 맞춤화하기 위한 하나 이상의 제3 선택가능 옵션들을 포함하는 제4 섹션을 포함한다(742)(예를 들어, 개개의 이모지가 제3 맞춤화가능 시각적 요소를 가지면, 맞춤화 사용자 인터페이스는 제3 맞춤화가능 시각적 요소를 맞춤화하기 위한 선택가능 옵션들의 다른 행을 포함한다). 따라서, 일부 실시예들에서, 맞춤화 사용자 인터페이스는 개개의 이모지의 각각의 맞춤화가능 시각적 요소에 대한 선택가능 옵션들의 섹션(예를 들어, 행)을 포함한다. 일부 실시예들에서, 임의의 수의 맞춤화가능 시각적 요소들(예를 들어, 2개, 3개, 4개, 5개, 10개의 맞춤화가능 시각적 요소들 등)이 가능하다.In some embodiments, upon a determination that the plurality of customizable visual elements include a third customizable visual element, the customization user interface includes a fourth section (742) comprising one or more third selectable options for customizing the third customizable visual element, as in FIG. 6qq (e.g., if the individual emoji has a third customizable visual element, the customization user interface includes another row of selectable options for customizing the third customizable visual element). Thus, in some embodiments, the customization user interface includes a section (e.g., row) of selectable options for each customizable visual element of the individual emoji. In some embodiments, any number of customizable visual elements is possible (e.g., two, three, four, five, ten customizable visual elements, etc.).
그래픽 객체 내의 각각의 맞춤화가능 시각적 요소에 대한 선택가능 옵션들의 섹션들을 디스플레이하는 위에서 설명된 방식은 (예를 들어, 그래픽 객체가 얼마나 많은 맞춤화가능 시각적 요소들을 갖는지에 기초하여 변형 옵션들의 더 많거나 더 적은 섹션들을 디스플레이함으로써) 각각의 맞춤화가능 시각적 요소에 대한 상이한 변형들을 제시하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 맞춤화 사용자 인터페이스와의 사용자 상호작용의 일관성을 유지하면서, 그리고 각각의 맞춤화가능 시각적 요소에 대한 모든 이용가능한 변형들을 보고 선택하기 위해 별개의 사용자 인터페이스로 내비게이팅하거나 부가적인 입력들을 수행하도록 사용자에게 요구하지 않으면서, 맞춤화할 시각적 요소들의 수에 기초하여 맞춤화 사용자 인터페이스 내의 섹션들의 수를 조정함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of displaying sections of selectable options for each customizable visual element within a graphical object (e.g., by displaying more or fewer sections of variation options based on how many customizable visual elements the graphical object has) provides a quick and efficient way to present different variations for each customizable visual element, which simplifies the interaction between a user and the electronic device (e.g., by adjusting the number of sections within the customizable user interface based on the number of visual elements to be customized, while maintaining consistency in the user interaction with the customization user interface, and without requiring the user to navigate to a separate user interface or perform additional inputs to view and select all available variations for each customizable visual element), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 맞춤화 사용자 인터페이스는 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소의 미리 정의된 변형들, 예컨대, 도 6f의 디폴트 변형(630-1)에 대응하는 제1 그래픽 객체의 제2 개개의 표현을 포함한다(744)(예를 들어, 맞춤화 사용자 인터페이스는 디폴트 변형을 텍스트 입력 구역 내에 삽입하도록 선택가능한 미리 정의된 디폴트 표현을 포함한다). 예를 들어, 미리 정의된 디폴트 표현은 선택적으로 이모지 내의 각각의 요소에 대한 디폴트 색상, 예컨대 황색이다. 일부 실시예들에서, 미리 정의된 디폴트 표현은 맞춤화가능하지 않고, 맞춤화 사용자 인터페이스에서의 변형들의 선택은 제1 개개의 표현만을 맞춤화하고 제2 각각의 표현을 맞춤화하지 않는다. 일부 실시예들에서, 제2 개개의 표현은, 선택적으로 제1 개개의 표현에 인접한, 맞춤화 사용자 인터페이스의 제3 섹션에서 디스플레이된다.In some embodiments, the customizable user interface includes a second individual representation of the first graphical object (744) corresponding to predefined variations of the first customizable visual element and the second customizable visual element, e.g., the default variation (630-1) of FIG. 6F (e.g., the customizable user interface includes a predefined default representation that is selectable to insert the default variation into the text input area). For example, the predefined default representation is optionally a default color for each element within the emoji, e.g., yellow. In some embodiments, the predefined default representation is not customizable, and selection of variations in the customizable user interface customizes only the first individual representation and not the second individual representation. In some embodiments, the second individual representation is displayed in a third section of the customizable user interface, optionally adjacent to the first individual representation.
(예를 들어, 맞춤화가능 시각적 요소들에 대한 디폴트 변형들을 갖는 제1 그래픽 객체의 표현을 포함함으로써) 제1 그래픽 객체의 미리 정의된 디폴트 버전을 제공하는 위에서 설명된 방식은 맞춤화를 선택하지 않으면서 - 심지어 맞춤화가 수행된 이후에도 - 제1 그래픽 객체의 디폴트 버전을 선택하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 제1 그래픽 객체의 디폴트 버전을 구성하기 위해 부가적인 입력들을 수행하도록 사용자에게 요구하지 않으면서, 사용자가 제1 그래픽 객체를 맞춤화하는 것에 관심이 있지 않다면 사용자가 디폴트 변형들을 쉽게 선택하게 허용함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of providing a predefined default version of a first graphical object (e.g., by including a representation of a first graphical object with default variations for customizable visual elements) provides a quick and efficient way to select a default version of a first graphical object without selecting a customization - even after customization has been performed - which simplifies the interaction between a user and the electronic device, improves the operability of the electronic device, and makes the user-device interface more efficient (e.g., by allowing the user to easily select default variations if he or she is not interested in customizing the first graphical object, without requiring the user to perform additional inputs to configure the default version of the first graphical object), which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 그래픽 객체의 맞춤화 상태가 완료된 맞춤화 상태가 아닌 동안(예를 들어, 부분적으로 맞춤화되거나 맞춤화되지 않음), 전자 디바이스는 하나 이상의 입력 디바이스들을 통해, 제1 그래픽 객체의 제1 개개의 표현을 선택하는 제2 사용자 입력, 예컨대, 도 6h 및 도 6k의 사용자 입력(603)(예를 들어, 제1 개개의 표현이 맞춤화가능 시각적 요소들 중 임의의 요소 또는 모든 요소에 대해 플레이스홀더 요소들로 디스플레이되는 동안 제1 개개의 표현을 선택하는 사용자 입력)을 수신한다(746).In some embodiments, while the customization state of the first graphical object is not a completed customization state (e.g., partially customized or not customized), the electronic device receives (746) a second user input, via one or more input devices, selecting a first individual representation of the first graphical object, e.g., user input (603) of FIGS. 6H and 6K (e.g., user input selecting the first individual representation while the first individual representation is displayed as placeholder elements for any or all of the customizable visual elements).
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여(748), 제1 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 결정에 따라, 전자 디바이스는 디스플레이 디바이스를 통해, 제1 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 시각적 표시, 예컨대, 도 6i의 표시(632)를 디스플레이한다(750)(예를 들어, 제1 맞춤화가능 시각적 요소가 맞춤화되지 않았다면, 제1 맞춤화가능 시각적 요소를 맞춤화하기 위한 제1 선택가능 옵션들 상에서 시각적 표시를 디스플레이함). 일부 실시예들에서, 제2 사용자 입력에 응답하여, 제1 개개의 표현은 텍스트 입력 필드 내에 삽입되지 않는다.In some embodiments, in response to receiving the second user input (748), and determining that the first customizable visual element is not customized, the electronic device displays (750) a visual indication via the display device that the first customizable visual element is not customized, such as the indication (632) of FIG. 6i (e.g., if the first customizable visual element is not customized, displaying the visual indication over the first selectable options for customizing the first customizable visual element). In some embodiments, in response to the second user input, the first individual expression is not inserted into the text input field.
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여(748), 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 결정에 따라, 전자 디바이스는 디스플레이 디바이스를 통해, 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 시각적 표시, 예컨대, 도 6l의 표시(632)를 디스플레이한다(752)(예를 들어, 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다면, 제2 맞춤화가능 시각적 요소를 맞춤화하기 위한 제2 선택가능 옵션들 상에서 시각적 표시를 디스플레이함). 일부 실시예들에서, 제2 사용자 입력에 응답하여, 개개의 이모지는 텍스트 입력 구역 내에 삽입되지 않는다. 일부 실시예들에서, 맞춤화 사용자 인터페이스는 계속 디스플레이된다(예를 들어, 해산되지 않는다).In some embodiments, in response to receiving the second user input (748), and determining that the second customizable visual element is not customized, the electronic device displays (752) a visual indication via the display device that the second customizable visual element is not customized, such as the indication (632) of FIG. 6L (e.g., if the second customizable visual element is not customized, displaying the visual indication on the second selectable options for customizing the second customizable visual element). In some embodiments, in response to the second user input, the individual emoji are not inserted into the text input area. In some embodiments, the customization user interface continues to be displayed (e.g., is not dismissed).
(예를 들어, 사용자가 그래픽 객체의 맞춤화된 버전을 선택하고 삽입하려고 시도할 때, 개개의 맞춤화가능 시각적 요소가 아직 맞춤화되지 않았다는 표시를 디스플레이함으로써) 맞춤화가 완료되지 않았다는 것을 표시하는 위에서 설명된 방식은 (예를 들어, 제1 개개의 표현을 선택하는 것이 그래픽 객체의 맞춤화된 버전을 삽입하기 전에, 개개의 변형들의 선택들이 여전히 요구된다는 것을 사용자에게 암시함으로써) 맞춤화가 완료되지 않았다는 것을 표시하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 맞춤화가 완료되었고 그래픽 객체의 맞춤형 버전이 삽입되도록 이용가능한지 여부를 결정하기 위해 별개의 사용자 인터페이스로 내비게이팅하거나 부가적인 입력들을 수행하도록 사용자에게 요구하지 않으면서, 맞춤화가 완료되지 않았다는 표시를 디스플레이함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of indicating that a customization is not complete (e.g., by displaying an indication that individual customizable visual elements have not yet been customized when a user selects and attempts to insert a customized version of a graphical object) provides a quick and efficient way to indicate that a customization is not complete (e.g., by indicating to the user that selection of a first individual representation still requires selection of individual variations before inserting a customized version of the graphical object), which simplifies the interaction between a user and the electronic device (e.g., by displaying an indication that the customization is not complete without requiring the user to navigate to a separate user interface or perform additional inputs to determine whether the customization is complete and a customized version of the graphical object is available for insertion), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 시각적 표시는 도 6i에서와 같이, 제1 맞춤화가능 시각적 요소를 맞춤화하기 위한 하나 이상의 제1 선택가능 옵션들의 시각적 특성의 변화를 애니메이션화하는 것(예를 들어, 제1 선택가능 옵션들을 애니메이션화하는 것)을 포함한다(754). 일부 실시예들에서, 애니메이션은 제1 선택가능 옵션들의 크기를 일시적으로 증가 및 감소시키는 것을 포함한다. 일부 실시예들에서, 애니메이션은 제1 선택가능 옵션들의 일 단부로부터 다른 단부로, 파동형 이동으로 이동한다. 예를 들어, 제1 선택가능 옵션들 중 제1 선택가능 옵션은 크기가 증가하는 반면, 제1 선택가능 옵션들 중 다른 선택가능 옵션들은 그들의 원래 크기를 유지하며, 이어서, 애니메이션이 제1 선택가능 옵션들 중 마지막 선택가능 옵션에 도달할 때까지, 제1 선택가능 옵션들 중 제1 선택가능 옵션이 크기가 감소함에 따라, 제1 선택가능 옵션들 중 제2 선택가능 옵션은 크기가 증가하는 등의 식이다.In some embodiments, the visual indication that the first customizable visual element is not customized comprises animating a change in a visual characteristic of one or more of the first selectable options for customizing the first customizable visual element (e.g., animating the first selectable options), as in FIG. 6i (754). In some embodiments, the animation comprises temporarily increasing and decreasing the size of the first selectable options. In some embodiments, the animation moves in a wavelike motion from one end of the first selectable options to the other end. For example, a first selectable option of the first selectable options increases in size while the other selectable options of the first selectable options maintain their original sizes, and then, as the first selectable option of the first selectable options decreases in size, a second selectable option of the first selectable options increases in size, and so on, until the animation reaches the last selectable option of the first selectable options.
일부 실시예들에서, 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 시각적 표시는 도 6l에서와 같이, 제2 맞춤화가능 시각적 요소를 맞춤화하기 위한 하나 이상의 제2 선택가능 옵션들의 시각적 특성의 변화를 애니메이션화하는 것(예를 들어, 제2 선택가능 옵션들을 애니메이션화하는 것)을 포함한다(756). 일부 실시예들에서, 애니메이션은 제2 선택가능 옵션들의 크기를 일시적으로 증가 및 감소시키는 것을 포함한다. 일부 실시예들에서, 애니메이션은 제2 선택가능 옵션들의 일 단부로부터 다른 단부로, 파동형 이동으로 이동한다. 예를 들어, 제2 선택가능 옵션들 중 제1 선택가능 옵션은 크기가 증가하는 반면, 제2 선택가능 옵션들 중 다른 선택가능 옵션들은 그들의 원래 크기를 유지하며, 이어서, 애니메이션이 제2 선택가능 옵션들 중 마지막 선택가능 옵션에 도달할 때까지, 제2 선택가능 옵션들 중 제1 선택가능 옵션이 크기가 감소함에 따라, 제2 선택가능 옵션들 중 제2 선택가능 옵션은 크기가 증가하는 등의 식이다.In some embodiments, the visual indication that the second customizable visual element is not customized includes animating a change in a visual characteristic of one or more of the second selectable options for customizing the second customizable visual element (e.g., animating the second selectable options), as in FIG. 6l (756). In some embodiments, the animation includes temporarily increasing and decreasing the size of the second selectable options. In some embodiments, the animation moves in a wavelike motion from one end of the second selectable options to the other end. For example, a first selectable option of the second selectable options increases in size while the other selectable options of the second selectable options maintain their original sizes, and then, as the first selectable option of the second selectable options decreases in size, a second selectable option of the second selectable options increases in size, and so on, until the animation reaches the last selectable option of the second selectable options.
(예를 들어, 맞춤화를 완료하기 위한 선택을 요구하는 개개의 맞춤화가능 시각적 요소에 대한 선택가능 옵션들을 애니메이션화함으로써) 맞춤화가 완료되지 않았고, 맞춤화를 완료하기 위해 특정 선택가능 옵션들의 선택이 요구된다는 것을 표시하는 위에서 설명된 방식은 (예를 들어, 아직 맞춤화되지 않은 개개의 맞춤화가능 시각적 요소에 대한 선택가능 옵션들 상에서 애니메이션을 디스플레이함으로써) 맞춤화를 완료하기 위해 어느 옵션들이 선택될지를 표시하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 맞춤화가능 요소들 중 어느 것이 맞춤화되지 않았는지 및 어느 선택가능 옵션들이 아직-맞춤화되지 않은 맞춤화가능 요소를 맞춤화하기 위한 것인지를 결정하도록 사용자에게 요구하지 않으면서 개개의 선택가능 옵션들 그 자체 상에서 표시를 디스플레이함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of indicating that a customization is not complete and that selection of certain selectable options is required to complete the customization (e.g., by animating selectable options for individual customizable visual elements that require selection to complete the customization) provides a quick and efficient way to indicate which options are to be selected to complete the customization (e.g., by displaying an animation over the selectable options for individual customizable visual elements that have not yet been customized), which simplifies the interaction between a user and the electronic device (e.g., by displaying an indication over the individual selectable options themselves without requiring the user to determine which of the customizable elements have not been customized and which selectable options are for customizing the not-yet-customizable elements), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 그래픽 객체의 맞춤화 상태가 제1 맞춤화가능 시각적 요소의 개개의 변형 및 제2 맞춤화가능 시각적 요소의 개개의 변형이 선택되었던 완료된 맞춤화 상태인 동안(예를 들어, 이모지의 맞춤화는 완료되었고, 제1 개개의 표현은 임의의 플레이스홀더 요소들 없이 제1 및 제2 맞춤화가능 시각적 요소들에 대한 유효한 변형들로 디스플레이됨), 전자 디바이스는 하나 이상의 입력 디바이스들을 통해, 제1 그래픽 객체의 제1 개개의 표현을 선택하는 제2 사용자 입력, 예컨대, 도 6q의 사용자 입력(603)(예를 들어, 완료된 제1 개개의 표현을 선택하는 사용자 입력)을 수신한다(758).In some embodiments, while the customization state of the first graphical object is a completed customization state in which an individual variation of the first customizable visual element and an individual variation of the second customizable visual element have been selected (e.g., customization of the emoji is completed and the first individual representation is displayed with valid variations for the first and second customizable visual elements without any placeholder elements), the electronic device receives (758) a second user input, via one or more input devices, selecting a first individual representation of the first graphical object, such as user input (603) of FIG. 6q (e.g., a user input selecting a completed first individual representation).
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여, 전자 디바이스는 제1 맞춤화가능 시각적 요소의 개개의 변형 및 제2 맞춤화가능 시각적 요소의 개개의 변형을 갖는 제1 그래픽 객체를 텍스트 입력 구역 내에 삽입하며(760), 예컨대, 맞춤화된 변형(630-2)을 도 6r의 캐릭터(614-4)로서 텍스트 입력 구역(604)에 삽입한다(예를 들어, 제1 및 제2 맞춤화가능 시각적 요소들에 대한 개개의 변형들을 갖는 개개의 이모지를 텍스트 입력 구역 내에 삽입함). 일부 실시예들에서, 삽입되는 이모지의 버전은 제1 개개의 표현에 의해 제공되는 미리보기와 동일하다. 일부 실시예들에서, 제2 사용자 입력에 응답하여, 맞춤화 사용자 인터페이스가 해산된다(예를 들어, 디스플레이되는 것이 중단된다).In some embodiments, in response to receiving the second user input, the electronic device inserts (760) a first graphical object having a respective variation of the first customizable visual element and a respective variation of the second customizable visual element into the text input area, for example, inserting the personalized variation (630-2) into the text input area (604) as character (614-4) of FIG. 6r (e.g., inserting an individual emoji having respective variations for the first and second customizable visual elements into the text input area). In some embodiments, the version of the emoji that is inserted is identical to the preview provided by the first individual representation. In some embodiments, in response to the second user input, the personalized user interface is dismissed (e.g., ceases to be displayed).
맞춤화된 그래픽 객체를 삽입하는(예를 들어, 사용자가 제1 그래픽 객체의 표현을 선택하는 것에 응답하여 그리고 사용자가 제1 그래픽 객체의 맞춤화를 완료한 이후, 사용자의 맞춤화들을 갖는 제1 그래픽 객체를 삽입하는) 위에서 설명된 방식은 (예를 들어, 맞춤화들을 선택하는 데 사용되는 동일한 사용자 인터페이스 상에서 제1 그래픽 객체에 적용된 맞춤화들의 미리보기를 디스플레이하고, 사용자가 미리보기를 선택하는 것에 응답하여, 맞춤화된 제1 그래픽 객체를 삽입함으로써) 맞춤형 그래픽 객체들을 삽입하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 그래픽 요소를 맞춤화하고 맞춤화된 그래픽 요소를 삽입하기 위해 별개의 사용자 인터페이스로 내비게이팅하거나 부가적인 입력들을 수행하도록 사용자에게 요구하지 않으면서, 사용자가 맞춤화된 제1 그래픽 객체를 미리보고 삽입할 수 있게 함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of inserting a customized graphical object (e.g., in response to a user selecting a representation of a first graphical object, and after the user has completed customizing the first graphical object, inserting a first graphical object having the user's customizations) provides a quick and efficient way to insert customized graphical objects (e.g., by displaying a preview of the customizations applied to the first graphical object on the same user interface used to select the customizations, and in response to the user selecting the preview, inserting the customized first graphical object), which simplifies the interaction between the user and the electronic device (e.g., by allowing the user to preview and insert the customized first graphical object without requiring the user to navigate to a separate user interface or perform additional inputs to customize the graphical element and insert the customized graphical element), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 그래픽 객체의 제1 개개의 표현을 선택하는 제2 사용자 입력을 수신한 이후, 전자 디바이스는 제1 맞춤화가능 시각적 요소의 개개의 변형 및 제2 맞춤화가능 시각적 요소의 개개의 변형을 갖는 제1 그래픽 객체의 표현을 디스플레이하기 위해 가상 키보드에서 제1 그래픽 객체의 제1 선택가능 표현을 업데이트하며(762), 예컨대, 이모지(608-6)는 도 6r의 맞춤화된 변형(630-2)을 디스플레이하도록 업데이트된다(예를 들어, 사용자가 이모지의 맞춤화된 버전을 선택하여 텍스트 입력 구역 내에 삽입한 이후, 가상 키보드 상의 개개의 이모지는 이모지의 맞춤화된 버전을 반영하도록 업데이트된다).In some embodiments, after receiving a second user input selecting a first individual representation of the first graphical object, the electronic device updates (762) the first selectable representation of the first graphical object on the virtual keyboard to display a representation of the first graphical object having an individual variation of the first customizable visual element and an individual variation of the second customizable visual element, for example, emoji (608-6) is updated to display the customized variation (630-2) of FIG. 6r (e.g., after the user selects and inserts a customized version of the emoji into the text input area, the individual emoji on the virtual keyboard is updated to reflect the customized version of the emoji).
예를 들어, 가상 키보드 상의 개개의 이모지는 제1 및 제2 맞춤화가능 시각적 요소들에 대한 개개의 변형들을 포함한다(예를 들어, 좌측 및 우측 사람들은 맞춤화 사용자 인터페이스 상에서 선택된 피부 톤들을 갖는다). 일부 실시예들에서, 개개의 이모지가 이모지의 맞춤화된 버전을 디스플레이하고 있으면, 이어서, 사용자가 (예를 들어, 맞춤화 사용자 인터페이스에서 상이한 변형들을 선택함으로써) 맞춤화를 업데이트하거나 수정하지만, 이모지의 맞춤화된 버전을 텍스트 입력 구역 내에 삽입하지 않으면, 가상 키보드는 맞춤화된 버전을 디스플레이하도록 업데이트될 것이다. 따라서, 일부 실시예들에서, (예를 들어, 맞춤화 사용자 인터페이스 상에서 개개의 이모지의 디폴트 버전을 선택함으로써(이는, 디폴트 이모지가 텍스트 입력 구역 내에 삽입되게 함)) 사용자가 가상 키보드에서 이모지의 디폴트 변형들을 디스플레이하는 "디폴트" 모드로 개개의 이모지를 변화시킬 때까지, 가상 키보드 상의 개개의 이모지는 (예를 들어, 맞춤화를 업데이트한 이후 사용자가 맞춤형 이모지를 삽입했는지 여부에 관계없이) 개개의 이모지의 최신의 맞춤화된 상태를 항상 디스플레이할 "맞춤화" 모드로 설정된다.For example, an individual emoji on the virtual keyboard includes individual variations for the first and second customizable visual elements (e.g., the left and right people have skin tones selected on the customization user interface). In some embodiments, if an individual emoji is displaying a customized version of the emoji, then if the user subsequently updates or modifies the customization (e.g., by selecting different variations on the customization user interface) but does not insert the customized version of the emoji into the text input area, the virtual keyboard will be updated to display the customized version. Accordingly, in some embodiments, an individual emoji on the virtual keyboard is set to a "customized" mode that will always display the most recent customized state of the individual emoji (e.g., regardless of whether the user has inserted a customized emoji since updating the customization) until the user changes the individual emoji to a "default" mode that displays default variations of the emoji on the virtual keyboard (e.g., by selecting a default version of the individual emoji on the customization user interface (which causes the default emoji to be inserted into the text input area)).
(예를 들어, 가장 최근에 선택 및 삽입되었던 맞춤화가능 시각적 요소들의 변형들을 갖는 그래픽 객체를 가상 키보드에서 디스플레이함으로써) 가상 키보드 상에서 그래픽 객체를 디스플레이하는 위에서 설명된 방식은 (예를 들어, 그래픽 객체의 맞춤화된 버전을 삽입하도록 선택가능한, 가상 키보드 자체 상의 그래픽 객체에 적용된 맞춤화들의 미리보기를 디스플레이함으로써) 그래픽 객체의 표현의 선택 시에 삽입될 그래픽 객체의 버전을 미리보는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 그래픽 요소의 어느 버전이 표현의 선택 시에 삽입될지를 결정하기 위해 별개의 사용자 인터페이스로 내비게이팅하거나 부가적인 입력들을 수행하도록 사용자에게 요구하지 않으면서, 사용자가 맞춤화된 제1 그래픽 객체를 미리보고 삽입할 수 있게 함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of displaying a graphical object on a virtual keyboard (e.g., by displaying a graphical object having variations of the most recently selected and inserted customizable visual elements on the virtual keyboard) provides a quick and efficient way to preview a version of a graphical object to be inserted upon selection of a representation of the graphical object (e.g., by displaying a preview of the customizations applied to the graphical object on the virtual keyboard itself, selectable to insert a customized version of the graphical object), which simplifies the interaction between a user and the electronic device (e.g., by allowing the user to preview and insert a customized first graphical object without requiring the user to navigate to a separate user interface or perform additional inputs to determine which version of the graphical element to insert upon selection of the representation), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 그래픽 객체의 맞춤화 상태가 완료된 맞춤화 상태인 동안, 전자 디바이스는 하나 이상의 입력 디바이스들을 통해, 제1 그래픽 객체의 제1 선택가능 표현을 선택하는 제2 사용자 입력, 예컨대, 도 6r의 사용자 입력(603)을 수신한다(764)(예를 들어, 개개의 이모지가 완전히 맞춤화된 이후 가상 키보드 상에서 개개의 이모지를 선택하는 사용자 입력을 수신함).In some embodiments, while the customization state of the first graphical object is in a completed customization state, the electronic device receives (764) a second user input, e.g., user input (603 of FIG. 6r), selecting a first selectable representation of the first graphical object via one or more input devices (e.g., receiving user input selecting an individual emoji on a virtual keyboard after the individual emoji has been fully customized).
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여(766), 제2 사용자 입력이 미리 결정된 지속기간 임계치(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 미만 동안 제1 그래픽 객체의 제1 선택가능 표현의 선택을 포함한다는 결정에 따라, 전자 디바이스는 맞춤화 사용자 인터페이스를 디스플레이하지 않으면서 제1 그래픽 객체를 텍스트 입력 구역 내에 삽입하며(768), 예컨대, 맞춤화된 변형(630-2)을 도 6s의 캐릭터(614-5)로서 텍스트 입력 구역(604) 내에 삽입한다(예를 들어, 사용자 입력이 탭 입력이면, 개개의 이모지를 텍스트 입력 구역 내에 삽입하고, 맞춤화 사용자 인터페이스를 디스플레이하지 않는다).In some embodiments, in response to receiving a second user input (766), and upon determining that the second user input includes selection of a first selectable representation of the first graphical object for less than a predetermined duration threshold (e.g., 0.1 second, 0.25 seconds, 0.5 seconds, 1 second, 3 seconds, 5 seconds, etc.), the electronic device inserts (768) the first graphical object into the text input area without displaying a customized user interface, for example, inserting the customized variation (630-2) into the text input area (604) as character (614-5) of FIG. 6s (e.g., if the user input is a tap input, inserting an individual emoji into the text input area and not displaying the customized user interface).
일부 실시예들에서, 삽입되는 이모지의 버전은 가상 키보드 상에서 디스플레이되는 동일한 버전이다. 예를 들어, 가상 키보드 상의 개개의 이모지가 제1 및 제2 맞춤화가능 시각적 요소들에 대한 개개의 변형들을 포함하면, 삽입된 이모지는 제1 및 제2 맞춤화가능 시각적 요소들에 대한 개개의 변형들을 갖는다. 일부 실시예들에서, 가상 키보드 상의 개개의 이모지가 제1 및 제2 맞춤화가능 시각적 요소들에 대한 디폴트 변형들을 포함하면(예를 들어, 황색과 같은 디폴트 색상을 갖는 이모지), 삽입된 이모지는 제1 및 제2 맞춤화가능 시각적 요소들에 대한 디폴트 변형들을 갖는다.In some embodiments, the version of the inserted emoji is the same version displayed on the virtual keyboard. For example, if an individual emoji on the virtual keyboard includes individual variations for the first and second customizable visual elements, the inserted emoji has individual variations for the first and second customizable visual elements. In some embodiments, if an individual emoji on the virtual keyboard includes default variations for the first and second customizable visual elements (e.g., an emoji having a default color such as yellow), the inserted emoji has default variations for the first and second customizable visual elements.
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여(766), 제2 사용자 입력이 미리 결정된 지속기간 임계치 초과 동안 제1 그래픽 객체의 제1 선택가능 표현의 선택을 포함한다는 결정에 따라, 전자 디바이스는 도 6u에서와 같이, 디스플레이 디바이스를 통해, 제1 그래픽 객체를 텍스트 입력 구역 내에 삽입하지 않으면서 맞춤화 사용자 인터페이스를 디스플레이한다(770)(예컨대, 사용자 입력이 누르고-유지 입력이면, 맞춤화 사용자 인터페이스를 디스플레이하고, 개개의 이모지를 텍스트 입력 구역 내에 삽입하지 않는다). 일부 실시예들에서, 개개의 이모지의 맞춤화가 완료된 이후, 누르고-유지 사용자 입력은 (예를 들어, 사용자가 맞춤화를 업데이트하게 허용하기 위해) 맞춤화 사용자 인터페이스의 디스플레이를 야기하는 유일한 방법이다. 일부 실시예들에서, 맞춤화 사용자 인터페이스는 제1 그래픽 객체에 대한 맞춤화 상태를 디스플레이한다. 예를 들어, 제1 및 제2 맞춤화가능 요소들에 대한 개개의 변형들이 하이라이트되고, 제1 개개의 표현(예를 들어, 미리보기)은 사용자의 맞춤화들을 디스플레이한다.In some embodiments, in response to receiving the second user input (766), and upon determining that the second user input includes selection of a first selectable representation of the first graphical object for a predetermined duration threshold, the electronic device displays (770) a customization user interface via the display device without inserting the first graphical object into the text input area (e.g., if the user input is a press-and-hold input, displaying the customization user interface and not inserting the individual emoji into the text input area), as in FIG. 6u . In some embodiments, after customization of the individual emoji is complete, the press-and-hold user input is the only way to cause display of the customization user interface (e.g., to allow the user to update the customization). In some embodiments, the customization user interface displays a customization state for the first graphical object. For example, individual variations for the first and second customizable elements are highlighted, and the first individual representation (e.g., a preview) displays the user's customizations.
그래픽 객체를 삽입하고 맞춤화하는(예를 들어, 사용자 입력이 짧은 탭이면 그래픽 객체를 삽입하거나 또는 사용자 입력이 길게 누르기이면 맞춤화 사용자 인터페이스를 디스플레이하는) 위에서 설명된 방식은 (예를 들어, 사용자 입력의 지속기간에 기초하여, 그래픽 객체를 삽입하는 것 또는 동일한 표현을 사용하여 그래픽 객체를 맞춤화하는 것 중 어느 하나에 대한 옵션을 사용자에게 제공함으로써) 그래픽 객체를 삽입하는 것 또는 그래픽 객체의 맞춤화를 보거나 또는 업데이트하기 위한 사용자 인터페이스를 제공하는 것 중 어느 하나를 행하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 맞춤화를 수행하기 위해 부가적인 입력들을 수행하거나 별개의 사용자 인터페이스로 내비게이팅하도록 사용자에게 요구하지 않으면서, 그래픽 객체를 삽입하거나 또는 추가로 그래픽 객체를 맞춤화하는 기능 중 어느 하나를 사용자가 수행할 수 있게 함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of inserting and customizing a graphical object (e.g., inserting a graphical object if the user input is a short tap, or displaying a customization user interface if the user input is a long press) provides a quick and efficient way to either insert a graphical object (e.g., by providing the user with the option to either insert a graphical object or to customize the graphical object using the same representation, based on the duration of the user input) or to provide a user interface for viewing or updating the customization of the graphical object, which simplifies the interaction between the user and the electronic device, improves the operability of the electronic device, and makes the user-device interface more efficient (e.g., by allowing the user to perform either the functions of inserting a graphical object or further customizing a graphical object without requiring the user to perform additional inputs or navigate to a separate user interface to perform the customization), which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 그래픽 객체를 텍스트 입력 구역 내에 삽입하는 것(772)은 제1 그래픽 객체의 제1 선택가능 표현이 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소에 대한 디폴트 변형들로 디스플레이된다는 결정에 따라, 디폴트 변형들을 갖는 제1 그래픽 객체를 제1 텍스트 입력 구역 내에 삽입하는 것(774), 예컨대, 디폴트 변형(630-1)을 도 6ee의 캐릭터(614-8)로서 텍스트 입력 구역(604) 내에 삽입하는 것을 포함한다(예를 들어, 삽입된 이모지는 가상 키보드 상에서 디스플레이되는 동일한 버전이다). 일부 실시예들에서, 가상 키보드 상의 개개의 이모지가 제1 및 제2 맞춤화가능 시각적 요소들에 대한 디폴트 변형들을 포함하면(예를 들어, 황색과 같은 디폴트 색상을 갖는 이모지), 삽입된 이모지는 제1 및 제2 맞춤화가능 시각적 요소들에 대한 디폴트 변형들을 갖는다.In some embodiments, inserting the first graphical object into the text input area (772) comprises inserting (774) the first graphical object having default variations into the first text input area, for example, inserting the default variation (630-1) into the text input area (604) as character (614-8) of FIG. 6ee (e.g., the inserted emoji is the same version that is displayed on the virtual keyboard). In some embodiments, if an individual emoji on the virtual keyboard includes default variations for the first and second customizable visual elements (e.g., an emoji having a default color such as yellow), the inserted emoji has default variations for the first and second customizable visual elements.
일부 실시예들에서, 제1 그래픽 객체를 텍스트 입력 구역 내에 삽입하는 것(772)은 제1 그래픽 객체의 제1 선택가능 표현이 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소에 대한 맞춤화된 변형들로 디스플레이된다는 결정에 따라, 맞춤화된 변형들을 갖는 제1 그래픽 객체를 제1 텍스트 입력 구역 내에 삽입하는 것(776), 예컨대, 맞춤화된 변형(630-2)을 도 6s의 캐릭터(614-5)로서 텍스트 입력 구역(604) 내에 삽입하는 것을 포함한다(예를 들어, 가상 키보드 상의 개개의 이모지가 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소에 대한 개개의 변형들을 포함하면, 삽입된 이모지는 제1 맞춤화가능 시각적 요소 및 제2 맞춤화가능 시각적 요소에 대한 개개의 변형들을 갖는다). 따라서, 일부 실시예들에서, 가상 키보드 상에서 개개의 이모지를 선택하는 것은 개개의 이모지의 이전에 선택된 버전을 자동으로 삽입할 것이다.In some embodiments, inserting the first graphical object into the text input area (772) comprises inserting (776) the first graphical object with customized variations into the first text input area, for example, inserting the customized variation (630-2) into the text input area (604) as character (614-5) of FIG. 6s , based on a determination that the first selectable representation of the first graphical object is displayed with customized variations for the first customizable visual element and the second customizable visual element (e.g., if an individual emoji on the virtual keyboard includes individual variations for the first customizable visual element and the second customizable visual element, the inserted emoji has individual variations for the first customizable visual element and the second customizable visual element). Thus, in some embodiments, selecting an individual emoji on the virtual keyboard will automatically insert the previously selected version of the individual emoji.
그래픽 객체를 삽입하는(예를 들어, 그래픽 객체의 버전이 가상 키보드 상에서 디스플레이될 때 그래픽 객체의 버전을 삽입하는) 위에서 설명된 방식은 (예를 들어, 맞춤화된 변형들이 가상 키보드 상에서 디스플레이되면, 맞춤화된 변형들 또는 디폴트 변형들이 가상 키보드 상에서 디스플레이되면, 디폴트 변형들 중 어느 하나를 갖는 그래픽 객체를 삽입함으로써) 삽입될 그래픽 객체가 사용자에게 디스플레이되는 그래픽 객체임을 검증하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 제1 선택가능 표현의 선택 시에 어느 버전이 삽입될지를 결정하기 위해 부가적인 입력들을 수행하거나 별개의 사용자 인터페이스로 내비게이팅하도록 사용자에게 요구하지 않으면서 삽입될 그래픽 객체의 버전을 사용자가 미리보고 검증할 수 있게 함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of inserting a graphical object (e.g., inserting a version of the graphical object when a version of the graphical object is displayed on a virtual keyboard) provides a quick and efficient way to verify that the graphical object to be inserted is the graphical object displayed to the user (e.g., by inserting a graphical object having either the customized variations, if the customized variations are displayed on the virtual keyboard, or the default variations, if the default variations are displayed on the virtual keyboard), which simplifies the interaction between the user and the electronic device (e.g., by allowing the user to preview and verify the version of the graphical object to be inserted without requiring the user to perform additional inputs or navigate to a separate user interface to determine which version to insert upon selection of the first selectable expression), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 제1 사용자 입력은 하나 이상의 입력 디바이스들의 터치 감응형 표면으로부터의 접촉의 터치다운 및 리프트오프를 포함하고, 맞춤화 사용자 인터페이스는 터치 감응형 표면 상의 접촉의 터치다운 이후 그리고 터치 감응형 표면으로부터의 접촉의 리프트오프 전에 디스플레이되며, 예컨대, 도 6u에서, 접촉(603)이 미리 결정된 지속기간 임계치 초과 동안 유지되는 것에 응답하여 다중-요소 맞춤화 사용자 인터페이스(624)의 디스플레이가 디스플레이된다(778)(예를 들어, 맞춤화 사용자 인터페이스는, 복수의 맞춤화가능 요소들과 연관된 가상 키보드 내의 이모지 상의 접촉의 터치다운을 검출하는 것에 응답하여 디스플레이된다). 일부 실시예들에서, 맞춤화가 완료되지 않았다면, 맞춤화 사용자 인터페이스는 접촉의 임의의 터치다운에 응답하여 디스플레이된다. 일부 실시예들에서, 맞춤화가 완료되었다면, 맞춤화 사용자 인터페이스는 터치다운이 임계 시간 지속기간(예를 들어, 0.1초, 0.25초, 0.5초, 1초, 3초, 5초 등) 동안 터치 스크린과 접촉하여 유지되는 것에 응답하여 디스플레이된다.In some embodiments, the first user input comprises a touchdown and liftoff of a contact from a touch-sensitive surface of one or more input devices, and the customization user interface is displayed after the touchdown of the contact on the touch-sensitive surface and before the liftoff of the contact from the touch-sensitive surface, for example, in FIG. 6u, display of a multi-element customization user interface (624) is displayed (778) in response to the contact (603) being held for more than a predetermined duration threshold (e.g., the customization user interface is displayed in response to detecting a touchdown of the contact on an emoji within a virtual keyboard associated with a plurality of customizable elements). In some embodiments, if customization is not complete, the customization user interface is displayed in response to any touchdown of the contact. In some embodiments, if customization is complete, the custom user interface is displayed in response to a touchdown being made in contact with the touch screen and maintained for a threshold time duration (e.g., 0.1 second, 0.25 second, 0.5 second, 1 second, 3 seconds, 5 seconds, etc.).
일부 실시예들에서, 맞춤화 사용자 인터페이스(예를 들어, 맞춤화가 완료되지 않았다면 짧은 접촉 또는 맞춤화가 완료되었다면 긴 접촉 중 어느 하나에 응답하여 디스플레이됨)를 디스플레이하는 동안, 전자 디바이스는 도 6v에서와 같이 터치 감응형 표면으로부터의 접촉의 리프트오프를 검출한다(780).In some embodiments, while displaying a customized user interface (e.g., displayed in response to either a short contact if customization is not complete or a long contact if customization is complete), the electronic device detects liftoff of the contact from the touch-sensitive surface, as in FIG. 6v (780).
일부 실시예들에서, 터치 감응형 표면으로부터의 접촉의 리프트오프를 검출하는 것에 응답하여, 전자 디바이스는 도 6v에서와 같이 디스플레이 디바이스를 통한 맞춤화 사용자 인터페이스의 디스플레이를 유지한다(782)(예를 들어, 사용자가 터치 스크린과의 접촉을 해제할 때, 맞춤화 사용자 인터페이스가 해산되지 않는다). 일부 실시예들에서, 맞춤화 사용자 인터페이스는, 사용자가 텍스트 입력 구역 내에 삽입할 이모지를 선택하거나 또는 맞춤화 사용자 인터페이스 외부의 위치를 선택할 때까지 디스플레이된다. 일부 실시예들에서, 사용자 입력이 (예를 들어, 접촉을 유지하면서) 원래의 터치다운으로부터 (예를 들어, 맞춤화 사용자 인터페이스 상의) 이모지의 디폴트 버전 또는 이모지의 맞춤화된 버전 중 어느 하나의 위치로의 스와이프를 포함하면, 사용자 입력의 리프트오프 시에, 이모지의 개개의(예를 들어, 디폴트 또는 맞춤화된) 버전이 선택되고 텍스트 입력 구역 내에 삽입되며, 맞춤화 사용자 인터페이스가 해산된다. 일부 실시예들에서, 단일-요소 맞춤화 사용자 인터페이스(예를 들어, 하나의 맞춤화가능 요소만을 갖는 이모지들)의 경우, 접촉의 리프트오프를 검출하는 것은 항상 맞춤화 사용자 인터페이스가 해산되게 하고, 이모지의 버전(예를 들어, 리프트오프 전에 사용자 입력이 새로운 변형으로의 스와이프를 포함하면, 사용자의 이전의 선택 또는 사용자의 새로운 선택 중 어느 하나)이 텍스트 입력 구역 내에 삽입되게 한다.In some embodiments, in response to detecting a liftoff of contact from the touch-sensitive surface, the electronic device maintains display of a customized user interface via the display device (782), as in FIG. 6v (e.g., when the user releases contact with the touch screen, the customized user interface is not dismissed). In some embodiments, the customized user interface is displayed until the user selects an emoji to insert into the text input area or selects a location outside the customized user interface. In some embodiments, if the user input comprises a swipe from an original touchdown (e.g., while maintaining contact) to a location on the customized user interface for either the default version of the emoji or a customized version of the emoji, upon liftoff of the user input, the respective (e.g., default or customized) version of the emoji is selected and inserted into the text input area, and the customized user interface is dismissed. In some embodiments, for single-element customizable user interfaces (e.g., emojis with only one customizable element), detecting liftoff of a contact always causes the customizable user interface to be dismissed, and a version of the emoji (e.g., either the user's previous selection or the user's new selection, if the user input included a swipe to a new variation prior to liftoff) to be inserted into the text input area.
맞춤화 사용자 인터페이스를 디스플레이하는(예를 들어, 접촉의 터치다운을 검출하는 것에 응답하여 맞춤화 사용자 인터페이스를 디스플레이하고, 접촉의 리프트오프를 검출한 이후에도 맞춤화 사용자 인터페이스의 디스플레이를 유지하는) 위에서 설명된 방식은 (예를 들어, 사용자가 맞춤화 사용자 인터페이스 상에서 원하는 변형들을 선택하기 위해 부가적인 입력들을 수행할 수 있도록 맞춤화 사용자 인터페이스의 디스플레이를 유지함으로써) 그래픽 객체를 맞춤화하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 각각의 요소가 맞춤화되기 위해 맞춤화 사용자 인터페이스를 재디스플레이하도록 사용자에게 요구하지 않으면서, 맞춤화 사용자 인터페이스를 디스플레이한 이후 사용자가 그래픽 객체의 다수의 요소들을 맞춤화할 수 있게 함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of displaying a customized user interface (e.g., displaying the customized user interface in response to detecting a touchdown of a contact, and maintaining the display of the customized user interface after detecting a liftoff of the contact) provides a quick and efficient way to customize a graphical object (e.g., by maintaining the display of the customized user interface so that a user can make additional inputs to select desired variations on the customized user interface), which simplifies the interaction between a user and the electronic device (e.g., by allowing a user to customize multiple elements of the graphical object after displaying the customized user interface without requiring the user to re-display the customized user interface for each element to be customized), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling a user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 맞춤화 사용자 인터페이스, 예컨대, 도 6f의 다중-요소 맞춤화 사용자 인터페이스(624)는 텍스트 입력 구역 및 가상 키보드를 포함하는 사용자 인터페이스 위에 오버레이된다(786)(예를 들어, 맞춤화 사용자 인터페이스는, 맞춤화 사용자 인터페이스를 디스플레이하기 위한 사용자 입력이 수신되었을 때 디스플레이되었던 모든 것의 상단 상에 오버레이되게 디스플레이되는 팝업 사용자 인터페이스 요소이다).In some embodiments, a customized user interface, such as the multi-element customized user interface (624) of FIG. 6F, is overlaid (786) over a user interface that includes a text input area and a virtual keyboard (e.g., the customized user interface is a pop-up user interface element that is displayed as an overlay on top of everything that was previously displayed when user input to display the customized user interface is received).
맞춤화 사용자 인터페이스를 디스플레이하는(예를 들어, 맞춤화 사용자 인터페이스가 디스플레이되었을 때 디스플레이되었던 사용자 인터페이스 위의 오버레이로서 맞춤화 사용자 인터페이스를 디스플레이하는) 위에서 설명된 방식은 사용자 인터페이스의 맥락적 연속성을 제공하며, 이는 (예를 들어, 그래픽 객체의 맞춤화 및 삽입이 이전에 디스플레이된 인터페이스와 연관된다는 것을 사용자에게 시각적으로 표시하고, 최소로 방해가 되는 사용자 인터페이스 요소를 갖는 맞춤화 사용자 인터페이스를 사용자에게 제공함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of displaying a customized user interface (e.g., displaying the customized user interface as an overlay over a previously displayed user interface when the customized user interface was displayed) provides contextual continuity of the user interface, which simplifies the interaction between the user and the electronic device (e.g., by visually indicating to the user that the customization and insertion of graphical objects are related to a previously displayed interface, and by providing the user with a customized user interface with minimally distracting user interface elements), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 맞춤화 사용자 인터페이스가 디스플레이 디바이스의 디스플레이 영역의 미리 결정된 양 미만을 포함한다는 결정에 따라(예를 들어, 맞춤화 사용자 인터페이스는 디스플레이 디바이스의 총 디스플레이 영역의 25%, 50%, 66%, 75% 미만을 차지함), 맞춤화 사용자 인터페이스, 예컨대, 도 6f의 다중-요소 맞춤화 사용자 인터페이스(624)는 텍스트 입력 구역 및 가상 키보드를 포함하는 사용자 인터페이스 위에 오버레이된다(788)(예를 들어, 맞춤화 사용자 인터페이스는, 맞춤화 사용자 인터페이스를 디스플레이하기 위한 사용자 입력이 수신되었을 때 디스플레이되었던 모든 것의 상단 상에 오버레이된 팝업 사용자 인터페이스 요소로서 디스플레이된다).In some embodiments, based on a determination that the customized user interface comprises less than a predetermined amount of the display area of the display device (e.g., the customized user interface occupies less than 25%, 50%, 66%, 75% of the total display area of the display device), the customized user interface, e.g., the multi-element customized user interface (624) of FIG. 6F, is overlaid (788) over the user interface that includes the text input area and the virtual keyboard (e.g., the customized user interface is displayed as a pop-up user interface element that is overlaid on top of everything that was being displayed when user input to display the customized user interface was received).
일부 실시예들에서, 맞춤화 사용자 인터페이스가 디스플레이 디바이스의 디스플레이 영역의 미리 결정된 양 초과를 포함한다는 결정에 따라(예를 들어, 맞춤화 사용자 인터페이스는 디스플레이 디바이스의 총 디스플레이 영역의 25%, 50%, 66%, 75% 초과를 차지함), 맞춤화 사용자 인터페이스, 예컨대, 도 6ww의 다중-요소 맞춤화 사용자 인터페이스(642)는 사용자 인터페이스의 디스플레이를 대체한다(790)(예를 들어, 맞춤화 사용자 인터페이스는 풀-스크린 사용자 인터페이스로서 디스플레이된다). 일부 실시예들에서, 맞춤화 사용자 인터페이스는 맞춤화 사용자 인터페이스를 해산시키기 위한 선택가능 옵션을 포함한다. 일부 실시예들에서, 맞춤화 사용자 인터페이스를 해산시키는 사용자 입력에 응답하여, 디바이스는, 맞춤화 사용자 인터페이스를 디스플레이하기 위한 사용자 입력이 수신되었을 때 디스플레이되었던 사용자 인터페이스를 디스플레이한다(예를 들어, 사용자 인터페이스의 디스플레이를 재개한다).In some embodiments, upon a determination that the customized user interface comprises more than a predetermined amount of the display area of the display device (e.g., the customized user interface occupies more than 25%, 50%, 66%, 75% of the total display area of the display device), the customized user interface, e.g., the multi-element customized user interface (642) of FIG. 6ww, replaces the display of the user interface (790) (e.g., the customized user interface is displayed as a full-screen user interface). In some embodiments, the customized user interface includes a selectable option to dismiss the customized user interface. In some embodiments, in response to user input to dismiss the customized user interface, the device displays the user interface that was displayed when the user input to display the customized user interface was received (e.g., resumes display of the user interface).
맞춤화 사용자 인터페이스를 디스플레이하는(예를 들어, 맞춤화 사용자 인터페이스가 스크린 영역의 특정 양 미만을 차지하면 오버레이로서 또는 맞춤화 사용자 인터페이스가 스크린 영역의 특정 양 초과를 차지하면 풀 스크린 사용자 인터페이스로서 맞춤화 사용자 인터페이스를 디스플레이하는) 위에서 설명된 방식은, 적절하다면 사용자 인터페이스의 맥락적 연속성을 제공하며, 이는 (예를 들어, 디스플레이 디바이스의 크기에 관계없이 사용자가 맞춤화들을 보고 수행할 수 있게 하기 위해 맞춤화 사용자 인터페이스의 스타일을 자동으로 조정함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of displaying a customized user interface (e.g., displaying the customized user interface as an overlay when the customized user interface occupies less than a certain amount of screen area or as a full-screen user interface when the customized user interface occupies more than a certain amount of screen area) provides, where appropriate, contextual continuity of the user interface, which simplifies the interaction between a user and the electronic device (e.g., by automatically adjusting the style of the customized user interface to enable a user to view and perform customizations regardless of the size of the display device), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by enabling a user to use the electronic device more quickly and efficiently while reducing errors in use of the device.
일부 실시예들에서, 맞춤화 사용자 인터페이스를 디스플레이하는 동안, 전자 디바이스는 하나 이상의 입력 디바이스들을 통해, 맞춤화 사용자 인터페이스 외부의 위치에 대응하는 제2 사용자 입력, 예컨대 도 6m의 사용자 입력(603)을 수신한다(792)(예를 들어, 맞춤화 사용자 인터페이스 외부의 터치 스크린 상의 위치 상에서 사용자 입력을 수신함).In some embodiments, while displaying the customized user interface, the electronic device receives (792) a second user input, such as user input (603) of FIG. 6m, via one or more input devices, corresponding to a location outside the customized user interface (e.g., receiving the user input on a location on a touch screen outside the customized user interface).
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여, 전자 디바이스는 도 6n에서와 같이 맞춤화 사용자 인터페이스의 디스플레이를 중단한다(794)(예를 들어, 맞춤화 사용자 인터페이스를 해산시키고, (예를 들어, 맞춤화 사용자 인터페이스에 의해 방해받지 않는) 가상 키보드 및 텍스트 입력 구역을 포함하는 전체 사용자 인터페이스를 재디스플레이함). 일부 실시예들에서, 맞춤화 사용자 인터페이스의 "패들" 부분을 선택하는 사용자 입력은 또한 맞춤화 사용자 인터페이스가 해산되게 한다. 일부 실시예들에서, 맞춤화 사용자 인터페이스의 "패들" 부분은 가상 키보드 상의 대응하는 이모지 위에 오버레이되는 부분이다. 따라서, 일부 실시예들에서, 맞춤화 사용자 인터페이스의 디스플레이를 야기했던 동일한 위치를 선택하는 것은 맞춤화 사용자 인터페이스가 해산되게 한다. 일부 실시예들에서, 맞춤화 사용자 인터페이스를 디스플레이하는 것을 중단한 이후, 가상 키보드에서 개개의 이모지를 선택하는 추가적인 입력은 맞춤화가 아직 완료되지 않았다면 맞춤화 사용자 인터페이스의 재디스플레이를 야기할 것이다.In some embodiments, in response to receiving the second user input, the electronic device ceases displaying (794) the customized user interface (e.g., dismisses the customized user interface and redisplays the entire user interface, including the virtual keyboard and text input area (e.g., unobstructed by the customized user interface), as in FIG. 6n). In some embodiments, user input selecting the “paddle” portion of the customized user interface also causes the customized user interface to be dismissed. In some embodiments, the “paddle” portion of the customized user interface is the portion that is overlaid over the corresponding emoji on the virtual keyboard. Thus, in some embodiments, selecting the same location that caused the display of the customized user interface to be dismissed. In some embodiments, after discontinuing displaying the customized user interface, additional input selecting an individual emoji from the virtual keyboard will cause the customized user interface to be re-displayed, if customization has not yet been completed.
맞춤화 사용자 인터페이스를 해산시키는(예를 들어, 맞춤화 사용자 인터페이스들 외부의 터치 스크린 상의 사용자 입력에 응답하여 맞춤화 사용자 인터페이스를 해산시키는) 위에서 설명된 방식은 (예를 들어, 사용자가 맞춤화 사용자 인터페이스의 외부를 탭핑하여, 사용자가 맞춤화들을 수행하거나 맞춤화 사용자 인터페이스를 보는 것에 관심이 없다는 것을 표시하면, 맞춤화 사용자 인터페이스를 신속하게 해산시킴으로써) 맞춤화 사용자 인터페이스를 해산시키는 직관적이고 효율적인 방식을 제공하며, 이는 (예를 들어, "닫기" 또는 "x" 옵션을 선택하거나 부가적인 입력들을 수행하도록 사용자에게 요구하지 않으면서 맞춤화 사용자 인터페이스의 영역 외부에 있는 임의의 입력에 응답하여 맞춤화 사용자 인터페이스를 해산시킴으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described method of dismissing a customized user interface (e.g., dismissing a customized user interface in response to user input on a touch screen outside of the customized user interfaces) provides an intuitive and efficient way to dismiss a customized user interface (e.g., by quickly dismissing the customized user interface when the user indicates that he or she is not interested in performing customizations or viewing the customized user interface by tapping outside of the customized user interface), which simplifies the interaction between the user and the electronic device, improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 가상 키보드에 포함된 복수의 그래픽 객체들의 복수의 선택가능 표현들은 제2 그래픽 객체의 제2 선택가능 표현을 더 포함하며, 여기서, 제2 그래픽 객체, 예컨대 도 6a의 이모지(608-1)는 복수의 맞춤화가능 시각적 요소들과 연관되지 않는다(796)(예를 들어, 가상 키보드는 개개의 이모지를 맞춤화하거나 삽입하도록 선택가능한 복수의 상이한 이모지들을 디스플레이한다). 일부 실시예들에서, 복수의 상이한 이모지들은 맞춤화가능 시각적 요소들이 없는 이모지들, 하나의 맞춤화가능 시각적 요소를 갖는 이모지들, 및 다수의 맞춤화가능 시각적 요소들을 갖는 이모지들을 포함한다.In some embodiments, the plurality of selectable representations of the plurality of graphical objects included in the virtual keyboard further includes a second selectable representation of a second graphical object, wherein the second graphical object, such as the emoji (608-1) of FIG. 6A , is not associated with a plurality of customizable visual elements (796) (e.g., the virtual keyboard displays a plurality of different emojis selectable to customize or insert individual emojis). In some embodiments, the plurality of different emojis include emojis without customizable visual elements, emojis with one customizable visual element, and emojis with multiple customizable visual elements.
가상 키보드 상에서 그래픽 객체들을 제시하는(예를 들어, 복수의 그래픽 객체들과 연관되지 않는 그래픽 객체들 옆에 복수의 맞춤화가능 시각적 요소들과 연관된 그래픽 객체들을 가상 키보드 상에서 디스플레이하는) 위에서 설명된 방식은 (예를 들어, 복수의 그래픽 객체들이 복수의 맞춤화가능 객체들과 연관되는지 여부에 관계없이, 복수의 그래픽 객체들로부터 선택하기 위한 옵션을 사용자에게 제공함으로써) 상이한 그래픽 객체들을 선택하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 복수의 그래픽 객체들과 연관되지 않은 그래픽 객체들에 액세스하기 위한 사용자 인터페이스 및 복수의 그래픽 객체들과 연관된 그래픽 객체들에 액세스하기 위한 다른 사용자 인터페이스로 내비게이팅하도록 사용자에게 요구하지 않으면서, 사용자가 동일한 사용자 인터페이스로부터의 복수의 그래픽 객체들로부터 선택할 수 있게 함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of presenting graphical objects on a virtual keyboard (e.g., displaying graphical objects associated with a plurality of customizable visual elements on the virtual keyboard next to graphical objects that are not associated with the plurality of graphical objects) provides a quick and efficient way to select different graphical objects (e.g., by providing the user with the option to select from the plurality of graphical objects, regardless of whether the plurality of graphical objects are associated with the plurality of customizable objects), which simplifies the interaction between a user and the electronic device (e.g., by allowing the user to select from the plurality of graphical objects from the same user interface without requiring the user to navigate to a user interface for accessing graphical objects that are not associated with the plurality of graphical objects and a different user interface for accessing graphical objects associated with the plurality of graphical objects), improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces power usage and improves battery life of the electronic device by reducing errors in use of the device while enabling the user to use the electronic device more quickly and efficiently.
일부 실시예들에서, 전자 디바이스는 하나 이상의 입력 디바이스들을 통해, 가상 키보드에서 복수의 선택가능 표현들의 개개의 선택가능 표현을 선택하는 제2 사용자 입력, 예컨대, 도 6b의 사용자 입력(603)을 수신하며, 여기서, 개개의 선택가능 표현은 개개의 그래픽 객체와 연관된다(798)(예를 들어, 가상 키보드 상의 이모지를 선택하는 사용자 입력을 수신함).In some embodiments, the electronic device receives, via one or more input devices, a second user input, e.g., user input (603) of FIG. 6B , selecting an individual selectable representation of the plurality of selectable representations on the virtual keyboard, wherein each selectable representation is associated with a respective graphical object (798) (e.g., receiving user input selecting an emoji on the virtual keyboard).
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여(799), 개개의 그래픽 객체가 복수의 맞춤화가능 시각적 요소들과 연관되고 하나 이상의 제1 기준들이 만족된다는 결정에 따라(예를 들어, 선택된 이모지가 다수의 맞춤화가능 시각적 요소들을 갖고, 맞춤화가 완료되지 않았거나 또는 사용자 입력이 미리 결정된 지속기간 임계치 초과 동안의 접촉이면), 전자 디바이스는 디스플레이 디바이스를 통해, 개개의 그래픽 객체의 복수의 맞춤화가능 시각적 요소들을 맞춤화하기 위한 선택가능 옵션들, 및 선택가능 옵션들에 기초하여 복수의 맞춤화가능 시각적 요소들을 반영하는 개개의 그래픽 객체의 개개의 표현을 포함하는 제1 맞춤화 사용자 인터페이스, 예컨대, 도 6f의 다중-요소 맞춤화 사용자 인터페이스(624)를 디스플레이하며, 여기서, 개개의 그래픽 객체의 개개의 표현은 개개의 표현을 텍스트 입력 구역 내에 삽입하도록 선택가능하다(797)(예를 들어, 복수의 맞춤화가능 시각적 요소들을 맞춤화하기 위한 복수의 섹션들, 및 사용자의 맞춤화들을 미리보고, 맞춤화된 이모지를 텍스트 입력 구역 내에 삽입하도록 선택가능한 개개의 표현을 포함하는 위에서 설명된 다중-요소 맞춤화 사용자 인터페이스와 유사한 맞춤화 사용자 인터페이스를 디스플레이함). 일부 실시예들에서, 개개의 그래픽 객체의 복수의 맞춤화가능 시각적 요소들을 맞춤화하기 위한 선택가능 옵션들은, 개개의 그래픽 객체를 텍스트 입력 구역 내에 삽입하지 않으면서 개개의 그래픽 객체를 맞춤화하도록 선택가능하다.In some embodiments, in response to receiving a second user input (799), upon determining that the individual graphical object is associated with a plurality of customizable visual elements and one or more first criteria are satisfied (e.g., the selected emoji has a plurality of customizable visual elements and customization is not complete or the user input is a contact for more than a predetermined duration threshold), the electronic device displays, via the display device, a first customization user interface, such as a multi-element customization user interface (624) of FIG. 6F , that includes selectable options for customizing the plurality of customizable visual elements of the individual graphical object, and an individual representation of the individual graphical object reflecting the plurality of customizable visual elements based on the selectable options, wherein the individual representation of the individual graphical object is selectable to insert the individual representation into the text input area (797) (e.g., including a plurality of sections for customizing the plurality of customizable visual elements, and an individual representation selectable to preview the user's customizations and insert the customized emoji into the text input area). (Displaying a customizable user interface similar to the described multi-element customizable user interface). In some embodiments, the selectable options for customizing the multiple customizable visual elements of an individual graphical object are selectable to customize the individual graphical object without inserting the individual graphical object into the text input area.
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여(799), 개개의 그래픽 객체가 단지 하나의 맞춤화가능 시각적 요소와만 연관되고 하나 이상의 제2 기준들이 만족된다는 결정에 따라(예를 들어, 선택된 이모지가 하나의 맞춤화가능 시각적 요소만을 갖고, 맞춤화가 완료되지 않았거나 또는 사용자 입력이 미리 결정된 지속기간 임계치 초과 동안의 접촉이면), 전자 디바이스는 디스플레이 디바이스를 통해, 하나의 맞춤화가능 시각적 요소의 개개의 변형들에 대응하는 개개의 표현들을 포함하는 제2 맞춤화 사용자 인터페이스, 예컨대, 도 6d의 단일-요소 맞춤화 사용자 인터페이스(618)를 디스플레이하며, 여기서, 개개의 변형들에 대응하는 개개의 표현들은 개개의 그래픽 객체의 하나의 맞춤화가능 시각적 요소를 맞춤화하고 개개의 그래픽 객체를 텍스트 입력 구역 내에 삽입하도록 선택가능하다(795)(예를 들어, 복수의 맞춤화가능 시각적 요소들을 맞춤화하기 위한 복수의 옵션들이 없는 단일-요소 맞춤화 사용자 인터페이스를 디스플레이함).In some embodiments, in response to receiving the second user input (799), and determining that the individual graphical object is associated with only one customizable visual element and one or more second criteria are satisfied (e.g., the selected emoji has only one customizable visual element and customization is not complete, or the user input is a contact for more than a predetermined duration threshold), the electronic device displays, via the display device, a second customizable user interface, such as the single-element customizable user interface (618) of FIG. 6D , that includes individual representations corresponding to individual variations of the one customizable visual element, wherein the individual representations corresponding to the individual variations are selectable to customize one customizable visual element of the individual graphical object and insert the individual graphical object into the text input area (795) (e.g., displaying a single-element customizable user interface that lacks multiple options for customizing multiple customizable visual elements).
일부 실시예들에서, 단일-요소 맞춤화 사용자 인터페이스는 단일 행에서 하나의 맞춤화가능 시각적 요소의 복수의 변형들을 디스플레이한다. 일부 실시예들에서, 단일-요소 맞춤화 사용자 인터페이스는 사용자의 맞춤화를 미리보기하는 개개의 표현을 포함하지 않는다. 일부 실시예들에서, 선택된 이모지가 맞춤화되지 않았다면(예를 들어, 어떠한 변형도 선택되지 않았다면), 접촉의 리프트오프를 검출할 시에, 단일-요소 맞춤화 사용자 인터페이스의 디스플레이가 유지된다. 일부 실시예들에서, 복수의 변형들의 개개의 변형의 선택은 텍스트 입력 구역 내로의 개개의 변형의 삽입을 야기한다(예를 들어, 미리보기를 업데이트하는 것과는 반대로, 미리보기는 다수의 맞춤화가능 요소들을 갖는 그래픽 객체의 경우에서와 같이 삽입을 야기하도록 선택가능하다). 일부 실시예들에서, 선택된 이모지가 이미 맞춤화되었다면(예를 들어, 사용자가 하나의 맞춤화가능 시각적 요소에 대한 변형들 중 하나를 이전에 선택했었다면), 접촉의 리프트오프를 검출할 시에, 이모지가 텍스트 입력 구역에 삽입되고, 단일-요소 맞춤화 사용자 인터페이스가 해산된다(예를 들어, 단일-요소 맞춤화 사용자 인터페이스는 사용자 입력이 터치 스크린과 접촉하고 있는 동안에만 디스플레이된다). 일부 실시예들에서, 삽입된 이모지는 이모지의 이전에 선택된 변형이다. 일부 실시예들에서, 접촉이 복수의 변형들의 개개의 변형으로 이동되었다면, 리프트오프 시에, 삽입된 이모지는 개개의 변형이다.In some embodiments, the single-element customization user interface displays multiple variations of a single customizable visual element in a single row. In some embodiments, the single-element customization user interface does not include individual representations that preview the user's customizations. In some embodiments, if the selected emoji has not been customized (e.g., no variations have been selected), upon detecting liftoff of the contact, the display of the single-element customization user interface is maintained. In some embodiments, selection of an individual variation of the multiple variations causes insertion of the individual variation into the text input area (e.g., the preview may be selectable to cause insertion, as in the case of a graphical object with multiple customizable elements, as opposed to updating the preview). In some embodiments, if the selected emoji has already been personalized (e.g., if the user previously selected one of the variations for a customizable visual element), upon detecting liftoff of the contact, the emoji is inserted into the text input area and the single-element personalization user interface is dismissed (e.g., the single-element personalization user interface is displayed only while the user input is in contact with the touch screen). In some embodiments, the inserted emoji is the previously selected variation of the emoji. In some embodiments, if the contact was moved to an individual variation of the multiple variations, upon liftoff, the inserted emoji is the individual variation.
일부 실시예들에서, 제2 사용자 입력을 수신하는 것에 응답하여(799), 개개의 그래픽 객체가 임의의 맞춤화가능 시각적 요소들과 연관되지 않는다는 결정에 따라(예를 들어, 선택된 이모지가 어떠한 맞춤화가능 시각적 요소들도 갖지 않으면), 전자 디바이스는 디스플레이 디바이스를 통해 맞춤화 사용자 인터페이스를 디스플레이하지 않으면서 개개의 그래픽 객체를 제1 텍스트 입력 구역 내에 삽입하며(793), 예컨대 이모지(608-1)를 도 6c의 캐릭터(614-1)로서 텍스트 입력 구역(604) 내에 삽입한다(예를 들어, 맞춤화 사용자 인터페이스를 디스플레이하지 않으면서, 선택된 이모지를 텍스트 입력 구역 내에 삽입함). 일부 실시예들에서, 사용자 입력이 미리 결정된 지속기간 임계치 초과 동안의 접촉이면, 팝업이 디스플레이된다. 일부 실시예들에서, 팝업은 선택된 이모지의 표현을 포함한다. 일부 실시예들에서, 접촉의 리프트오프를 검출할 시에, 이모지는 텍스트 입력 구역 내에 삽입된다. 일부 실시예들에서, 팝업은 이모지를 맞춤화하기 위한 임의의 선택가능 옵션들을 포함하지 않는다. 일부 실시예들에서, 팝업은 단지, 삽입될 이모지의 더 큰 미리보기(예를 들어, 가상 키보드 내의 이모지의 디스플레이보다 큼)를 사용자에게 제공한다.In some embodiments, in response to receiving the second user input (799), and upon determining that the individual graphical object is not associated with any customizable visual elements (e.g., the selected emoji does not have any customizable visual elements), the electronic device inserts the individual graphical object into the first text input area (793) without displaying a customizable user interface via the display device, for example, inserts the emoji (608-1) into the text input area (604) as character (614-1) of FIG. 6C (e.g., inserts the selected emoji into the text input area without displaying a customizable user interface). In some embodiments, if the user input is a contact exceeding a predetermined duration threshold, a pop-up is displayed. In some embodiments, the pop-up includes a representation of the selected emoji. In some embodiments, upon detecting liftoff of the contact, the emoji is inserted into the text input area. In some embodiments, the pop-up does not include any selectable options for customizing the emoji. In some embodiments, the pop-up simply provides the user with a larger preview of the emoji to be inserted (e.g., larger than the display of the emoji within the virtual keyboard).
(예를 들어, 가상 키보드 상의 그래픽 객체 상에서 사용자 입력을 수신하고, 그래픽 객체가 복수의 맞춤화가능 요소들과 연관되면 다중-요소 맞춤화 사용자 인터페이스를, 그래픽 객체가 하나의 맞춤화가능 요소와만 연관되면 단일-요소 맞춤화 사용자 인터페이스를 디스플레이하거나, 또는 그래픽 객체가 임의의 맞춤화가능 요소들과 연관되지 않으면 그래픽 객체를 단순히 삽입함으로써) 그래픽 객체들을 맞춤화하고 삽입하는 위에서 설명된 방식은 (예를 들어, 선택된 그래픽 객체가 맞춤화될 수 있는지 여부 및 얼마나 많은 맞춤화가 이용가능한지를 결정하고, 적절한 맞춤화 사용자 인터페이스를 자동으로 디스플레이함으로써(또는 디스플레이하지 않음)) 그래픽 객체들을 삽입하고 필요한 경우에만 맞춤화 옵션들을 제시하는 신속하고 효율적인 방식을 제공하며, 이는 (예를 들어, 특정 그래픽 객체가 맞춤화들을 지원하는지 여부를 별개로 결정하도록 사용자에게 요구하지 않고, 맞춤화들을 지원하는 그래픽 객체들을 맞춤화하고 그리고/또는 삽입하기 위해 별개의 사용자 인터페이스로 내비게이팅하도록 부가적인 입력들을 수행하지 않으면서, 자동으로, 맞춤화들이 이용가능하면 적절한 맞춤화 사용자 인터페이스를 제시하거나 또는 맞춤화들이 이용가능하지 않으면 그래픽 객체를 삽입함으로써) 사용자와 전자 디바이스 사이의 상호작용을 단순화하고, 전자 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 부가적으로, 사용자가 전자 디바이스를 더 신속하고 효율적으로 사용할 수 있게 하면서 디바이스의 사용에서 에러들을 감소시킴으로써 전자 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.The above-described manner of customizing and inserting graphical objects (e.g., by receiving user input on a graphical object on a virtual keyboard, and displaying a multi-element customization user interface if the graphical object is associated with multiple customizable elements, a single-element customization user interface if the graphical object is associated with only one customizable element, or by simply inserting the graphical object if the graphical object is not associated with any customizable elements) provides a quick and efficient way to insert graphical objects and present customization options only when necessary (e.g., by determining whether a selected graphical object can be customized and how many customizations are available, and automatically displaying (or not displaying) the appropriate customization user interface), which facilitates interaction between a user and an electronic device (e.g., by automatically presenting the appropriate customization user interface if customizations are available, or inserting the graphical object if customizations are not available, without requiring the user to separately determine whether a particular graphical object supports customizations, and without requiring additional inputs to navigate to a separate user interface to customize and/or insert graphical objects that support customizations). It simplifies the interaction between the electronic device and the user, improves the operability of the electronic device, and makes the user-device interface more efficient, which additionally reduces the power usage of the electronic device and improves the battery life by reducing errors in the use of the device while enabling the user to use the electronic device more quickly and efficiently.
도 7a 내지 도 7m에서의 동작들이 설명된 특정 순서는 단지 예시적인 것이며, 설명된 순서가 동작들이 수행될 수 있는 유일한 순서이라는 것을 표시하도록 의도되지 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 설명된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다.It should be understood that the particular order in which the operations described in FIGS. 7A through 7M are exemplary only and are not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways to reorder the operations described herein.
위에서 설명된 정보 프로세싱 방법들에서의 동작들은 선택적으로, (예컨대, 도 1a, 도 1b, 도 3, 도 5a 내지 도 5h에 관해 설명된 바와 같은) 범용 프로세서들 또는 애플리케이션 특정 칩들과 같은 정보 프로세싱 장치 내의 하나 이상의 기능 모듈들을 구동시킴으로써 구현된다. 추가로, 도 7a 내지 도 7m을 참조하여 위에서 설명된 동작들은 선택적으로, 도 1a 및 도 1b에 도시된 컴포넌트들에 의해 구현된다. 예를 들어, 디스플레이 동작들(702, 708, 740, 750, 752, 770, 797, 795) 및 수신 동작들(704, 730, 734, 738, 746, 758, 764, 792, 798)은 선택적으로, 이벤트 분류기(170), 이벤트 인식기(180), 및 이벤트 핸들러(190)에 의해 구현된다. 개개의 미리 정의된 이벤트 또는 서브이벤트가 검출될 때, 이벤트 인식기(180)는 이벤트 또는 서브이벤트의 검출과 연관된 이벤트 핸들러(190)를 활성화시킨다. 이벤트 핸들러(190)는 데이터 업데이터(176) 또는 객체 업데이터(177)를 이용하거나 호출하여 애플리케이션 내부 상태(192)를 선택적으로 업데이트한다. 일부 실시예들에서, 이벤트 핸들러(190)는 개개의 GUI 업데이터(178)에 액세스하여, 애플리케이션에 의해 디스플레이되는 것을 업데이트한다. 유사하게, 다른 프로세스들이 도 1a 및 도 1b에 도시된 컴포넌트들에 기초하여 어떻게 구현될 수 있는지는 당업자에게 자명할 것이다.The operations in the information processing methods described above are optionally implemented by driving one or more functional modules within an information processing device, such as general purpose processors or application specific chips (e.g., as described with respect to FIGS. 1A, 1B, 3, and 5A to 5H). Additionally, the operations described above with reference to FIGS. 7A to 7M are optionally implemented by the components illustrated in FIGS. 1A and 1B. For example, the display operations (702, 708, 740, 750, 752, 770, 797, 795) and the receiving operations (704, 730, 734, 738, 746, 758, 764, 792, 798) are optionally implemented by an event classifier (170), an event recognizer (180), and an event handler (190). When a particular predefined event or sub-event is detected, the event recognizer (180) activates an event handler (190) associated with the detection of the event or sub-event. The event handler (190) optionally updates the application's internal state (192) by utilizing or calling a data updater (176) or an object updater (177). In some embodiments, the event handler (190) accesses a particular GUI updater (178) to update what is displayed by the application. Similarly, it will be apparent to those skilled in the art how other processes may be implemented based on the components illustrated in FIGS. 1A and 1B.
위에서 설명된 바와 같이, 본 기술의 일 태양은 그래픽 객체들의 맞춤화를 용이하게 하기 위한 특정적이고 적법한 소스들로부터 이용가능한 데이터의 수집 및 사용을 잠재적으로 수반한다. 본 개시내용은, 일부 예시들에서, 이러한 수집된 데이터가 특정 사람을 고유하게 식별하거나 또는 그를 식별하는 데 사용될 수 있는 개인 정보 데이터를 포함할 수 있음을 고려한다. 그러한 개인 정보 데이터는 인구통계 데이터, 위치 기반 데이터, 온라인 식별자들, 사용 이력, 피부 톤(또는 다른 시각적 외관 정보), 피부 톤(또는 다른 시각적 외관) 선호도들, 맞춤화 선호도들, 또는 임의의 다른 개인 정보 등을 포함할 수 있다.As described above, one aspect of the present technology potentially involves the collection and use of data available from specific and legitimate sources to facilitate customization of graphical objects. The present disclosure contemplates that, in some examples, such collected data may include personal data that uniquely identifies or can be used to identify a particular person. Such personal data may include demographic data, location-based data, online identifiers, usage history, skin tone (or other visual appearance information), skin tone (or other visual appearance) preferences, customization preferences, or any other personal information.
본 개시내용은 본 기술에서의 그러한 개인 정보 데이터의 사용이 사용자들에게 이득을 주기 위해 사용될 수 있음을 인식한다. 예를 들어, 개인 정보 데이터는 가상 키보드를 사용하여 전자 디바이스와 상호작용하는 것(예를 들어, 가상 키보드를 사용하는 그래픽 객체들의 맞춤화 및/또는 삽입)에 대한 동작들을 자동으로 수행하는 데 사용될 수 있다. 따라서, 그러한 개인 정보 데이터의 사용은 그래픽 객체에 대해 액션을 수행하기 위해 사용자들이 더 적은 입력들을 입력할 수 있게 한다. 추가로, 사용자에게 이득을 주는 개인 정보 데이터에 대한 다른 사용들이 또한 본 개시내용에 의해 고려된다. 예를 들어, 사용자의 맞춤화 선택들은 사용자에 대한 제안된 맞춤화들을 생성하는 데 사용될 수 있다.The present disclosure recognizes that such use of personal information data in the present technology may be used to benefit users. For example, the personal information data may be used to automatically perform actions for interacting with an electronic device using a virtual keyboard (e.g., customizing and/or inserting graphical objects using the virtual keyboard). Thus, the use of such personal information data may enable users to make fewer inputs to perform actions on graphical objects. Additionally, other uses of personal information data that benefit users are also contemplated by the present disclosure. For example, the user's customization selections may be used to generate suggested customizations for the user.
본 개시내용은 그러한 개인 정보 데이터의 수집, 분석, 공개, 전달, 저장, 또는 다른 사용을 담당하는 그러한 엔티티들이 잘 확립된 프라이버시 정책들 및/또는 프라이버시 관례들을 준수할 것이라는 것을 고려한다. 특히, 그러한 엔티티들은 사용자들의 프라이버시를 유지하기 위한 산업 또는 행정 요구사항들을 충족시키거나 능가하는 것으로 일반적으로 인식되는 프라이버시 관례들을 구현하고 일관되게 적용할 것으로 예상될 것이다. 개인 데이터의 사용에 관한 그러한 정보는 눈에 잘 띄고 사용자들에 의해 쉽게 액세스가능해야 하며, 데이터의 수집 및/또는 사용이 변함에 따라 업데이트되어야 한다. 사용자들로부터의 개인 정보는 적법한 사용들을 위해서만 수집되어야 한다. 추가로, 그러한 수집/공유는 사용자들의 동의 또는 적용가능한 법률에 특정된 다른 적법한 근거를 수신한 후에만 발생해야 한다. 부가적으로, 그러한 엔티티들은 그러한 개인 정보 데이터에 대한 액세스를 보호하고 안전하게 하며 개인 정보 데이터에 대한 액세스를 갖는 다른 사람들이 그들의 프라이버시 정책들 및 절차들을 고수한다는 것을 보장하기 위한 임의의 필요한 단계들을 취하는 것을 고려해야 한다. 추가로, 그러한 엔티티들은 널리 인정된 프라이버시 정책들 및 관례들에 대한 그들의 고수를 증명하기 위해 제3자들에 의해 그들 자신들이 평가를 받을 수 있다. 그에 부가하여, 정책들 및 관례들은 수집되고 그리고/또는 액세스되는 특정 유형들의 개인 정보 데이터에 대해 적응되어야 하고, 상위 표준을 부과하는 역할을 할 수 있는 관할구역 특정 고려사항들을 포함한, 적용가능한 법률들 및 표준들에 적응되어야 한다. 예를 들어, 미국에서, 소정 건강 데이터의 수집 또는 그에 대한 액세스는 HIPAA(Health Insurance Portability and Accountability Act)와 같은 연방법 및/또는 주법에 의해 통제될 수 있는 반면; 다른 국가들에서의 건강 데이터는 다른 법령들 및 정책들의 대상이 될 수 있고, 그에 따라 처리되어야 한다.This disclosure contemplates that such entities responsible for collecting, analyzing, disclosing, transmitting, storing, or otherwise using such personal data will adhere to well-established privacy policies and/or privacy practices. In particular, such entities will be expected to implement and consistently apply privacy practices that are generally recognized as meeting or exceeding industry or administrative requirements for maintaining the privacy of users. Such information regarding the use of personal data should be prominent and readily accessible to users, and should be updated as the collection and/or use of the data changes. Personal information from users should be collected only for lawful uses. Additionally, such collection/sharing should occur only after receiving consent from users or other lawful grounds specified in applicable law. Additionally, such entities should consider taking any necessary steps to protect and secure access to such personal data and to ensure that others who have access to the personal data adhere to their privacy policies and procedures. Additionally, such entities may themselves be assessed by third parties to demonstrate their adherence to widely accepted privacy policies and practices. In addition, policies and practices should be adapted to the specific types of personal data being collected and/or accessed, and to applicable laws and standards, including jurisdiction-specific considerations that may serve to impose higher standards. For example, in the United States, collection of or access to certain health data may be governed by federal and/or state law, such as the Health Insurance Portability and Accountability Act (HIPAA); whereas health data in other countries may be subject to, and must be handled in accordance with, different laws and policies.
전술한 것에도 불구하고, 본 개시내용은 또한 사용자들이 개인 정보 데이터의 사용, 또는 그에 대한 액세스를 선택적으로 차단하는 실시예들을 고려한다. 즉, 본 개시내용은 그러한 개인 정보 데이터에 대한 액세스를 방지하거나 차단하기 위해 하드웨어 및/또는 소프트웨어 요소들이 제공될 수 있다는 것을 고려한다. 예를 들어, 사용자는 전자 디바이스의 발견 또는 프라이버시 설정들을 변경하도록 하나 이상의 전자 디바이스들을 구성할 수 있다. 예를 들어, 사용자는 단지 특정 전자 디바이스가 사용자의 맞춤화 선택들에 액세스하게만 허용하는(예를 들어, 맞춤화 선택들을 다른 전자 디바이스와 공유하게 허용하지 않고 그리고/또는 선택들을 서버에 송신하게 허용하지 않는) 설정을 선택할 수 있다. 다른 예에서, 사용자들은 그들의 맞춤화 선택들의 프라이버시를 관리할 수 있다.Notwithstanding the foregoing, the present disclosure also contemplates embodiments in which users may selectively block use of, or access to, personal information data. That is, the present disclosure contemplates that hardware and/or software elements may be provided to prevent or block access to such personal information data. For example, a user may configure one or more electronic devices to change the discovery or privacy settings of the electronic devices. For example, a user may select a setting that only allows a particular electronic device to access the user's customized selections (e.g., not allowing the customized selections to be shared with other electronic devices and/or not allowing the selections to be transmitted to a server). In another example, users may manage the privacy of their customized selections.
게다가, 의도하지 않은 또는 인가되지 않은 액세스 또는 사용의 위험들을 최소화하기 위한 방식으로 개인 정보 데이터가 관리되고 처리되어야 한다는 것이 본 개시내용의 의도이다. 위험요소는, 데이터의 수집을 제한하고 데이터가 더 이상 필요하지 않다면 그것을 삭제함으로써 최소화될 수 있다. 부가적으로, 그리고 소정의 건강 관련 애플리케이션들에 적용가능한 것을 포함하여 적용가능할 때, 사용자의 프라이버시를 보호하기 위해 데이터 식별해제가 사용될 수 있다. 적절한 경우, 식별자들을 제거함으로써, 저장된 데이터의 양 또는 특이성을 제어함으로써(예를 들어, 주소 레벨에서보다는 도시 레벨에서 위치 데이터를 수집함으로써), 데이터가 저장되는 방식을 제어함으로써(예를 들어, 사용자들에 걸쳐 데이터를 집계함으로써), 그리고/또는 차등적 프라이버시와 같은 다른 방법들에 의해, 비식별화가 용이하게 될 수 있다.Moreover, it is the intent of the present disclosure that personal data should be managed and processed in a manner that minimizes the risks of unintended or unauthorized access or use. Risks can be minimized by limiting the collection of data and deleting it when it is no longer needed. Additionally, and where applicable, including for certain health-related applications, data de-identification can be used to protect the privacy of users. Where appropriate, de-identification can be facilitated by removing identifiers, controlling the amount or specificity of data stored (e.g., by collecting location data at the city level rather than at the address level), controlling the way data is stored (e.g., by aggregating data across users), and/or by other methods such as differential privacy.
따라서, 본 개시내용이 하나 이상의 다양한 개시된 실시예들을 구현하기 위해 개인 정보 데이터의 사용을 광범위하게 커버하지만, 본 개시내용은 다양한 실시예들이 또한 그러한 개인 정보 데이터에 액세스할 필요 없이 구현될 수 있다는 것을 또한 고려한다. 즉, 본 기술의 다양한 실시예들은 그러한 개인 정보 데이터의 전부 또는 일부의 결여로 인해 동작불가능하게 되지는 않는다. 예를 들어, 사용자는 임의의 맞춤화 선택들을 제공할 필요 없이, 그래픽 객체들과 상호작용할 수 있고, 그래픽 객체들을 텍스트 입력 구역들에 삽입할 수 있다.Accordingly, while the present disclosure broadly covers the use of personal information data to implement one or more of the various disclosed embodiments, the present disclosure also contemplates that various embodiments may also be implemented without the need for access to such personal information data. That is, various embodiments of the present technology are not rendered inoperable by the absence of all or part of such personal information data. For example, a user may be able to interact with graphical objects and insert graphical objects into text input areas without having to provide any customization selections.
전술한 설명은, 설명의 목적을 위해, 특정 실시예들을 참조하여 설명되었다. 그러나, 위의 예시적인 논의들은 본 발명을 개시된 정확한 형태들로 규명하거나 제한하려는 의도는 아니다. 많은 수정들 및 변형들이 위의 교시 내용들의 관점에서 가능하다. 본 발명의 원리들 및 그의 실제적인 응용들을 가장 잘 설명하여, 그에 의해 당업자들이 본 발명 및 다양한 설명된 실시예들을 고려되는 특정 용도에 적합한 바와 같은 다양한 변형들을 갖고서 가장 잘 사용하는 것을 가능하게 하도록, 실시예들이 선택 및 설명되었다.The foregoing description has been described with reference to specific embodiments, for purposes of illustration. However, the above illustrative discussions are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, thereby enabling others skilled in the art to best utilize the invention and the various described embodiments with various modifications as are suited to the particular use contemplated.
Claims (28)
디스플레이 디바이스 및 하나 이상의 입력 디바이스들과 통신하는 전자 디바이스에서,
상기 디스플레이 디바이스를 통해 사용자 인터페이스에서 텍스트 입력 구역 및 가상 키보드를 디스플레이하는 단계 - 상기 가상 키보드는 복수의 그래픽 객체들의 복수의 선택가능 표현들을 포함함 -;
상기 하나 이상의 입력 디바이스들을 통해, 상기 그래픽 객체들의 복수의 선택가능 표현들 중 제1 그래픽 객체의 제1 선택가능 표현을 선택하는 제1 사용자 입력을 수신하는 단계 - 상기 제1 그래픽 객체는 상기 제1 그래픽 객체의 복수의 상이한 부분들에 대응하는 복수의 맞춤화가능 시각적 요소들을 포함하고, 상기 복수의 맞춤화가능 시각적 요소들은 상기 제1 그래픽 객체의 제1 부분에 대응하는 제1 맞춤화가능 시각적 요소 및 상기 제1 그래픽 객체의 상기 제1 부분과 상이한 제2 부분에 대응하는 제2 맞춤화가능 시각적 요소를 포함함 -; 및
상기 제1 사용자 입력을 수신하는 것에 응답하여,
하나 이상의 제1 기준들이 만족된다는 결정에 따라, 상기 디스플레이 디바이스를 통해 맞춤화 사용자 인터페이스를 디스플레이하는 단계를 포함하고,
상기 맞춤화 사용자 인터페이스는,
상기 제1 맞춤화가능 시각적 요소에 대응하는 상기 제1 그래픽 객체의 상기 제1 부분을 맞춤화하기 위한 하나 이상의 제1 선택가능 옵션들을 포함하는 제1 섹션;
상기 제2 맞춤화가능 시각적 요소에 대응하는 상기 제1 그래픽 객체의 상기 제2 부분을 맞춤화하기 위한 하나 이상의 제2 선택가능 옵션들을 포함하는 제2 섹션; 및
상기 제1 그래픽 객체의 현재 맞춤화 상태를 표시하는 상기 제1 그래픽 객체의 제1 개개의 표현을 디스플레이하기 위한 제3 섹션을 포함하고,
상기 제1 그래픽 객체의 상기 제1 개개의 표현은 상기 제1 맞춤화가능 시각적 요소의 표현 및 상기 제2 맞춤화가능 시각적 요소의 표현을 포함하고,
상기 제1 맞춤화가능 시각적 요소 및 상기 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 결정에 따라, 상기 제1 맞춤화가능 시각적 요소의 상기 표현 및 상기 제2 맞춤화가능 시각적 요소의 상기 표현은 상기 제1 맞춤화가능 시각적 요소 및 상기 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 것을 표시하는 플레이스홀더 요소(placeholder element)들로 디스플레이되는, 방법.As a method,
In an electronic device communicating with a display device and one or more input devices,
A step of displaying a text input area and a virtual keyboard in a user interface via said display device, said virtual keyboard including a plurality of selectable representations of a plurality of graphical objects;
receiving, via one or more of the input devices, a first user input selecting a first selectable representation of a first graphical object from among a plurality of selectable representations of the graphical objects, wherein the first graphical object includes a plurality of customizable visual elements corresponding to a plurality of different portions of the first graphical object, the plurality of customizable visual elements including a first customizable visual element corresponding to a first portion of the first graphical object and a second customizable visual element corresponding to a second portion of the first graphical object that is different from the first portion; and
In response to receiving the first user input,
comprising the step of displaying a customized user interface via the display device, based on a determination that one or more first criteria are satisfied;
The above customized user interface,
A first section comprising one or more first selectable options for customizing the first portion of the first graphical object corresponding to the first customizable visual element;
a second section comprising one or more second selectable options for customizing the second portion of the first graphic object corresponding to the second customizable visual element; and
a third section for displaying a first individual representation of said first graphic object, said first graphic object indicating a current customization state of said first graphic object;
The first individual representation of the first graphic object comprises a representation of the first customizable visual element and a representation of the second customizable visual element,
A method wherein, based on a determination that the first customizable visual element and the second customizable visual element are not customized, the representation of the first customizable visual element and the representation of the second customizable visual element are displayed as placeholder elements indicating that the first customizable visual element and the second customizable visual element are not customized.
상기 제1 개개의 표현은 상기 하나 이상의 제1 선택가능 옵션들에 기초하여 상기 제1 맞춤화가능 시각적 요소 및 상기 하나 이상의 제2 선택가능 옵션들에 기초하여 상기 제2 맞춤화가능 시각적 요소를 반영하는, 방법.In the first paragraph,
A method wherein said first individual representation reflects said first customizable visual element based on said one or more first selectable options and said second customizable visual element based on said one or more second selectable options.
상기 제1 그래픽 객체의 상기 제1 개개의 표현이 상기 제1 맞춤화가능 시각적 요소 및 상기 제2 맞춤화가능 시각적 요소에 대한 플레이스홀더 요소들로 디스플레이되는 동안, 상기 하나 이상의 입력 디바이스들을 통해, 상기 맞춤화 사용자 인터페이스에서 개개의 선택가능 옵션을 선택하는 제2 사용자 입력을 수신하는 단계; 및
상기 개개의 선택가능 옵션을 선택하는 상기 제2 사용자 입력을 수신하는 것에 응답하여,
상기 개개의 선택가능 옵션이 상기 하나 이상의 제1 선택가능 옵션들 중 제1 선택가능 옵션이라는 결정에 따라, 상기 제1 맞춤화가능 시각적 요소에 대한 상기 플레이스홀더 요소를 상기 제1 선택가능 옵션에 대응하는 상기 제1 맞춤화가능 시각적 요소의 제1 변형으로 대체하도록 상기 제1 그래픽 객체의 상기 제1 개개의 표현을 업데이트하는 단계; 및
상기 개개의 선택가능 옵션이 상기 하나 이상의 제2 선택가능 옵션들 중 제2 선택가능 옵션이라는 결정에 따라, 상기 제2 맞춤화가능 시각적 요소에 대한 상기 플레이스홀더 요소를 상기 제2 선택가능 옵션에 대응하는 상기 제2 맞춤화가능 시각적 요소의 제1 변형으로 대체하도록 상기 제1 그래픽 객체의 상기 제1 개개의 표현을 업데이트하는 단계를 더 포함하는, 방법.In the first paragraph,
receiving, via one or more input devices, a second user input selecting an individual selectable option in the customizable user interface while the first individual representation of the first graphical object is displayed with placeholder elements for the first customizable visual element and the second customizable visual element; and
In response to receiving said second user input selecting said individual selectable option,
updating the first individual representation of the first graphical object to replace the placeholder element for the first customizable visual element with a first variation of the first customizable visual element corresponding to the first selectable option, based on a determination that the individual selectable option is a first selectable option of the one or more first selectable options; and
A method further comprising: updating the first individual representation of the first graphical object to replace the placeholder element for the second customizable visual element with a first variation of the second customizable visual element corresponding to the second selectable option, based on a determination that the individual selectable option is a second selectable option of the one or more second selectable options.
상기 제1 그래픽 객체의 상기 제1 개개의 표현을 상기 제1 선택가능 옵션에 대응하는 상기 제1 맞춤화가능 시각적 요소의 상기 제1 변형으로 업데이트한 이후, 상기 하나 이상의 입력 디바이스들을 통해 상기 하나 이상의 제1 선택가능 옵션들 중 제3 선택가능 옵션을 선택하는 제3 사용자 입력을 수신하는 단계; 및
상기 제3 사용자 입력을 수신하는 것에 응답하여, 상기 제1 맞춤화가능 시각적 요소의 상기 제1 변형을 상기 제3 선택가능 옵션에 대응하는 상기 제1 맞춤화가능 시각적 요소의 상기 제1 변형과 상이한 제2 변형으로 대체하도록 상기 제1 그래픽 객체의 상기 제1 개개의 표현을 업데이트하는 단계를 더 포함하는, 방법.In paragraph 4,
After updating said first individual representation of said first graphical object with said first variation of said first customizable visual element corresponding to said first selectable option, receiving a third user input selecting a third selectable option from among said one or more first selectable options via said one or more input devices; and
A method further comprising, in response to receiving said third user input, updating said first individual representation of said first graphical object to replace said first variation of said first customizable visual element with a second variation of said first customizable visual element that is different from said first variation of said first customizable visual element corresponding to said third selectable option.
상기 제1 그래픽 객체의 상기 맞춤화 상태가 부분 맞춤화 상태이고 상기 제1 그래픽 객체의 상기 제1 개개의 표현이 상기 제1 맞춤화가능 시각적 요소에 대한 제1 변형 및 상기 제2 맞춤화가능 시각적 요소에 대한 플레이스홀더 요소로 디스플레이되는 동안, 상기 하나 이상의 입력 디바이스들을 통해, 상기 맞춤화 사용자 인터페이스를 해산(dismiss)시키라는 요청에 대응하는 제2 사용자 입력을 수신하는 단계;
상기 제2 사용자 입력을 수신하는 것에 응답하여, 상기 맞춤화 사용자 인터페이스의 디스플레이를 중단하는 단계;
상기 맞춤화 사용자 인터페이스의 상기 디스플레이를 중단한 이후 그리고 상기 제1 그래픽 객체의 상기 맞춤화 상태가 상기 부분 맞춤화 상태인 동안, 상기 하나 이상의 입력 디바이스들을 통해, 상기 제1 그래픽 객체의 상기 제1 선택가능 표현을 선택하는 제3 사용자 입력을 수신하는 단계; 및
상기 제3 사용자 입력을 수신하는 것에 응답하여, 상기 디스플레이 디바이스를 통해 상기 맞춤화 사용자 인터페이스를 디스플레이하는 단계를 더 포함하며,
상기 제1 그래픽 객체의 상기 제1 개개의 표현은 상기 제1 맞춤화가능 시각적 요소에 대한 상기 제1 변형 및 상기 제2 맞춤화가능 시각적 요소에 대한 상기 플레이스홀더 요소로 상기 맞춤화 사용자 인터페이스에서 디스플레이되는, 방법.In the first paragraph,
While the customization state of the first graphical object is a partial customization state and the first individual representation of the first graphical object is displayed with a first variation for the first customizable visual element and a placeholder element for the second customizable visual element, receiving a second user input via the one or more input devices corresponding to a request to dismiss the customizable user interface;
In response to receiving said second user input, a step of stopping display of said customized user interface;
After stopping the display of the customized user interface and while the customized state of the first graphical object is in the partially customized state, receiving a third user input selecting the first selectable representation of the first graphical object via the one or more input devices; and
In response to receiving said third user input, further comprising the step of displaying said customized user interface through said display device,
A method wherein said first individual representation of said first graphical object is displayed in said customizable user interface as said first variation for said first customizable visual element and as said placeholder element for said second customizable visual element.
상기 복수의 맞춤화가능 시각적 요소들이 제3 맞춤화가능 시각적 요소를 포함한다는 결정에 따라, 상기 맞춤화 사용자 인터페이스는 상기 제3 맞춤화가능 시각적 요소를 맞춤화하기 위한 하나 이상의 제3 선택가능 옵션들을 포함하는 제4 섹션을 포함하는, 방법.In the first paragraph,
A method wherein, in response to a determination that the plurality of customizable visual elements include a third customizable visual element, the customizable user interface includes a fourth section including one or more third selectable options for customizing the third customizable visual element.
상기 맞춤화 사용자 인터페이스는 상기 제1 맞춤화가능 시각적 요소 및 상기 제2 맞춤화가능 시각적 요소의 미리 정의된 변형들에 대응하는 상기 제1 그래픽 객체의 제2 개개의 표현을 포함하는, 방법.In the first paragraph,
A method wherein said customizable user interface comprises a second individual representation of said first graphical object corresponding to predefined variations of said first customizable visual element and said second customizable visual element.
상기 제1 그래픽 객체의 상기 맞춤화 상태가 완료된 맞춤화 상태가 아닌 동안, 상기 하나 이상의 입력 디바이스들을 통해, 상기 제1 그래픽 객체의 상기 제1 개개의 표현을 선택하는 제2 사용자 입력을 수신하는 단계; 및
상기 제2 사용자 입력을 수신하는 것에 응답하여,
상기 제1 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 결정에 따라, 상기 디스플레이 디바이스를 통해, 상기 제1 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 시각적 표시를 디스플레이하는 단계; 및
상기 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 결정에 따라, 상기 디스플레이 디바이스를 통해, 상기 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 시각적 표시를 디스플레이하는 단계를 더 포함하는, 방법.In the first paragraph,
receiving a second user input selecting the first individual representation of the first graphic object via the one or more input devices while the customization state of the first graphic object is not a completed customization state; and
In response to receiving the second user input,
Upon determining that the first customizable visual element is not customized, a step of displaying a visual indication via the display device that the first customizable visual element is not customized; and
A method further comprising: displaying, via the display device, a visual indication that the second customizable visual element is not customized, upon a determination that the second customizable visual element is not customized.
상기 제1 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 상기 시각적 표시는 상기 제1 맞춤화가능 시각적 요소를 맞춤화하기 위한 상기 하나 이상의 제1 선택가능 옵션들의 시각적 특성의 변화를 애니메이션화하는 것을 포함하고,
상기 제2 맞춤화가능 시각적 요소가 맞춤화되지 않았다는 상기 시각적 표시는 상기 제2 맞춤화가능 시각적 요소를 맞춤화하기 위한 상기 하나 이상의 제2 선택가능 옵션들의 시각적 특성의 변화를 애니메이션화하는 것을 포함하는, 방법.In Article 9,
The visual indication that the first customizable visual element is not customized comprises animating a change in a visual characteristic of the one or more first selectable options for customizing the first customizable visual element;
A method wherein the visual indication that the second customizable visual element is not customized comprises animating a change in a visual characteristic of the one or more second selectable options for customizing the second customizable visual element.
상기 제1 그래픽 객체의 상기 맞춤화 상태가 상기 제1 맞춤화가능 시각적 요소의 개개의 변형 및 상기 제2 맞춤화가능 시각적 요소의 개개의 변형이 선택되었던 완료된 맞춤화 상태인 동안, 상기 하나 이상의 입력 디바이스들을 통해, 상기 제1 그래픽 객체의 상기 제1 개개의 표현을 선택하는 제2 사용자 입력을 수신하는 단계; 및
상기 제2 사용자 입력을 수신하는 것에 응답하여, 상기 제1 맞춤화가능 시각적 요소의 상기 개개의 변형 및 상기 제2 맞춤화가능 시각적 요소의 상기 개개의 변형을 갖는 상기 제1 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하는 단계를 더 포함하는, 방법.In the first paragraph,
While the customization state of the first graphical object is a completed customization state in which an individual variation of the first customizable visual element and an individual variation of the second customizable visual element have been selected, receiving a second user input, via the one or more input devices, selecting the first individual representation of the first graphical object; and
A method further comprising, in response to receiving said second user input, inserting into said text input area said first graphical object having said individual variation of said first customizable visual element and said individual variation of said second customizable visual element.
상기 제1 그래픽 객체의 상기 제1 개개의 표현을 선택하는 상기 제2 사용자 입력을 수신한 이후, 상기 제1 맞춤화가능 시각적 요소의 상기 개개의 변형 및 상기 제2 맞춤화가능 시각적 요소의 상기 개개의 변형을 갖는 상기 제1 그래픽 객체의 표현을 디스플레이하기 위해 상기 가상 키보드에서 상기 제1 그래픽 객체의 상기 제1 선택가능 표현을 업데이트하는 단계를 더 포함하는, 방법.In Article 11,
A method further comprising: receiving said second user input selecting said first individual representation of said first graphical object; updating said first selectable representation of said first graphical object on said virtual keyboard to display a representation of said first graphical object having said individual variation of said first customizable visual element and said individual variation of said second customizable visual element.
상기 제1 그래픽 객체의 상기 맞춤화 상태가 완료된 맞춤화 상태인 동안, 상기 하나 이상의 입력 디바이스들을 통해, 상기 제1 그래픽 객체의 상기 제1 선택가능 표현을 선택하는 제2 사용자 입력을 수신하는 단계; 및
상기 제2 사용자 입력을 수신하는 것에 응답하여,
상기 제2 사용자 입력이 미리 결정된 지속기간 임계치 미만 동안 상기 제1 그래픽 객체의 상기 제1 선택가능 표현의 선택을 포함한다는 결정에 따라, 상기 맞춤화 사용자 인터페이스를 디스플레이하지 않으면서 상기 제1 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하는 단계; 및
상기 제2 사용자 입력이 상기 미리 결정된 지속기간 임계치 초과 동안 상기 제1 그래픽 객체의 상기 제1 선택가능 표현의 선택을 포함한다는 결정에 따라, 상기 디스플레이 디바이스를 통해, 상기 제1 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하지 않으면서 상기 맞춤화 사용자 인터페이스를 디스플레이하는 단계를 더 포함하는, 방법.In the first paragraph,
While the customization state of the first graphic object is in a completed customization state, receiving a second user input selecting the first selectable representation of the first graphic object via the one or more input devices; and
In response to receiving the second user input,
inserting the first graphical object into the text input area without displaying the customized user interface, based on a determination that the second user input includes selection of the first selectable representation of the first graphical object for less than a predetermined duration threshold; and
A method further comprising: displaying, via the display device, the customized user interface without inserting the first graphical object into the text input area, upon determining that the second user input comprises selection of the first selectable representation of the first graphical object for a period exceeding the predetermined duration threshold.
상기 제1 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하는 단계는,
상기 제1 그래픽 객체의 상기 제1 선택가능 표현이 상기 제1 맞춤화가능 시각적 요소 및 상기 제2 맞춤화가능 시각적 요소에 대한 디폴트 변형들로 디스플레이된다는 결정에 따라, 상기 디폴트 변형들을 갖는 상기 제1 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하는 단계; 및
상기 제1 그래픽 객체의 상기 제1 선택가능 표현이 상기 제1 맞춤화가능 시각적 요소 및 상기 제2 맞춤화가능 시각적 요소에 대한 맞춤화된 변형들로 디스플레이된다는 결정에 따라, 상기 맞춤화된 변형들을 갖는 상기 제1 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하는 단계를 포함하는, 방법.In Article 13,
The step of inserting the first graphic object into the text input area is:
inserting the first graphical object having the default variations into the text input area, based on a determination that the first selectable representation of the first graphical object is displayed with default variations for the first customizable visual element and the second customizable visual element; and
A method comprising: inserting the first graphical object having the customized variations into the text input area, wherein the first selectable representation of the first graphical object is displayed with customized variations for the first customizable visual element and the second customizable visual element.
상기 제1 사용자 입력은 상기 하나 이상의 입력 디바이스들의 터치 감응형 표면으로부터의 접촉의 터치다운 및 리프트오프를 포함하고, 상기 맞춤화 사용자 인터페이스는 상기 터치 감응형 표면 상의 상기 접촉의 상기 터치다운 이후 그리고 상기 터치 감응형 표면으로부터의 상기 접촉의 상기 리프트오프 전에 디스플레이되며,
상기 방법은,
상기 맞춤화 사용자 인터페이스를 디스플레이하는 동안, 상기 터치 감응형 표면으로부터의 상기 접촉의 상기 리프트오프를 검출하는 단계; 및
상기 터치 감응형 표면으로부터의 상기 접촉의 상기 리프트오프를 검출하는 것에 응답하여, 상기 디스플레이 디바이스를 통한 상기 맞춤화 사용자 인터페이스의 디스플레이를 유지하는 단계를 더 포함하는, 방법.In the first paragraph,
wherein said first user input comprises a touchdown and liftoff of a contact from a touch-sensitive surface of said one or more input devices, and wherein said customized user interface is displayed after said touchdown of said contact on said touch-sensitive surface and before said liftoff of said contact from said touch-sensitive surface;
The above method,
detecting a lift-off of said contact from said touch-sensitive surface while displaying said customized user interface; and
A method further comprising: maintaining display of the customized user interface via the display device in response to detecting the lift-off of the contact from the touch-sensitive surface.
상기 맞춤화 사용자 인터페이스는 상기 텍스트 입력 구역 및 상기 가상 키보드를 포함하는 상기 사용자 인터페이스 위에 오버레이되는, 방법.In the first paragraph,
A method wherein said customized user interface is overlaid over said user interface including said text input area and said virtual keyboard.
상기 맞춤화 사용자 인터페이스가 상기 디스플레이 디바이스의 디스플레이 영역의 미리 결정된 양 미만을 포함한다는 결정에 따라, 상기 맞춤화 사용자 인터페이스는 상기 텍스트 입력 구역 및 상기 가상 키보드를 포함하는 상기 사용자 인터페이스 위에 오버레이되고;
상기 맞춤화 사용자 인터페이스가 상기 디스플레이 디바이스의 상기 디스플레이 영역의 상기 미리 결정된 양 초과를 포함한다는 결정에 따라, 상기 맞춤화 사용자 인터페이스는 상기 사용자 인터페이스의 상기 디스플레이를 대체하는, 방법.In the first paragraph,
In response to a determination that the customized user interface comprises less than a predetermined amount of a display area of the display device, the customized user interface is overlaid over the user interface including the text input area and the virtual keyboard;
A method wherein the customized user interface replaces the display of the user interface, based on a determination that the customized user interface includes more than the predetermined amount of the display area of the display device.
상기 맞춤화 사용자 인터페이스를 디스플레이하는 동안, 상기 하나 이상의 입력 디바이스들을 통해, 상기 맞춤화 사용자 인터페이스 외부의 위치에 대응하는 제2 사용자 입력을 수신하는 단계; 및
상기 제2 사용자 입력을 수신하는 것에 응답하여, 상기 맞춤화 사용자 인터페이스의 디스플레이를 중단하는 단계를 더 포함하는, 방법.In the first paragraph,
While displaying the customized user interface, receiving a second user input corresponding to a location outside the customized user interface via the one or more input devices; and
A method further comprising: in response to receiving said second user input, stopping display of said customized user interface.
상기 가상 키보드에 포함된 상기 복수의 그래픽 객체들의 상기 복수의 선택가능 표현들은 제2 그래픽 객체의 제2 선택가능 표현을 더 포함하며,
상기 제2 그래픽 객체는 복수의 맞춤화가능 시각적 요소들과 연관되지 않는, 방법.In the first paragraph,
The plurality of selectable representations of the plurality of graphic objects included in the virtual keyboard further include a second selectable representation of a second graphic object,
A method wherein the second graphic object is not associated with a plurality of customizable visual elements.
상기 하나 이상의 입력 디바이스들을 통해, 상기 가상 키보드에서 상기 복수의 선택가능 표현들의 개개의 선택가능 표현을 선택하는 제2 사용자 입력을 수신하는 단계 - 상기 개개의 선택가능 표현은 개개의 그래픽 객체와 연관됨 -; 및
상기 제2 사용자 입력을 수신하는 것에 응답하여,
상기 개개의 그래픽 객체가 복수의 맞춤화가능 시각적 요소들과 연관되고 상기 하나 이상의 제1 기준들이 만족된다는 결정에 따라, 상기 디스플레이 디바이스를 통해, 상기 개개의 그래픽 객체의 상기 복수의 맞춤화가능 시각적 요소들을 맞춤화하기 위한 선택가능 옵션들, 및 상기 선택가능 옵션들에 기초하여 상기 복수의 맞춤화가능 시각적 요소들을 반영하는 상기 개개의 그래픽 객체의 개개의 표현을 포함하는 제1 맞춤화 사용자 인터페이스를 디스플레이하는 단계 - 상기 개개의 그래픽 객체의 상기 개개의 표현은 상기 개개의 표현을 상기 텍스트 입력 구역 내에 삽입하도록 선택가능함 -;
상기 개개의 그래픽 객체가 단지 하나의 맞춤화가능 시각적 요소와만 연관되고 하나 이상의 제2 기준들이 만족된다는 결정에 따라, 상기 디스플레이 디바이스를 통해, 상기 하나의 맞춤화가능 시각적 요소의 개개의 변형들에 대응하는 개개의 표현들을 포함하는 제2 맞춤화 사용자 인터페이스를 디스플레이하는 단계 - 상기 개개의 변형들에 대응하는 상기 개개의 표현들은 상기 개개의 그래픽 객체의 상기 하나의 맞춤화가능 시각적 요소를 맞춤화하고 상기 개개의 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하도록 선택가능함 -; 및
상기 개개의 그래픽 객체가 임의의 맞춤화가능 시각적 요소들과 연관되지 않는다는 결정에 따라, 상기 디스플레이 디바이스를 통해 맞춤화 사용자 인터페이스를 디스플레이하지 않으면서 상기 개개의 그래픽 객체를 상기 텍스트 입력 구역 내에 삽입하는 단계를 더 포함하는, 방법.In Article 19,
receiving a second user input selecting an individual selectable expression of the plurality of selectable expressions on the virtual keyboard via the one or more input devices, wherein the individual selectable expressions are associated with individual graphical objects; and
In response to receiving the second user input,
In response to a determination that the individual graphical object is associated with a plurality of customizable visual elements and that the one or more first criteria are satisfied, displaying, via the display device, a first customizable user interface including selectable options for customizing the plurality of customizable visual elements of the individual graphical object, and an individual representation of the individual graphical object reflecting the plurality of customizable visual elements based on the selectable options, wherein the individual representation of the individual graphical object is selectable to insert the individual representation within the text input area;
displaying, via the display device, a second customized user interface comprising individual representations corresponding to individual variations of the one customizable visual element, wherein the individual representations corresponding to the individual variations are selectable to customize the one customizable visual element of the individual graphical object and to insert the individual graphical object into the text input area, upon a determination that the individual graphical object is associated with only one customizable visual element and that one or more second criteria are satisfied; and
A method further comprising the step of inserting the individual graphical object into the text input area without displaying a customizable user interface via the display device, based on a determination that the individual graphical object is not associated with any customizable visual elements.
하나 이상의 프로세서들;
메모리; 및
하나 이상의 프로그램들을 포함하며,
상기 하나 이상의 프로그램들은, 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되고,
상기 하나 이상의 프로그램들은 제1항, 제2항, 제4항 내지 제20항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는, 전자 디바이스.As an electronic device,
One or more processors;
memory; and
Contains one or more programs,
The one or more programs are stored in the memory and configured to be executed by the one or more processors,
An electronic device, wherein said one or more programs include commands for performing the method of any one of claims 1, 2, 4 to 20.
상기 하나 이상의 프로그램들은, 전자 디바이스의 하나 이상의 프로세서들에 의해 실행될 때, 상기 전자 디바이스로 하여금, 제1항, 제2항, 제4항 내지 제20항 중 어느 한 항의 방법을 수행하게 하는 명령어들을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.A non-transitory computer-readable storage medium storing one or more programs,
A non-transitory computer-readable storage medium, wherein said one or more programs include instructions that, when executed by one or more processors of an electronic device, cause the electronic device to perform the method of any one of claims 1, 2, 4 to 20.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020247038878A KR20240170585A (en) | 2019-09-27 | 2020-09-14 | User interfaces for customizing graphical objects |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962907437P | 2019-09-27 | 2019-09-27 | |
US62/907,437 | 2019-09-27 | ||
PCT/US2020/050755 WO2021061435A1 (en) | 2019-09-27 | 2020-09-14 | User interfaces for customizing graphical objects |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247038878A Division KR20240170585A (en) | 2019-09-27 | 2020-09-14 | User interfaces for customizing graphical objects |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220050187A KR20220050187A (en) | 2022-04-22 |
KR102734876B1 true KR102734876B1 (en) | 2024-11-28 |
Family
ID=72659368
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227009281A Active KR102734876B1 (en) | 2019-09-27 | 2020-09-14 | User interfaces for customizing graphic objects |
KR1020247038878A Pending KR20240170585A (en) | 2019-09-27 | 2020-09-14 | User interfaces for customizing graphical objects |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247038878A Pending KR20240170585A (en) | 2019-09-27 | 2020-09-14 | User interfaces for customizing graphical objects |
Country Status (7)
Country | Link |
---|---|
US (2) | US11868592B2 (en) |
EP (1) | EP4034980A1 (en) |
JP (2) | JP7349566B2 (en) |
KR (2) | KR102734876B1 (en) |
CN (2) | CN114514497B (en) |
AU (2) | AU2020356289B2 (en) |
WO (1) | WO2021061435A1 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USD818497S1 (en) * | 2015-01-06 | 2018-05-22 | King.Com Limited | Display screen with icon |
EP3788775B1 (en) * | 2018-05-02 | 2021-09-22 | Telefonaktiebolaget LM Ericsson (publ) | User equipment, method by a user equipment, and network node |
US11416670B2 (en) * | 2020-03-02 | 2022-08-16 | Jocelyn Bruno | Method of generating stylized text messages |
USD947866S1 (en) * | 2020-06-20 | 2022-04-05 | Apple Inc. | Display screen or portion thereof with graphical user interface |
US11609640B2 (en) | 2020-06-21 | 2023-03-21 | Apple Inc. | Emoji user interfaces |
US11531406B2 (en) | 2021-04-20 | 2022-12-20 | Snap Inc. | Personalized emoji dictionary |
US11888797B2 (en) | 2021-04-20 | 2024-01-30 | Snap Inc. | Emoji-first messaging |
US11593548B2 (en) * | 2021-04-20 | 2023-02-28 | Snap Inc. | Client device processing received emoji-first messages |
US11601387B2 (en) * | 2021-06-08 | 2023-03-07 | Microsoft Technology Licensing, Llc | Generating composite images by combining subsequent data |
US11635871B1 (en) | 2021-11-11 | 2023-04-25 | Microsoft Technology Licensing, Llc | Command based personalized composite icons |
US11568131B1 (en) | 2021-11-11 | 2023-01-31 | Microsoft Technology Licensing, Llc | Command based personalized composite templates |
US12189919B2 (en) * | 2022-05-05 | 2025-01-07 | Adobe Inc. | User interface for editing of a composite document through intelligently zoomed previews |
US12111977B2 (en) * | 2022-07-06 | 2024-10-08 | Bonggeun Kim | Device and method for inputting characters |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170083174A1 (en) * | 2015-09-21 | 2017-03-23 | Microsoft Technology Licensing, Llc | Facilitating Selection of Attribute Values for Graphical Elements |
Family Cites Families (169)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3859005A (en) | 1973-08-13 | 1975-01-07 | Albert L Huebner | Erosion reduction in wet turbines |
US4826405A (en) | 1985-10-15 | 1989-05-02 | Aeroquip Corporation | Fan blade fabrication system |
JPH07117868B2 (en) * | 1991-04-30 | 1995-12-18 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Method and device for defining touch-type operating keyboard |
JPH0981320A (en) * | 1995-09-20 | 1997-03-28 | Matsushita Electric Ind Co Ltd | Pen input type selection input device and method therefor |
EP0902378A3 (en) * | 1997-09-15 | 2003-07-16 | Canon Kabushiki Kaisha | A font architecture and creation tool for producing richer text |
US8479122B2 (en) | 2004-07-30 | 2013-07-02 | Apple Inc. | Gestures for touch sensitive input devices |
US20060033724A1 (en) | 2004-07-30 | 2006-02-16 | Apple Computer, Inc. | Virtual input device placement on a touch screen user interface |
JP2002501271A (en) | 1998-01-26 | 2002-01-15 | ウェスターマン,ウェイン | Method and apparatus for integrating manual input |
US7844914B2 (en) | 2004-07-30 | 2010-11-30 | Apple Inc. | Activating virtual keys of a touch-screen virtual keyboard |
US7614008B2 (en) | 2004-07-30 | 2009-11-03 | Apple Inc. | Operation of a computer with touch screen interface |
US7663607B2 (en) | 2004-05-06 | 2010-02-16 | Apple Inc. | Multipoint touchscreen |
US7688306B2 (en) | 2000-10-02 | 2010-03-30 | Apple Inc. | Methods and apparatuses for operating a portable device based on an accelerometer |
US7218226B2 (en) | 2004-03-01 | 2007-05-15 | Apple Inc. | Acceleration-based theft detection system for portable electronic devices |
US6990452B1 (en) * | 2000-11-03 | 2006-01-24 | At&T Corp. | Method for sending multi-media messages using emoticons |
US7035803B1 (en) * | 2000-11-03 | 2006-04-25 | At&T Corp. | Method for sending multi-media messages using customizable background images |
US6677932B1 (en) | 2001-01-28 | 2004-01-13 | Finger Works, Inc. | System and method for recognizing touch typing under limited tactile feedback conditions |
US6570557B1 (en) | 2001-02-10 | 2003-05-27 | Finger Works, Inc. | Multi-touch system and method for emulating modifier keys via fingertip chords |
US6987991B2 (en) * | 2001-08-17 | 2006-01-17 | Wildseed Ltd. | Emoticon input method and apparatus |
US11275405B2 (en) | 2005-03-04 | 2022-03-15 | Apple Inc. | Multi-functional hand-held device |
US7636755B2 (en) * | 2002-11-21 | 2009-12-22 | Aol Llc | Multiple avatar personalities |
US7185285B2 (en) * | 2003-02-19 | 2007-02-27 | Microsoft Corporation | User interface and content enhancements for real-time communication |
US7913176B1 (en) * | 2003-03-03 | 2011-03-22 | Aol Inc. | Applying access controls to communications with avatars |
US8171084B2 (en) * | 2004-01-20 | 2012-05-01 | Microsoft Corporation | Custom emoticons |
US7571213B2 (en) * | 2004-03-26 | 2009-08-04 | Microsoft Corporation | Interactive electronic bubble messaging |
US7653883B2 (en) | 2004-07-30 | 2010-01-26 | Apple Inc. | Proximity detector in handheld device |
US8381135B2 (en) | 2004-07-30 | 2013-02-19 | Apple Inc. | Proximity detector in handheld device |
US20060224992A1 (en) * | 2005-04-01 | 2006-10-05 | Microsoft Corporation | Graphical user interface management |
US7633076B2 (en) | 2005-09-30 | 2009-12-15 | Apple Inc. | Automated response to and sensing of user activity in portable devices |
WO2007050816A2 (en) * | 2005-10-25 | 2007-05-03 | Extensis Corporation | Systems, methods, use interfaces, and computer-readable media for activating and managing fonts |
US7657849B2 (en) | 2005-12-23 | 2010-02-02 | Apple Inc. | Unlocking a device by performing gestures on an unlock image |
US8279180B2 (en) | 2006-05-02 | 2012-10-02 | Apple Inc. | Multipoint touch surface controller |
US8166418B2 (en) * | 2006-05-26 | 2012-04-24 | Zi Corporation Of Canada, Inc. | Device and method of conveying meaning |
US20080082613A1 (en) * | 2006-09-28 | 2008-04-03 | Yahoo! Inc. | Communicating online presence and mood |
US8266527B2 (en) * | 2006-12-07 | 2012-09-11 | Canon Kabushiki Kaisha | Electronic album creating apparatus, electronic album editing apparatus, information processing system, electronic album creating method, and storage medium storing program |
US8006002B2 (en) | 2006-12-12 | 2011-08-23 | Apple Inc. | Methods and systems for automatic configuration of peripherals |
US7957762B2 (en) | 2007-01-07 | 2011-06-07 | Apple Inc. | Using ambient light sensor to augment proximity sensor output |
EP1995909A1 (en) * | 2007-05-25 | 2008-11-26 | France Telecom | Method for dynamically assessing the mood of an instant messaging user |
US9933937B2 (en) | 2007-06-20 | 2018-04-03 | Apple Inc. | Portable multifunction device, method, and graphical user interface for playing online videos |
US8270809B2 (en) * | 2008-08-01 | 2012-09-18 | Apple Inc. | Previewing effects applicable to digital media content |
US8584031B2 (en) | 2008-11-19 | 2013-11-12 | Apple Inc. | Portable touch screen device, method, and graphical user interface for using emoji characters |
US9614685B2 (en) | 2009-03-09 | 2017-04-04 | Nokia Technologies Oy | Methods, apparatuses, and computer program products for facilitating synchronization of setting configurations |
US8292733B2 (en) * | 2009-08-31 | 2012-10-23 | Disney Enterprises, Inc. | Entertainment system providing dynamically augmented game surfaces for interactive fun and learning |
KR101082285B1 (en) * | 2010-01-29 | 2011-11-09 | 주식회사 팬택 | Terminal and method for providing augmented reality |
KR20110100394A (en) * | 2010-03-04 | 2011-09-14 | 삼성전자주식회사 | Apparatus and method for editing an emoticon on a portable terminal |
TWI439960B (en) * | 2010-04-07 | 2014-06-01 | Apple Inc | Avatar editing environment |
US8694899B2 (en) * | 2010-06-01 | 2014-04-08 | Apple Inc. | Avatars reflecting user states |
US20170098122A1 (en) * | 2010-06-07 | 2017-04-06 | Affectiva, Inc. | Analysis of image content with associated manipulation of expression presentation |
US11393133B2 (en) | 2010-06-07 | 2022-07-19 | Affectiva, Inc. | Emoji manipulation using machine learning |
US8620850B2 (en) * | 2010-09-07 | 2013-12-31 | Blackberry Limited | Dynamically manipulating an emoticon or avatar |
US20120072867A1 (en) * | 2010-09-17 | 2012-03-22 | Apple Inc. | Presenting pop-up controls in a user interface |
KR20120080922A (en) * | 2011-01-10 | 2012-07-18 | 삼성전자주식회사 | Display apparatus and method for displaying thereof |
US20120304074A1 (en) * | 2011-05-23 | 2012-11-29 | Microsoft Corporation | Device user interface to input emoji and other symbols |
US20130002562A1 (en) * | 2011-06-30 | 2013-01-03 | Nokia Corporation | Virtual keyboard layouts |
US20200137011A1 (en) * | 2011-06-30 | 2020-04-30 | Audiobyte Llc | Method and system for communicating between a sender and a recipient via a personalized message including an audio clip extracted from a pre-existing recording |
US8589160B2 (en) * | 2011-08-19 | 2013-11-19 | Dolbey & Company, Inc. | Systems and methods for providing an electronic dictation interface |
US8907906B2 (en) * | 2011-09-27 | 2014-12-09 | Z124 | Secondary single screen mode deactivation |
US9870552B2 (en) * | 2011-10-19 | 2018-01-16 | Excalibur Ip, Llc | Dynamically updating emoticon pool based on user targeting |
CA2772554A1 (en) * | 2012-03-19 | 2013-09-19 | Corel Corporation | Method and system for interactive font feature access |
WO2013169849A2 (en) | 2012-05-09 | 2013-11-14 | Industries Llc Yknots | Device, method, and graphical user interface for displaying user interface objects corresponding to an application |
CN106201316B (en) * | 2012-05-09 | 2020-09-29 | 苹果公司 | Apparatus, method and graphical user interface for selecting user interface objects |
KR101375166B1 (en) * | 2012-05-14 | 2014-03-20 | 전남대학교산학협력단 | System and control method for character make-up |
US9152219B2 (en) * | 2012-06-18 | 2015-10-06 | Microsoft Technology Licensing, Llc | Creation and context-aware presentation of customized emoticon item sets |
US9401097B2 (en) * | 2012-06-29 | 2016-07-26 | Jong-Phil Kim | Method and apparatus for providing emotion expression service using emotion expression identifier |
KR101911251B1 (en) * | 2012-07-13 | 2018-10-24 | 엘지전자 주식회사 | Terminal and method for controlling the same |
KR20140042427A (en) * | 2012-09-28 | 2014-04-07 | 삼성전자주식회사 | Device for creating animated emoticon and mehtod for controlling thereof |
WO2014068573A1 (en) * | 2012-10-31 | 2014-05-08 | Aniways Advertising Solutions Ltd. | Custom emoticon generation |
KR101958517B1 (en) | 2012-12-29 | 2019-03-14 | 애플 인크. | Device, method, and graphical user interface for transitioning between touch input to display output relationships |
US20140195961A1 (en) * | 2013-01-07 | 2014-07-10 | Apple Inc. | Dynamic Index |
IL226047A (en) * | 2013-04-29 | 2017-12-31 | Hershkovitz Reshef May | Method and system for providing personal emoticons |
US10275807B2 (en) * | 2013-06-14 | 2019-04-30 | M2 Media Group | Systems and methods for generating customized avatars and customized online portals |
US20150100537A1 (en) * | 2013-10-03 | 2015-04-09 | Microsoft Corporation | Emoji for Text Predictions |
US9250780B2 (en) * | 2013-10-28 | 2016-02-02 | Lenovo (Beijing) Co., Ltd. | Information processing method and electronic device |
US20150172246A1 (en) * | 2013-12-13 | 2015-06-18 | Piragash Velummylum | Stickers for electronic messaging cards |
US9063682B1 (en) * | 2013-12-30 | 2015-06-23 | Csr Imaging Us, Lp | Managing font metrics for a rendering device |
US20150234793A1 (en) * | 2014-02-18 | 2015-08-20 | Adobe Systems Incorporated | Font resource management |
JP6484079B2 (en) * | 2014-03-24 | 2019-03-13 | 株式会社 ハイディープHiDeep Inc. | Kansei transmission method and terminal for the same |
WO2015148733A2 (en) * | 2014-03-25 | 2015-10-01 | ScStan, LLC | Systems and methods for the real-time modification of videos and images within a social network format |
KR20150123429A (en) * | 2014-04-24 | 2015-11-04 | 삼성전자주식회사 | Electronic device and Method for providing contents |
WO2015175240A1 (en) * | 2014-05-15 | 2015-11-19 | Narvii Inc. | Systems and methods implementing user interface objects |
KR102177607B1 (en) * | 2014-05-16 | 2020-11-11 | 엘지전자 주식회사 | Mobile terminal and method for controlling the same |
CN104063427A (en) * | 2014-06-06 | 2014-09-24 | 北京搜狗科技发展有限公司 | Expression input method and device based on semantic understanding |
KR20150142462A (en) * | 2014-06-12 | 2015-12-22 | 삼성전자주식회사 | Electric apparatus and control method thereof |
US10708203B2 (en) * | 2014-06-25 | 2020-07-07 | Convergence Acceleration Solutions, Llc | Systems and methods for indicating emotions through electronic self-portraits |
CN104063280B (en) * | 2014-06-25 | 2017-09-12 | 华为技术有限公司 | A kind of control method of intelligent terminal |
JP6413391B2 (en) * | 2014-06-27 | 2018-10-31 | 富士通株式会社 | CONVERSION DEVICE, CONVERSION PROGRAM, AND CONVERSION METHOD |
US9043196B1 (en) * | 2014-07-07 | 2015-05-26 | Machine Zone, Inc. | Systems and methods for identifying and suggesting emoticons |
EP4462246A3 (en) | 2014-09-02 | 2024-11-27 | Apple Inc. | User interface for receiving user input |
KR101620186B1 (en) * | 2014-09-05 | 2016-05-11 | 주식회사 카카오 | Interfacing method for user feedback |
US10929012B2 (en) * | 2014-09-09 | 2021-02-23 | Microsoft Technology Licensing, Llc | Systems and methods for multiuse of keys for virtual keyboard |
US20160259502A1 (en) * | 2014-09-10 | 2016-09-08 | Katrina Parrott | Diverse emojis/emoticons |
KR20160069286A (en) * | 2014-12-08 | 2016-06-16 | 엘지전자 주식회사 | Mobile terminal and method for controlling the same |
GB201501079D0 (en) * | 2015-01-22 | 2015-03-11 | Microsoft Technology Licensing Llc | Controlling access to content |
KR101624454B1 (en) * | 2015-01-22 | 2016-05-25 | 서용창 | Method for providing message service based hologram image, user device, and display for hologram image |
US9794264B2 (en) * | 2015-01-26 | 2017-10-17 | CodePix Inc. | Privacy controlled network media sharing |
KR101620050B1 (en) * | 2015-03-03 | 2016-05-12 | 주식회사 카카오 | Display method of scenario emoticon using instant message service and user device therefor |
WO2016144385A1 (en) * | 2015-03-08 | 2016-09-15 | Apple Inc. | Sharing user-configurable graphical constructs |
JP2018514020A (en) * | 2015-04-07 | 2018-05-31 | インテル コーポレイション | Avatar keyboard |
US20160306438A1 (en) * | 2015-04-14 | 2016-10-20 | Logitech Europe S.A. | Physical and virtual input device integration |
CN105119812B (en) * | 2015-08-26 | 2018-05-18 | 小米科技有限责任公司 | In the method, apparatus and terminal device of chat interface change emoticon |
US10445425B2 (en) | 2015-09-15 | 2019-10-15 | Apple Inc. | Emoji and canned responses |
CN108353256A (en) * | 2015-10-08 | 2018-07-31 | 麦格尼菲克斯软件有限公司 | Method and system for emoticon and other graphical contents to be created and used in instant communicating system |
US20170131870A1 (en) | 2015-10-30 | 2017-05-11 | Loji, Llc | Interactive icons with embedded functionality used in text messages |
US11237717B2 (en) * | 2015-11-04 | 2022-02-01 | Sony Corporation | Information processing device and information processing method |
CA3009758A1 (en) | 2015-12-29 | 2017-07-06 | Mz Ip Holdings, Llc | Systems and methods for suggesting emoji |
US10719233B2 (en) * | 2016-01-18 | 2020-07-21 | Microsoft Technology Licensing, Llc | Arc keyboard layout |
US20170236001A1 (en) * | 2016-02-11 | 2017-08-17 | Daniel M. McLean | Device and method for transforming a facial image into a set of recognizable emoticons |
DK201670539A1 (en) * | 2016-03-14 | 2017-10-02 | Apple Inc | Dictation that allows editing |
US11494547B2 (en) | 2016-04-13 | 2022-11-08 | Microsoft Technology Licensing, Llc | Inputting images to electronic devices |
US20170308290A1 (en) | 2016-04-20 | 2017-10-26 | Google Inc. | Iconographic suggestions within a keyboard |
US20170308289A1 (en) | 2016-04-20 | 2017-10-26 | Google Inc. | Iconographic symbol search within a graphical keyboard |
US20170308293A1 (en) * | 2016-04-25 | 2017-10-26 | Kapps Media LLC | Systems and methods for dynamically updating virtual mobile keyboards |
US11112963B2 (en) | 2016-05-18 | 2021-09-07 | Apple Inc. | Devices, methods, and graphical user interfaces for messaging |
US20170353842A1 (en) | 2016-06-07 | 2017-12-07 | Nuance Communications, Inc. | Secure communications via a mobile keyboard application of a mobile device |
US10607386B2 (en) * | 2016-06-12 | 2020-03-31 | Apple Inc. | Customized avatars and associated framework |
US10855632B2 (en) * | 2016-07-19 | 2020-12-01 | Snap Inc. | Displaying customized electronic messaging graphics |
US20180024726A1 (en) * | 2016-07-21 | 2018-01-25 | Cives Consulting AS | Personified Emoji |
US10664157B2 (en) | 2016-08-03 | 2020-05-26 | Google Llc | Image search query predictions by a keyboard |
US10504260B2 (en) * | 2016-08-09 | 2019-12-10 | Pegge Vissicaro | Keyboard with in-line user created emojis |
US20180047200A1 (en) * | 2016-08-11 | 2018-02-15 | Jibjab Media Inc. | Combining user images and computer-generated illustrations to produce personalized animated digital avatars |
KR20180026983A (en) * | 2016-09-05 | 2018-03-14 | 삼성전자주식회사 | Electronic device and control method thereof |
US20180068475A1 (en) * | 2016-09-08 | 2018-03-08 | Tenor, Inc. | Dynamic ad hoc generation of customizable image-based files on computing device displays over interactive data networks |
CN117193618A (en) * | 2016-09-23 | 2023-12-08 | 苹果公司 | Head portrait creation and editing |
KR101791930B1 (en) * | 2016-09-23 | 2017-10-31 | (주)신성이노테크 | Character Input Apparatus |
US11171905B1 (en) * | 2016-10-17 | 2021-11-09 | Open Invention Network Llc | Request and delivery of additional data |
US10185701B2 (en) * | 2016-10-17 | 2019-01-22 | Microsoft Technology Licensing, Llc | Unsupported character code detection mechanism |
US20180136837A1 (en) * | 2016-11-17 | 2018-05-17 | Donald Butler Curchod | Advanced virtual keyboard |
US20180173692A1 (en) | 2016-12-19 | 2018-06-21 | Google Inc. | Iconographic symbol predictions for a conversation |
US20180227256A1 (en) * | 2017-02-09 | 2018-08-09 | Len Wilson | System, Method, and Apparatus for Electronic Messaging |
US10529115B2 (en) * | 2017-03-20 | 2020-01-07 | Google Llc | Generating cartoon images from photos |
US10298522B2 (en) | 2017-04-10 | 2019-05-21 | Amojee, Inc. | Messaging including custom characters with tags localized to language of user receiving message |
US20180300542A1 (en) * | 2017-04-18 | 2018-10-18 | Nuance Communications, Inc. | Drawing emojis for insertion into electronic text-based messages |
US20180329622A1 (en) | 2017-05-12 | 2018-11-15 | Apple Inc. | Portable Computing Input Devices and Methods |
DK179867B1 (en) | 2017-05-16 | 2019-08-06 | Apple Inc. | RECORDING AND SENDING EMOJI |
US10311144B2 (en) | 2017-05-16 | 2019-06-04 | Apple Inc. | Emoji word sense disambiguation |
US10540018B2 (en) | 2017-06-05 | 2020-01-21 | Facebook, Inc. | Systems and methods for multilingual emoji search |
US11265270B2 (en) * | 2017-07-07 | 2022-03-01 | Samchat, Inc. | Systems, methods and computer program products for providing enhanced chat services |
CN107566243B (en) * | 2017-07-11 | 2020-07-24 | 阿里巴巴集团控股有限公司 | Picture sending method and equipment based on instant messaging |
US20190056841A1 (en) * | 2017-08-18 | 2019-02-21 | Ante Diem, Inc. d/b/a SportsManias | Apparatus, method, and computer-readable storage medium for mobile keyboard content delivery |
KR101967998B1 (en) * | 2017-09-05 | 2019-04-11 | 주식회사 카카오 | Method for creating moving image based key input, and user device for performing the method |
US10515464B2 (en) * | 2017-09-07 | 2019-12-24 | Whatsapp Inc. | Dynamic color customization of standardized (emoji) image characters |
US10748322B1 (en) | 2017-10-13 | 2020-08-18 | Umojify, Inc. | Systems and methods for generating cartoon images from images |
US20190114037A1 (en) * | 2017-10-17 | 2019-04-18 | Blend Systems, Inc. | Systems and methods for distributing customized avatars responsive to events |
US10348659B1 (en) * | 2017-12-21 | 2019-07-09 | International Business Machines Corporation | Chat message processing |
US11334376B2 (en) | 2018-02-13 | 2022-05-17 | Samsung Electronics Co., Ltd. | Emotion-aw are reactive interface |
US10812430B2 (en) | 2018-02-22 | 2020-10-20 | Mercury Universe, LLC | Method and system for creating a mercemoji |
KR102543656B1 (en) * | 2018-03-16 | 2023-06-15 | 삼성전자주식회사 | Screen controlling method and electronic device supporting the same |
US10706271B2 (en) | 2018-04-04 | 2020-07-07 | Thomas Floyd BRYANT, III | Photographic emoji communications systems and methods of use |
US20190334845A1 (en) * | 2018-04-25 | 2019-10-31 | Slack Technologies, Inc. | Messaging interface configured to a render graphical sentiment and progression indicator |
EP3783462B1 (en) * | 2018-05-10 | 2022-12-07 | Honor Device Co., Ltd. | Method for displaying virtual keyboard of input method, and terminal |
US10269164B1 (en) * | 2018-05-30 | 2019-04-23 | Whatsapp Inc. | Creating custom stickers for use on a messaging system |
US11089147B2 (en) * | 2018-06-29 | 2021-08-10 | Google Llc | Systems, devices, and methods for generating messages |
CN109271223A (en) * | 2018-09-05 | 2019-01-25 | Oppo广东移动通信有限公司 | Windows switching method, device, terminal and computer readable storage medium |
WO2020048495A1 (en) * | 2018-09-06 | 2020-03-12 | 上海伴我科技有限公司 | Resource configuration method, user interface navigation method, electronic device, and storage medium |
US10922449B2 (en) * | 2018-11-21 | 2021-02-16 | Best Apps, Llc | Computer aided systems and methods for creating custom products |
JP6636604B2 (en) | 2018-12-12 | 2020-01-29 | 株式会社コロプラ | Emotion text display program, method and system |
JP7271157B2 (en) * | 2018-12-13 | 2023-05-11 | シャープ株式会社 | DISPLAY DEVICE, PROGRAM AND DISPLAY METHOD OF DISPLAY DEVICE |
IT201900000457A1 (en) * | 2019-01-11 | 2020-07-11 | Social Media Emotions S R L | IMPROVED MESSAGE SYSTEM |
US10818050B2 (en) * | 2019-02-08 | 2020-10-27 | Adobe Inc. | Vector graphic font character generation techniques |
KR102639725B1 (en) * | 2019-02-18 | 2024-02-23 | 삼성전자주식회사 | Electronic device for providing animated image and method thereof |
KR102667064B1 (en) * | 2019-02-19 | 2024-05-20 | 삼성전자 주식회사 | Electronic device and method for providing user interface for editing of emoji in conjunction with camera function thereof |
US20200301566A1 (en) | 2019-03-22 | 2020-09-24 | Microsoft Technology Licensing, Llc | Environmental context based emoji selection in computing devices |
US11611714B2 (en) * | 2019-08-01 | 2023-03-21 | Meta Platforms, Inc. | Generating customized, personalized reactions to social media content |
US11281742B2 (en) * | 2019-08-08 | 2022-03-22 | Adobe Inc. | Interactive and selective coloring of digital vector glyphs |
JP7287179B2 (en) * | 2019-08-19 | 2023-06-06 | ブラザー工業株式会社 | program |
US11042261B2 (en) * | 2019-10-25 | 2021-06-22 | Facebook, Inc. | Generating content to be shared between users |
US11209964B1 (en) | 2020-06-05 | 2021-12-28 | SlackTechnologies, LLC | System and method for reacting to messages |
US11537279B2 (en) * | 2020-06-09 | 2022-12-27 | Talent Unlimited Online Services Private Limited | System and method for enhancing an expression of a digital pictorial image |
US11609640B2 (en) | 2020-06-21 | 2023-03-21 | Apple Inc. | Emoji user interfaces |
US11290408B2 (en) | 2020-08-28 | 2022-03-29 | Slack Technologies, Llc | Rendering custom emojis in cross-organization communications |
-
2020
- 2020-09-14 US US17/020,514 patent/US11868592B2/en active Active
- 2020-09-14 JP JP2022519025A patent/JP7349566B2/en active Active
- 2020-09-14 CN CN202080067159.9A patent/CN114514497B/en active Active
- 2020-09-14 KR KR1020227009281A patent/KR102734876B1/en active Active
- 2020-09-14 CN CN202410877933.2A patent/CN118605781A/en active Pending
- 2020-09-14 KR KR1020247038878A patent/KR20240170585A/en active Pending
- 2020-09-14 EP EP20780866.8A patent/EP4034980A1/en active Pending
- 2020-09-14 WO PCT/US2020/050755 patent/WO2021061435A1/en active Application Filing
- 2020-09-14 AU AU2020356289A patent/AU2020356289B2/en active Active
-
2023
- 2023-09-11 JP JP2023147066A patent/JP7642750B2/en active Active
- 2023-11-15 US US18/510,542 patent/US20240086047A1/en active Pending
- 2023-11-20 AU AU2023270188A patent/AU2023270188A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170083174A1 (en) * | 2015-09-21 | 2017-03-23 | Microsoft Technology Licensing, Llc | Facilitating Selection of Attribute Values for Graphical Elements |
Also Published As
Publication number | Publication date |
---|---|
AU2020356289B2 (en) | 2023-08-31 |
JP2023175770A (en) | 2023-12-12 |
CN114514497A (en) | 2022-05-17 |
CN118605781A (en) | 2024-09-06 |
JP7349566B2 (en) | 2023-09-22 |
JP7642750B2 (en) | 2025-03-10 |
WO2021061435A1 (en) | 2021-04-01 |
AU2020356289A1 (en) | 2022-04-07 |
US20210096729A1 (en) | 2021-04-01 |
JP2022550732A (en) | 2022-12-05 |
CN114514497B (en) | 2024-07-19 |
KR20220050187A (en) | 2022-04-22 |
US11868592B2 (en) | 2024-01-09 |
US20240086047A1 (en) | 2024-03-14 |
AU2023270188A1 (en) | 2023-12-14 |
KR20240170585A (en) | 2024-12-03 |
EP4034980A1 (en) | 2022-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102734876B1 (en) | User interfaces for customizing graphic objects | |
KR102386734B1 (en) | Access to system user interfaces on the electronic device | |
US12112024B2 (en) | User interfaces for managing media styles | |
US20210349612A1 (en) | Editing features of an avatar | |
US11888796B2 (en) | User interfaces for messaging conversations | |
US11609640B2 (en) | Emoji user interfaces | |
US12200161B2 (en) | User interfaces for presenting indications of incoming calls | |
CN115698933A (en) | User interface for transitioning between selection modes | |
US20230393719A1 (en) | Sticker creation for messaging | |
US20230376266A1 (en) | User interfaces for detecting objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0105 | International application |
Patent event date: 20220321 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20220321 Comment text: Request for Examination of Application |
|
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20240325 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20240821 |
|
PG1601 | Publication of registration |