従来の方法に従って表示されるアフォーダンスは、視覚的に混乱することが多く、ユーザインターフェースを乱雑にし得る。加えて、アフォーダンスの外観は固定されていることが多く、下地コンテンツに生じる変化、又は下地ユーザインターフェースの動作モードの変化には適応していない。以下の実施形態は、下地コンテンツの変化に基づいてアフォーダンスの外観を表示し変化させる方法を開示しており、下地コンテンツのディスプレイ特性の反転が、アフォーダンスの同じディスプレイ特性の値を決定するための基礎を提供する。更に、アフォーダンス用のディスプレイ特性の値範囲は下地コンテンツ用のディスプレイ特性の値範囲のサブレンジに制約されている。例えば、アフォーダンスのルミナンスの異なる値範囲が、異なる全体的なルミナンスレベル(例えば、ダーク背景とライト背景)の背景用に選択される異なるアフォーダンス外観タイプ(例えば、暗アフォーダンス外観タイプと明アフォーダンス外観タイプ)に与えられる。これにより、過度にユーザの注意をそらすことなく、変化する背景に対してアフォーダンスの視認性が促進される。いくつかの実施形態では、アフォーダンスが表示されるユーザインターフェースの動作モードに依存して、ルールの異なるセットに応じてアフォーダンスの外観は背景の外観と共に変化し、それにより、アフォーダンスの動作コンテキストが変化したときに、アフォーダンスの視認性を維持する必要性と、アフォーダンスによって過度に注意がそらされることを低減する必要性との間のバランスを調整する方法が提供される。いくつかの実施形態では、瞬間的な変化及び時間にわたる累積的な変化を含む下地コンテンツの外観の変化に応じて、アフォーダンスの外観とアフォーダンス外観タイプの両方が変化する。
以下にて、図1A~図1B、図2、及び図3は、デバイス例の説明を提供する。図4A~図4B、図5A~図5D、図5G~図5P、図5S~図5AA、図5ADは、いくつかの実施形態に係る、下地コンテンツの外観の変化に応じてその外観を変化させるアフォーダンスを有するユーザインターフェースの例である。図5E、図5Q、図5R、図5AB、図5AC、及び図5AE~図5AKは、いくつかの実施形態に係る、図5A~図5D、図5G-図5P、図5S~図5AA、及び図5ADに示すアフォーダンスを生成する際に使用される、アフォーダンスの外観と下地外観の値範囲の違いを示す。図6A~図6C、図7A~図7E、及び図8A~図8Fは、いくつかの実施形態に係る、アフォーダンスの外観を表示し調整する方法のフロー図である。図4A~図4B、図5A~図5AKに示すユーザインターフェース、アフォーダンス外観、及び値範囲を使用して、図6A~図6C、図7A~図7E、図8A~図8Fのプロセスを示している。
例示的なデバイス
ここで、添付図面に実施例が示される実施形態を詳細に参照する。以下の詳細な説明では、説明される様々な実施形態の完全な理解を提供するために数多くの具体的な詳細が記載されている。しかし、説明されている様々な実施形態は、これらの具体的な詳細がなくとも実施し得ることが、当業者には明らかであろう。他の例においては、周知の方法、手順、構成要素、回路、及びネットワークは、実施形態の態様を不必要に不明瞭なものとしないよう、詳細には説明されていない。
本明細書では、第1、第2などの用語は、場合によっては、様々な要素を説明するために使用されるが、これらの要素は、それらの用語によって限定されるべきではないことも理解されるであろう。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、説明されている様々な実施形態の範囲から逸脱することなく、第1の接触は、第2の接触と称することができ、同様に、第2の接触は、第1の接触と称し得る。第1の接触及び第2の接触は両方接触であるが、文脈がそうではないことを明確に示さない限り、それらは同じ接触ではない。
本明細書で説明される様々な実施形態の説明で使用される用語は、特定の実施形態を説明することのみを目的とするものであって、限定することを意図するものではない。説明される様々な実施形態の説明及び添付の特許請求の範囲で使用する場合、単数形「a」、「an」、及び「the」は、文脈がそうではないことを明確に示さない限り、複数形もまた含むことが意図される。本明細書で使用する場合、用語「and/or(及び/又は)」は、関連する列挙された項目のうちの1つ以上の任意の全ての可能な組合せを指し、かつこれを含むことをもまた理解されたい。用語「includes(含む)」、「including(含む)」、「comprises(含む、備える)」、及び/又は「comprising(含む、備える)」は、本明細書で使用する場合、述べられた特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び/若しくはそれらのグループの存在又は追加を除外しないことが更に理解されるであろう。
本明細書で使用する場合、用語「if(~の場合には)」は、任意選択的に、文脈に応じて「when(~のとき)」、「upon(~すると)」、「in response to determining(~との判定に応答して)」、又は「in response to detecting(~の検出に応答して)」を意味するものと解釈される。同様に、語句「if it is determined(~と判定される場合)」又は「if(a stated condition or event)is detected((述べられる条件又はイベント)が検出される場合)」は、任意選択的に、文脈に依存して「upon determining(~と判定すると)」、「in response to determining(~と判定したことに応答して)」、「upon detecting(the stated condition or event)((述べられる条件又はイベント)を検出すると)」、又は「in response to detecting(the stated condition or event)((述べられる条件又はイベント)を検出したことに応答して)」を意味するものと解釈される。
電子デバイス、そのようなデバイス用のユーザインターフェース、及びそのようなデバイスを使用するための関連するプロセスの実施形態が説明される。いくつかの実施形態では、デバイスは、PDA機能及び/又は音楽プレーヤ機能などの他の機能をも含む、モバイル電話機などのポータブル通信デバイスである。ポータブル多機能デバイスの例示的な実施形態は、Cupertino、CaliforniaのApple Inc.からのiPhone(登録商標)、iPod Touch(登録商標)、及びiPad(登録商標)デバイスを含むが、これらに限定されない。タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を有するラップトップ又はタブレットコンピュータなどの他のポータブル電子デバイスが任意選択的に使用される。また、いくつかの実施形態では、デバイスはポータブル通信デバイスではなく、タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を有するデスクトップコンピュータであることも理解されたい。
以下の議論では、ディスプレイ及びタッチ感知面を含む電子デバイスが説明される。しかし、電子デバイスは任意選択的に、物理キーボード、マウス、及び/又はジョイスティックなどの、1つ以上の他の物理ユーザインターフェースデバイスを含むことを理解されたい。
デバイスは、典型的には、メモ取りアプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、ビデオ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽プレーヤアプリケーション及び/又はデジタルビデオプレーヤアプリケーションのうちの1つ以上などの様々なアプリケーションをサポートする。
本デバイス上で実行される様々なアプリケーションは、タッチ感知面などの、少なくとも1つの共通の物理ユーザインターフェースデバイスを、任意選択的に使用する。タッチ感知面の1つ以上の機能、並びにデバイス上に表示される対応する情報は、アプリケーションごとに、及び/又はそれぞれのアプリケーション内で、任意選択的に、調節及び/又は変更される。このように、デバイスの共通の(タッチ感知面などの)物理アーキテクチャは、ユーザにとって直観的かつ透過的なユーザインターフェースを有する様々なアプリケーションを、任意選択的にサポートする。
ここで、タッチ感知ディスプレイを有するポータブルデバイスの実施形態に注意を向ける。図1Aは、いくつかの実施形態に係る、タッチ感知ディスプレイシステム112を備えるポータブル多機能デバイス100を示すブロック図である。タッチ感知ディスプレイシステム112は、便宜上「タッチスクリーン」と呼ばれる場合があり、単にタッチ感知ディスプレイと呼ばれる場合もある。デバイス100は、メモリ102(任意選択的に、1つ以上のコンピュータ可読記憶媒体を含む)、メモリコントローラ122、1つ以上の処理ユニット(CPU)120、周辺機器インターフェース118、RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、入出力(I/O)サブシステム106、他の入力又は制御デバイス116、及び外部ポート124を含む。デバイス100は、1つ以上の光センサ164を任意選択的に含む。デバイス100は任意選択的に、デバイス100(例えば、デバイス100のタッチ感知ディスプレイシステム112などのタッチ感知面)上の接触の強度を検出するための1つ以上の強度センサ165を含む。デバイス100は、デバイス100上で触知出力を生成する(例えば、デバイス100のタッチ感知ディスプレイシステム112又はデバイス300のタッチパッド355などのタッチ感知面上で触知出力を生成する)ための1つ以上の触知出力生成器167を、任意選択的に含む。これらの構成要素は、任意選択的に、1つ以上の通信バス又は信号ライン103を介して通信する。
本明細書及び特許請求の範囲で使用されるとき、用語「触知出力」は、ユーザのタッチでユーザによって検出されることになる、デバイスの従前の位置に対するデバイスの物理的変位、デバイスの構成要素(例えば、タッチ感知面)の、デバイスの別の構成要素(例えば、筐体)に対する物理的変位、又はデバイスの質量中心に対する構成要素の変位を指す。例えば、デバイス又はデバイスの構成要素が、タッチに敏感なユーザの表面(例えば、ユーザの指、手のひら、又は手の他の部分)に接触している状況において、物理的変位によって生成された触知出力は、デバイス又はデバイスの構成要素の物理的特性の認識された変化に対応する触感として、ユーザによって解釈される。例えば、タッチ感知面(例えば、タッチ感知ディスプレイ又はトラックパッド)の移動は、ユーザによって、物理アクチュエータボタンの「ダウンクリック」又は「アップクリック」として任意選択的に解釈される。場合によっては、ユーザの動作により物理的に押された(例えば、変位された)タッチ感知面に関連付けられた物理アクチュエータボタンの移動がないときであっても、ユーザは「ダウンクリック」又は「アップクリック」などの触感を感じる。別の実施例として、タッチ感知面の移動は、任意選択的に、タッチ感知面の平滑度に変化がないときでさえ、ユーザによって、タッチ感知面の「粗さ」として解釈又は感知される。そのようなユーザによるタッチの解釈は、ユーザの個人的な感覚認知に左右されるが、大多数のユーザに共通する、多くのタッチの感覚認知が存在する。よって、触知出力が、ユーザの特定の感覚認知(例えば、「アップクリック」、「ダウンクリック」、「粗さ」)に対応するものとして説明されるとき、別途記載のない限り、生成された触知出力は、典型的な(又は、平均的な)ユーザの説明された感覚認知を生成するデバイス、又はデバイスの構成要素の物理的変位に対応する。触覚フィードバックをユーザに提供するために触知出力を使用することは、デバイスの操作性を高め、ユーザデバイスインターフェースをより効率的にし(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)、加えて、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることによってデバイスの電力使用を削減し、バッテリ寿命を改善する。
いくつかの実施形態では、触知出力パターンは、触知出力の振幅、触知出力の移動波形の形状、触知出力の周波数、及び/又は触知出力の期間などの触知出力の特性を指定する。
異なる触知出力パターンを有する触知出力がデバイスによって生成されるとき(例えば、触知出力を生成するために可動質量を移動させる1つ以上の触知出力生成器を介して)、触知出力は、デバイスを保持又はタッチしているユーザに異なる触覚感覚を引き起こし得る。ユーザの感覚がユーザの触知出力の知覚に基づいている間、ほとんどのユーザは、デバイスによって生成された波形、周波数、及び振幅における変化を識別することが可能である。よって、ユーザに異なる操作が実行されたことを示すために波形、周波数及び振幅を調節することができる。そのようにして、所与の環境(例えば、グラフィカルな特徴及びオブジェクトを含むユーザインターフェース、仮想境界及び仮想オブジェクトを有するシミュレートされた物理環境、物理境界及び物理オブジェクトを有する実の物理環境、並びに/又は上記のいずれかの組合せ)におけるオブジェクトの特性(例えば、サイズ、材質、重量、剛性、平滑度、等)、振る舞い(例えば、振動、変位、加速、回転、拡大など)、及び/若しくは、相互作用(例えば、衝突、付着、反発、吸引、摩擦など)をシミュレートするように設計、選択、並びに/又は立案された触知出力パターンを有する触知出力は、状況次第では、デバイスのユーザの操作の、入力誤りを削減し効率を増大させる、有益なフィードバックをユーザに提供する。加えて、触知出力は任意選択的に、入力閾値又はオブジェクトの選択などのシミュレートされた物理特性に関連しないフィードバックに対応するように生成される。そのような触知出力は、状況次第では、デバイスのユーザの操作の入力誤りを削減し、効率性を増大させる有益なフィードバックをユーザに提供する。
いくつかの実施形態では、適切な触知出力パターンを有する触知出力は、ユーザインターフェース内又はデバイス内のシーンの背後で対象となるイベントの発生へのキューとしての役割を果たす。対象となるイベントの例は、デバイス上又はユーザインターフェース内で提供されるアフォーダンス(例えば、実ボタン、仮想ボタン、又はトグルスイッチ)のアクティブ化、要求された操作の成功又は失敗、ユーザインターフェース内の境界に到達すること又は超えること、新たな状態に入ること、オブジェクト間の入力の焦点を切り替えること、新たなモードのアクティブ化、入力閾値に到達すること又は超えること、入力又はジェスチャのタイプの検出又は認識などを含む。いくつかの実施形態では、触知出力は、リダイレクション又は中断入力が時宜を得て検出されない限り発生する、近いうち起こるイベント又は結果に対する警告又はアラートしての役割を果たすように提供される。触知出力はまた、他のコンテキストでは、ユーザ経験を強化し、視覚若しくは運動困難なユーザへのデバイスのアクセシビリティ若しくは他のアクセシビリティの必要性を改善し、並びに/又はユーザインターフェース及び/若しくはデバイスの効率性及び機能性を改善するために使用される。触知出力は任意選択的に、音声出力及び/又は視認可能なユーザインターフェースの変更を伴い、それは、ユーザがユーザインターフェース及び/又はデバイスと対話するときのユーザの経験を更に高め、ユーザインターフェース及び/又はデバイスの状態に関する情報の伝達をより促進し、並びにデバイスのユーザの操作の入力誤りを削減し、効率性を増大させる。
デバイス100は、ポータブル多機能デバイスの一実施例に過ぎず、デバイス100は、示されているものよりも多くの構成要素又は少ない構成要素を任意選択的に有し、2つ以上の構成要素を任意選択的に組み合わせて、又は構成要素の異なる構成若しくは配置を任意選択的に有することを理解されたい。図1Aに示す様々な構成要素は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せで実装される。
メモリ102は、高速ランダムアクセスメモリを任意選択的に含み、1つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス又は他の不揮発性ソリッドステートメモリデバイスなどの不揮発性メモリもまた任意選択的に含む。CPU(単数又は複数)120及び周辺機器インターフェース118などの、デバイス100の他の構成要素によるメモリ102へのアクセスは、任意選択的に、メモリコントローラ122により制御される。
周辺機器インターフェース118は、デバイスの入力及び出力周辺機器を、CPU(単数又は複数)120及びメモリ102と接続するために使用され得る。1つ以上のプロセッサ120は、デバイス100のための様々な機能を実行しデータを処理するために、メモリ102に記憶された様々なソフトウェアプログラム及び/又は命令セットを動作させ、又は実行する。
いくつかの実施形態では、周辺機器インターフェース118、CPU(単数又は複数)120、及びメモリコントローラ122は任意選択的に、チップ104などの単一のチップ上に実装される。いくつかの他の実施形態では、それらは別々のチップ上に任意選択的に実装される。
RF(radio frequency)(無線周波数)回路108は、電磁信号とも呼ばれるRF信号を送受信する。RF回路108は、電気信号を電磁信号に、又は電磁信号を電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。RF回路108は、任意選択的に、アンテナシステム、RF送受信機、1つ以上の増幅器、同調器、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュール(SIM)カード、及びメモリなどを含むがこれらに限定されない、それらの機能を実行するための周知の回路を含む。RF回路108は任意選択的に、ワールドワイドウェブ(WWW)とも称されるインターネット、イントラネット、並びに/又はセルラ電話ネットワーク、無線ローカルエリアネットワーク(LAN)及び/若しくはメトロポリタンエリアネットワーク(MAN)などの無線ネットワークなどのネットワークと、他のデバイスと、無線通信によって通信する。無線通信は任意選択的に、移動通信のためのグローバルシステム(GSM(登録商標))、拡張データGSM環境(EDGE)、高速ダウンリンクパケット接続(HSDPA)、高速アップリンクパケット接続(HSUPA)、Evolution,Data-Only(EV-DO)、HSPA、HSPA+、デュアルセルHSPA(DC-HSPA)、ロングタームエボリューション(LTE)、近距離無線通信(NFC)、広帯域符号分割多元接続(W-CDMA)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、Bluetooth(登録商標)、Wireless Fidelity(Wi-Fi)(登録商標)(例えば、IEEE 802.11a、IEEE 802.11ac、IEEE 802.11ax、IEEE 802.11b、IEEE 802.11g、及び/若しくはIEEE 802.11n)、ボイスオーバーインターネットプロトコル(VoIP)、Wi-MAX、電子メールのためのプロトコル(例えば、インターネットメッセージアクセスプロトコル(IMAP)及び/若しくはポストオフィスプロトコル(POP))、インスタントメッセージング(例えば、拡張可能メッセージング及びプレゼンスプロトコル(XMPP)、インスタントメッセージング及びプレゼンス利用拡張向けセッション開始プロトコル(SIMPLE)、インスタントメッセージング及びプレゼンスサービス(IMPS))、並びに/又はショートメッセージサービス(SMS)、あるいは本文書の出願日現在までにまだ開発されていない通信プロトコルを含む任意の他の適切な通信プロトコルを含むが、それらに限定されない、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを使用する。
オーディオ回路110、スピーカ111、及びマイクロフォン113は、ユーザとデバイス100との間のオーディオインターフェースを提供する。オーディオ回路110は、周辺機器インターフェース118からオーディオデータを受信し、そのオーディオデータを電気信号に変換し、その電気信号をスピーカ111に送信する。スピーカ111は、電気信号を人間の可聴音波に変換する。オーディオ回路110はまた、マイクロフォン113により音波から変換された電気信号を受信する。オーディオ回路110は、電気信号をオーディオデータに変換し、そのオーディオデータを処理のために周辺機器インターフェース118に送信する。オーディオデータは任意選択的に、周辺機器インターフェース118によって、メモリ102及び/若しくはRF回路108から取得され、並びに/又はメモリ102及び/若しくはRF回路108へ送信される。いくつかの実施形態では、音声回路110はまた、ヘッドセットジャック(例えば、212、図2)を含む。ヘッドセットジャックは、オーディオ回路110と、出力専用ヘッドホン又は出力(例えば、片耳又は両耳用のヘッドホン)及び入力(例えば、マイクロフォン)の双方を有するヘッドセットなどの取り外し可能なオーディオ入出力周辺機器との間のインターフェースを提供する。
I/Oサブシステム106は、タッチ感知ディスプレイシステム112、及び他の入力又は制御デバイス116などのデバイス100上の入出力周辺機器を周辺機器インターフェース118と接続する。I/Oサブシステム106は、任意選択的に、ディスプレイコントローラ156、光センサコントローラ158、強度センサコントローラ159、触覚フィードバックコントローラ161、及び他の入力又は制御デバイスのための1つ以上の入力コントローラ160を含む。1つ以上の入力コントローラ160は、その他の入力又は制御デバイス116から電気信号を受信し、それらへ電気信号を送信する。他の入力又は制御デバイス116は任意選択的に、物理ボタン(例えば、プッシュボタン、ロッカボタンなど)、ダイアル、スライダスイッチ、ジョイスティック、クリックホイールなどを含む。いくつかの代替的実施形態では、入力コントローラ(単数又は複数)160は任意選択的に、キーボード、赤外線ポート、USBポート、スタイラス、及び/又はマウスなどのポインタデバイスのうちのいずれかと結合される(又は、いずれにも結合されない)。1つ以上のボタン(例えば、208、図2)は任意選択的に、スピーカ111及び/又はマイクロフォン113のボリューム制御のためのアップ/ダウンボタンを含む。1つ以上のボタンは任意選択的に、プッシュボタン(例えば、206、図2)を含む。
タッチ感知ディスプレイシステム112は、デバイスとユーザとの間の入力インターフェース及び出力インターフェースを提供する。ディスプレイコントローラ156は、タッチ感知ディスプレイシステム112から電気信号を受信し、及び/又はタッチ感知ディスプレイシステム112へ電気信号を送信する。タッチ感知ディスプレイシステム112は、ユーザに視覚出力を表示する。視覚出力は、グラフィック、テキスト、アイコン、ビデオ及びこれらの任意の組合せ(総称して「グラフィック」と称する)を任意選択的に含む。いくつかの実施形態では、視覚出力の一部又は全ては、ユーザインターフェースオブジェクトに対応する。ユーザ対話形式のグラフィカルユーザインターフェースオブジェクトの例は、ボタン、スライダ、アイコン、選択可能メニュー項目、スイッチ、ハイパーリンク、又はその他のユーザインターフェース制御を含むが、それらに限定されない。いくつかの実施形態では、視覚出力の一部又は全部は、ユーザインターフェース又は画面の様々な領域に関連付けられた、入力及び/又は動作の種類を示す視覚的な合図を提供する、インジケータ及び視覚ガイドに対応する。インジケータ及び視覚ガイドの例としては、矢印、バー、オーバーレイ、スポットライト、又は視覚的な合図をユーザに提供するように設計された他の視覚的に識別される領域若しくは形状、が制限なく含まれる。本明細書で使用する場合、用語「アフォーダンス」は、ユーザ対話型グラフィカルユーザインターフェースオブジェクト、並びに/又は背景(例えば、アプリケーションユーザインターフェース又はシステムユーザインターフェースの一部)上に表示されるインジケータ及び視覚的ガイドを指す。
タッチ感知ディスプレイシステム112は、触覚及び/又は触知の接触に基づくユーザからの入力を受けるタッチ感知面、センサ、又はセンサのセットを有する。タッチ感知ディスプレイシステム112及びディスプレイコントローラ156(メモリ102内の任意の関連するモジュール及び/又は命令セットと共に)は、タッチ感知ディスプレイシステム112上の接触(及び、接触の任意の移動又は中断)を検出し、検出された接触をタッチ感知ディスプレイシステム112上で表示されるユーザインターフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ、又は画像)との対話に変換する。いくつかの実施形態では、タッチ感知ディスプレイシステム112とユーザとの間の接触点は、ユーザの指又はスタイラスに対応する。
タッチ感知ディスプレイシステム112は任意選択的に、LCD(liquid crystal display)(液晶ディスプレイ)技術、LPD(light emitting polymer display)(発光ポリマーディスプレイ)技術、又はLED(light emitting diode)(発光ダイオード)技術を使用するが、他の実施形態では他のディスプレイ技術が使用される。タッチ感知ディスプレイシステム112及びディスプレイコントローラ156は任意選択的に、静電容量技術、抵抗性技術、赤外線技術、及び表面音響波技術、並びに、タッチ感知ディスプレイシステム112との1つ以上の接触点を判定するためのその他の近接センサアレイ又は他の要素を含むが、これらに限定されない、現在既知の又は後に開発される複数のタッチ感知技術のうちのいずれかを使用して、接触及びその任意の移動又は中断を検出する。いくつかの実施形態では、Cupertino、CaliforniaのApple Inc.からのiPhone、iPod Touch、及びiPadなどにおいて見られるような、投影型相互キャパシタンス検知技術が使用される。
タッチ感知ディスプレイシステム112は任意選択的に、100dpiを超えるビデオ解像度を有する。いくつかの実施形態では、タッチスクリーンのビデオ解像度は、400dpiを超える(例えば、500dpi、800dpi、又はそれより高い)。ユーザは任意選択的に、スタイラス、指などの任意の適切な物体又は付属物を使用して、タッチ感知ディスプレイシステム112と接触する。いくつかの実施形態では、ユーザインターフェースは、指に基づく接触及びジェスチャで機能するように設計されるが、これらは、指の接触がタッチスクリーン上での面積がより広いことに起因して、スタイラスに基づく入力よりも精度が低い場合がある。いくつかの実施形態では、デバイスは、指に基づく粗い入力を正確なポインタ/カーソル位置又はユーザの望むアクションを実行するためのコマンドに変換する。
いくつかの実施形態では、タッチスクリーンに加えて、デバイス100は任意選択的に、特定の機能をアクティブ化又は非アクティブ化するためのタッチパッド(図示せず)を含む。いくつかの実施形態では、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、デバイスのタッチ感知エリアである。タッチパッドは、任意選択的に、タッチ感知ディスプレイシステム112と分離したタッチ感知面、又はタッチスクリーンによって形成されたタッチ感知面の延長である。
デバイス100はまた、様々な構成要素に電力を供給するための電力システム162を含む。電力システム162は任意選択的に、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC))、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ(例えば、発光ダイオード(LED))、並びにポータブルデバイス内での電力の生成、管理、及び分配と関連付けられた任意の他の構成要素を含む。
デバイス100はまた任意選択的に、1つ以上の光センサ164を含む。図1Aは、I/Oサブシステム106内の光センサコントローラ158と結合された光センサを示す。光センサ(単数又は複数)164は任意選択的に、電荷結合デバイス(CCD)又は相補型金属酸化膜半導体(CMOS)フォトトランジスタを含む。光センサ(単数又は複数)164は、1つ以上のレンズを通じて投影された、環境からの光を受光し、画像を表すデータに光を変換する。撮像モジュール143(カメラモジュールとも呼ばれる)と連携して、光センサ(単数又は複数)164は任意選択的に、静止画像及び/又はビデオをキャプチャする。いくつかの実施形態では、タッチスクリーンを静止画像及び/又はビデオ画像取得のためのビューファインダとして使用することができるように、光センサは、デバイスの前面上のタッチ感知ディスプレイシステム112の反対である、デバイス100の背面上に位置する。いくつかの実施形態では、ユーザの画像が取得されるように(例えば、自撮りのため、ユーザがタッチスクリーン上でその他のビデオ会議参加者を見ている間のビデオ会議のためなど)、別の光センサがデバイスの前面上に位置する。
デバイス100はまた、任意選択的に、1つ以上の接触強度センサ165を含む。図1Aは、I/Oサブシステム106内の強度センサコントローラ159と接続された接触強度センサを示す。接触強度センサ(単数又は複数)165は、1つ以上のピエゾ抵抗ひずみゲージ、電気容量式力センサ、電気力センサ、圧電力センサ、光学力センサ、容量式タッチ感知面、又は他の強度センサ(例えば、タッチ感知面上の接触の力(又は圧力)を測定するために使用されるセンサ)を任意選択的に含む。接触強度センサ(単数又は複数)165は、環境から接触強度情報(例えば、圧力情報又は圧力情報のためのプロキシ)を受信する。いくつかの実施形態では、少なくとも1つの接触強度センサが、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)に配置されているか、又は、それに近接している。いくつかの実施形態では、少なくとも1つの接触強度センサが、デバイス100の前面に位置するタッチスクリーンディスプレイシステム112の反対側である、デバイス100の背面に配置されている。
デバイス100はまた、1つ以上の近接センサ166を任意選択的に含む。図1Aは、周辺機器インターフェース118と接続された近接センサ166を示す。代わりに、近接センサ166は、I/Oサブシステム106内の入力コントローラ160と結合される。いくつかの実施形態では、多機能デバイスがユーザの耳の近くに配置されるとき(例えば、ユーザが電話通話を行っているとき)、近接センサは、タッチ感知ディスプレイシステム112をターンオフ及び無効にする。
デバイス100はまた、任意選択的に、1つ以上の触知出力生成器167を含む。図1Aは、I/Oサブシステム106内の触覚フィードバックコントローラ161と接続された触知出力生成器を示す。いくつかの実施形態では、触知出力生成器(単数又は複数)167は、スピーカ若しくは他の音声構成要素などの1つ以上の電気音響デバイス、及び/又はモータ、ソレノイド、電気活性ポリマー、圧電アクチュエータ、静電アクチュエータ、若しくは他の触知出力生成構成要素(例えば、デバイス上で電気信号を触知出力に変換する構成要素)など、エネルギーを線形の動きに変換する電気機械デバイスを含む。触知出力生成器(単数又は複数)167は、触覚フィードバックモジュール133から触知フィードバック生成命令を受信し、デバイス100のユーザによって感知することが可能な触知出力をデバイス100上で生成する。いくつかの実施形態では、少なくとも1つの触知出力生成器は、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)に配置されているか、又はそれに近接しており、任意選択的に、タッチ感知面を垂直方向(例えば、デバイス100の表面の内/外)に、又は水平方向(例えば、デバイス100の表面と同じ平面内の前後)に動かすことによって、触知出力を生成する。いくつかの実施形態では、少なくとも1つの触知出力生成器センサは、デバイス100の前面に位置するタッチ感知ディスプレイシステム112の反対側である、デバイス100の背面に位置する。
デバイス100はまた、1つ以上の加速度計168を任意選択的に含む。図1Aは、周辺機器インターフェース118と接続された加速度計168を示す。代わりに、加速度計168は任意選択的に、I/Oサブシステム106内の入力コントローラ160と結合される。いくつかの実施形態では、情報は、1つ以上の加速度計から受信されたデータの分析に基づいて、縦長表示又は横長表示内でタッチスクリーンディスプレイ上で表示される。デバイス100は任意選択的に、加速度計(単数又は複数)168に加えて、磁気計(図示せず)並びにデバイス100の位置及び向き(例えば、縦長の向き又は横長の向き)に関する情報を取得するためのGPS(又はGLONASS又は他のグローバルナビゲーションシステム)受信機(図示せず)を含む。
いくつかの実施形態では、メモリ102に記憶されたソフトウェア構成要素は、オペレーティングシステム126、通信モジュール(又は、命令セット)128、接触/動きモジュール(又は、命令セット)130、グラフィックモジュール(又は、命令セット)132、触覚フィードバックモジュール(又は、命令セット)133、テキスト入力モジュール(又は、命令セット)134、全地球測位システム(Global Positioning System)(GPS)モジュール(又は、命令セット)135、及びアプリケーション(又は、命令セット)136を含む。更に、いくつかの実施形態では、図1A及び図3に示されるように、メモリ102は、デバイス/グローバル内部状態157を記憶する。デバイス/グローバル内部状態157は、現在アクティブであるアプリケーションがある場合、どのアプリケーションがアクティブであるかを示すアクティブアプリケーション状態、どのアプリケーション、ビュー、又は他の情報がタッチ感知ディスプレイシステム112の様々な領域を占有しているかを示す表示状態、デバイスの様々なセンサ、及び他の入力又は制御デバイス116から取得される情報を含むセンサ状態、並びにデバイスの位置及び/又は姿勢に関する位置情報及び/又は姿勢情報、のうちの1つ以上を含む。
オペレーティングシステム126(例えば、iOS、Darwin、RTXC、LINUX、UNIX(登録商標)、OS X、WINDOWS(登録商標)、又はVxWorksなどの組み込みオペレーティングシステム)は、全体的なシステムタスク(例えば、メモリ管理、記憶デバイス制御、電力管理など)を制御及び管理するための様々なソフトウェア構成要素及び/又はドライバを含み、様々なハードウェア構成要素とソフトウェア構成要素との間の通信を促進する。
通信モジュール128は、1つ以上の外部ポート124を介して他のデバイスとの通信を容易にし、RF回路108及び/又は外部ポート124が受信したデータを処理するための様々なソフトウェア構成要素をも含む。外部ポート124(例えば、ユニバーサルシリアルバス(Universal Serial Bus、USB)、FIREWIRE(登録商標)、等)は、直接的に、又はネットワーク(例えば、インターネット、無線LANなど)を通して間接的に、他のデバイスに連結するように適応している。いくつかの実施形態では、外部ポートは、Cupertino、CaliforniaのApple Inc.からのいくつかのiPhone、iPod Touch、及びiPadのデバイス内で使用される30ピンコネクタと同一の、又はこれに類似した及び/若しくは互換性のあるマルチピン(例えば、30ピン)コネクタである。いくつかの実施形態では、外部ポートは、Cupertino、CaliforniaのApple Inc.からのいくつかのiPhone、iPod Touch、及びiPadデバイス内で使用されるLightningコネクタと同一の、又はこれに類似した及び/若しくは互換性のあるLightningコネクタである。
接触/動きモジュール130は任意選択的に、タッチ感知ディスプレイシステム112との接触(ディスプレイコントローラ156と連携して)、及び他のタッチ感知デバイスとの接触(例えば、タッチパッド又は物理クリックホイール)を検出する。接触/動きモジュール130は、接触が発生したかを判定すること(例えば、指が下がるイベントを検出する)、接触の強度を判定すること(例えば、接触の力若しくは圧力、又は接触の力若しくは圧力に代替するもの)、接触の移動があるかを判定すること及びタッチ感知面を横切る移動を追跡すること(例えば、1つ以上の指のドラッグイベントを検出する)、及び接触が停止したかを判定すること(例えば、指が上がるイベント又は接触の中断を検出する)などの、接触の検出(例えば、指又はスタイラスによる)に関連する様々な動作を実行するためのソフトウェア構成要素を含む。接触/動きモジュール130は、タッチ感知面から接触データを受信する。一連の接触データにより表される接触点の移動を判定することは、任意選択的に、接触点の速さ(大きさ)、速度(大きさ及び方向)、並びに/又は加速度(大きさ及び/又は方向の変化)を判定することを含む。これらの動作は任意選択的に、単一の接触(例えば、1本の指の接触又はスタイラスの接触)又は複数の同時接触(例えば、「マルチタッチ」/複数の指の接触)に適用される。いくつかの実施形態では、接触/動きモジュール130及びディスプレイコントローラ156は、タッチパッド上の接触を検出する。
接触/動きモジュール130は任意選択的に、ユーザによるジェスチャ入力を検出する。タッチ感知面上の異なるジェスチャは、異なる接触パターン(例えば、検出される接触の異なる動き、タイミング、及び/又は強度)を有する。従って、ジェスチャは、任意選択的に、特定の接触パターンを検出することによって検出される。例えば、指のタップジェスチャを検出することは、指が下がるイベントを検出し、続いて指が下がるイベントと同一の位置(又は、実質的に同一の位置)において指が上がる(リフトオフ)イベントを検出する(例えば、アイコンの位置において)ことを含む。別の実施例として、タッチ感知面上の指のスワイプジェスチャを検出することは、指が下がるイベントを検出し、続いて1つ以上の指のドラッグイベントを検出し、その後、指が上がる(リフトオフ)イベントを検出することを含む。同様に、タップ、スワイプ、ドラッグ、及びその他のジェスチャは任意選択的に、スタイラスに対して、スタイラスに対する特定の接触パターンを検出することにより、検出される。
いくつかの実施形態では、指のタップジェスチャを検出することは、指が下がるイベントを検出することと指が上がるイベントを検出することとの間の時間の長さに依存するが、指が下がるイベントを検出することと指が上がるイベントを検出することとの間の指の接触の強度とは関連しない。いくつかの実施形態では、タップジェスチャは、タップの間の指の接触の強度が、軽い押圧又は深い押圧強度閾値などの所与の強度閾値を満たす(名目上の接触検出強度閾値よりも大きい)かに関わらず、指が下がるイベントと指が上がるイベントとの間の時間の長さが所定値よりも短い(例えば、0.1、0.2、0.3、0.4又は0.5秒よりも短い)との判定に従って検出される。よって、指のタップジェスチャは、特定の入力基準が満たされるために、接触の特性強度が所与の強度閾値を満たすことを必要としない特定の入力基準を満たすことができる。明確化のために、タップジェスチャにおける指接触は典型的には、指が下がるイベントが検出されるためには、それを下回ると接触が検出されない名目上の接触検出強度閾値を満たす必要がある。同様の分析は、スタイラスによるタップジェスチャ又は他の接触を検出することに適用される。デバイスがタッチ感知面上をホバリングする指又はスタイラスの接触を検出することが可能なケースでは、名目上の接触検出強度閾値は任意選択的に、指又はスタイラスとタッチ感知面との間の物理的接触に対応しない。
同様の方式で、同一の概念が他のタイプのジェスチャに適用される。例えば、スワイプジェスチャ、ピンチジェスチャ、デピンチジェスチャ、及び/又は長い押圧ジェスチャは任意選択的に、ジェスチャに含まれる接触の強度と関係しない、又は認識されるためにジェスチャを実行する接触(単数又は複数)が強度閾値に到達することを必要としない、のいずれかである基準を満たすことに基づいて検出される。例えば、スワイプジェスチャは、1つ以上の接触の移動量に基づいて検出され、ピンチジェスチャは、相互に向かう2つ以上の接触の移動に基づいて検出され、デピンチジェスチャは、相互に離れる2つ以上の接触の移動に基づいて検出され、長い押圧ジェスチャは、閾値移動量よりも小さいタッチ感知面上の接触の期間に基づいて検出される。そのようにして、特定のジェスチャ認識基準が満たされるために、接触(単数又は複数)の強度がそれぞれの強度閾値を満たすことを特定のジェスチャ認識基準が必要としないとの記述は、ジェスチャにおける接触(単数又は複数)がそれぞれの強度閾値に到達しない場合に特定のジェスチャ認識基準が満たされることが可能であること、及びジェスチャにおける接触のうちの1つ以上がそれぞれの強度閾値に到達せず、又は強度閾値を超えない状況で満たされることも可能であることを意味する。いくつかの実施形態では、タップジェスチャは、接触が定義済みの時間期間の間にそれぞれの強度閾値を上回り又は下回るかに関わらず、指が下がるイベント及び指が上がるイベントが定義済みの時間期間内で検出されたとの判定に基づいて検出され、スワイプジェスチャは、接触が接触の移動の終わりにそれぞれの強度閾値を上回る場合でさえ、接触の移動が定義済みの大きさよりも大きいとの判定に基づいて検出される。ジェスチャの検出がジェスチャを実行する接触の強度によって影響される実施態様でさえ(例えば、接触の強度が強度閾値を上回るときにデバイスが長い押圧をより素早く検出し、又は接触の強度がより高いときにデバイスがタップ入力の検出に遅れる)、接触が特定の強度閾値に到達しない状況でジェスチャを認識する基準を満たすことができる限り(例えば、ジェスチャを認識するために要する時間量が変化する場合でさえ)、それらのジェスチャの検出は、接触が特定の強度閾値に到達することを必要としない。
接触強度閾値、期間閾値、及び移動閾値は、状況次第では、同一の入力要素又は領域に向けられた2つ以上の異なるジェスチャを区別するためのヒューリスティックを作成するために、様々な異なる組合せで組み合わされ、それにより同一の入力要素との複数の異なる対話が可能となり、ユーザ対話及び応答の豊富なセットが提供される。特定のジェスチャ認識基準が満たされるために、接触(単数又は複数)の強度がそれぞれの強度閾値を満たすことをジェスチャ認識基準の特定の組が必要としない記述は、ジェスチャがそれぞれの強度閾値を上回る強度を有する接触を含むときに満たされる基準を有する他のジェスチャを識別するための他の強度依存ジェスチャ認識基準の同時評価を排除しない。例えば、状況次第では、第1のジェスチャ認識基準が満たされるために、接触(単数又は複数)の強度がそれぞれの強度閾値を満たすことを必要としない第1のジェスチャのための第1のジェスチャ認識基準は、それぞれの強度閾値に到達する接触(単数又は複数)に依存する第2のジェスチャのための第2のジェスチャ認識基準との競合関係にある。そのような競合では、ジェスチャは任意選択的に、第2のジェスチャのための第2のジェスチャ認識基準が最初に満たされる場合に第1のジェスチャのための第1のジェスチャ認識基準を満たすものとして認識されない。例えば、接触が定義済みの移動量を移動する前に接触がそれぞれの強度閾値に到達する場合、スワイプジェスチャではなく深い押圧ジェスチャが検出される。逆に、接触がそれぞれの強度閾値に到達する前に接触が定義済みの移動量を移動する場合、深い押圧ジェスチャではなくスワイプジェスチャが検出される。そのような状況でさえ、第1のジェスチャのための第1のジェスチャ認識基準は、第1のジェスチャ認識基準が満たされるために、接触(単数又は複数)の強度がそれぞれの強度閾値を満たすことをなおも必要とせず、なぜならば、ジェスチャの終わりまで接触がそれぞれの強度閾値を下回ったままであった場合(例えば、それぞれの強度閾値を上回る強度まで増加しない接触を有するスワイプジェスチャ)、ジェスチャは、スワイプジェスチャとして第1のジェスチャ認識基準によって認識されているからである。そのようにして、特定のジェスチャ認識基準が満たされるために、接触(単数又は複数)の強度がそれぞれの強度閾値を満たすことを必要としない特定のジェスチャ認識基準は、(A)状況次第では、強度閾値(例えば、タップジェスチャのための)に関して接触の強度を無視し、及び/又は(B)状況次第では、特定のジェスチャ認識基準が入力に対応するジェスチャ(例えば、認識のための深い押圧ジェスチャと競合する長い押圧ジェスチャのための)を認識する前に、強度依存ジェスチャ認識基準の競合する組(例えば、深い押圧ジェスチャのための)が強度依存ジェスチャに対応するものとして入力を認識する場合、特定のジェスチャ認識基準(例えば、長い押圧ジェスチャのための)が機能しないという意味で、強度閾値に関して接触の強度になおも依存している。
グラフィックモジュール132は、表示されるグラフィックの視覚的影響(例えば、輝度、透明度、飽和度、コントラスト、又は他の視覚特性)を変化させるための構成要素を含む、タッチ感知ディスプレイシステム112又は他のディスプレイ上でグラフィックをレンダリング及び表示するための様々な既知のソフトウェア構成要素を含む。本明細書で使用するとき、用語「グラフィック」は、ユーザに対して表示できる任意のオブジェクトを含み、それらのオブジェクトとしては、テキスト、ウェブページ、アイコン(ソフトキーを含むユーザインターフェースオブジェクトなど)、デジタル画像、ビデオ、アニメーションなどが挙げられるが、これらに限定されない。
いくつかの実施形態では、グラフィックモジュール132は、使用されることとなるグラフィックを表すデータを記憶する。各グラフィックは任意選択的に、対応するコードが割り当てられる。グラフィックモジュール132は、アプリケーションなどから、必要に応じて、座標データ及び他のグラフィック特性データと共に表示されることとなるグラフィックを指定する1つ以上のコードを受信し、次いで、ディスプレイコントローラ156に出力するスクリーンの画像データを生成する。
触覚フィードバックモジュール133は、デバイス100とのユーザ対話に応答して、触知出力生成器(単数又は複数)167を使用してデバイス100上の1つ以上の位置において触知出力を作成する命令(例えば、触覚フィードバックコントローラ161によって使用される命令)を生成するための様々なソフトウェア構成要素を含む。
テキスト入力モジュール134は任意選択的に、グラフィックモジュール132の構成要素であり、様々なアプリケーション(例えば、連絡先137、電子メール140、IM141、ブラウザ147、及びテキスト入力を必要とする任意の他のアプリケーション)でテキストを入力するためのソフトキーボードを提供する。
GPSモジュール135は、デバイスの場所を判定し、この情報を、様々なアプリケーションで使用するために(例えば、場所に基づくダイアル発呼で使用するために電話138へ、写真/ビデオのメタデータとしてカメラ143へ、並びに天気ウィジェット、地域のイエローページウィジェット、及びマップ/ナビゲーションウィジェットなどの場所に基づくサービスを提供するアプリケーションへ)提供する。
アプリケーション136は、以下のモジュール(若しくは命令セット)、又はそれらのサブセット若しくはスーパーセットを任意選択的に含む。
●連絡先モジュール137(アドレス帳又は連絡先リストと呼ばれることもある)、
●電話モジュール138、
●ビデオ会議モジュール139、
●電子メールクライアントモジュール140、
●インスタントメッセージング(IM)モジュール141、
●トレーニングサポートモジュール142、
●静止画像及び/又はビデオ画像用のカメラモジュール143、
●画像管理モジュール144、
●ブラウザモジュール147、
●カレンダーモジュール148、
●天気ウィジェット149-1、株価ウィジェット149-2、計算機ウィジェット149-3、アラーム時計ウィジェット149-4、辞書ウィジェット149-5、及びユーザによって取得された他のウィジェット、並びにユーザ作成ウィジェット149-6のうちの1つ以上を任意選択的に含む、ウィジェットモジュール149、
●ユーザ作成ウィジェット149-6を作成するためのウィジェット作成モジュール150、
●検索モジュール151、
●任意選択的にビデオプレーヤモジュールと音楽プレーヤモジュールで構成された、ビデオ及び音楽プレーヤモジュール152、
●メモモジュール153、
●マップモジュール154、並びに/又は
●オンラインビデオモジュール155。
任意選択的にメモリ102内に記憶される他のアプリケーション136の例としては、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA(登録商標)対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製が挙げられる。
タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と併せて、連絡先モジュール137は、(例えば、メモリ102又はメモリ370内の連絡先モジュール137のアプリケーション内部状態192に記憶される)アドレス帳又は連絡先リストを管理するための実行可能命令を含み、それには、アドレス帳に名前(単数又は複数)を追加すること、アドレス帳から名前(単数又は複数)を削除すること、電話番号(単数又は複数)、メールアドレス(単数又は複数)、住所(単数又は複数)、又は他の情報を名前と関連付けること、画像を名前と関連付けること、名前を分類かつ並べ替えること、電話番号及び/又は電子メールアドレスを提供して、電話138、ビデオ会議139、電子メール140、又はIM141による通信を開始及び/又は促進すること、などを含む。
RF回路108、音声回路110、スピーカ111、マイクロフォン113、タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、電話モジュール138は、電話番号に対応する一連の文字を入力し、アドレス帳137内の1つ以上の電話番号にアクセスし、入力されている電話番号を修正し、それぞれの電話番号をダイアルし、会話を実行し、会話が完了したときに切断し又は電話を切る実行可能命令を含む。上述したように、無線通信は任意選択的に、複数の通信規格、プロトコル、及び技術のうちのいずれかを使用する。
RF回路108、音声回路110、スピーカ111、マイクロフォン113、タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、光センサ(単数又は複数)164、光センサコントローラ158、接触モジュール130、グラフィックモジュール132、テキスト入力モジュール134、連絡先リスト137、及び電話モジュール138と連携して、ビデオ会議モジュール139は、ユーザの指示に従って、ユーザと1人以上の他の参加者との間のビデオ会議を開始し、行い、終了する実行可能命令を含む。
RF回路108、タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、電子メールクライアントモジュール140は、ユーザの指示に応答して、電子メールを作成し、送信し、受信し、管理する実行可能命令を含む。画像管理モジュール144と連携して、電子メールクライアントモジュール140は、カメラモジュール143で撮影された静止画像又はビデオ画像を有する電子メールを作成及び送信することを非常に容易にする。
RF回路108、タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、インスタントメッセージモジュール141は、インスタントメッセージに対応する一連の文字を入力し、前に入力された文字を修正し、それぞれのインスタントメッセージを送信し(例えば、電話ベースのインスタントメッセージのためのショートメッセージサービス(SMS)若しくはマルチメディアメッセージサービス(Multimedia Message Service、MMS)プロトコルを使用して、又はインターネットベースのインスタントメッセージのためのXMPP、SIMPLE、Apple Push Notification Service(APNs)、若しくはIMPSを使用して)、インスタントメッセージを受信し、受信したインスタントメッセージを見る実行可能命令を含む。いくつかの実施形態では、送信及び/又は受信されたインスタントメッセージは任意選択的に、MMS及び/又は拡張メッセージングサービス(Enhanced Messaging Service、EMS)でサポートされるような、グラフィック、写真、音声ファイル、ビデオファイル、及び/又は他の添付ファイルを含む。本明細書で使用する場合、「インスタントメッセージ」は、電話ベースのメッセージ(例えば、SMS又はMMSを使用して送信されるメッセージ)及びインターネットベースのメッセージ(例えば、XMPP、SIMPLE、APNs、又はIMPSを使用して送信されるメッセージ)の両方を指す。
RF回路108、タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、マップモジュール154、及び音楽プレーヤモジュール152と連携して、トレーニングサポートモジュール142は、トレーニングを作成し(例えば、時間、距離、及び/又はカロリー消費目標を有する)、(スポーツデバイス及びスマートウォッチ内の)トレーニングセンサと通信し、トレーニングセンサデータを受信し、トレーニングをモニタするために使用されるセンサを較正し、トレーニングのための音楽を選択及び再生し、トレーニングデータを表示、記憶、及び送信するための実行可能命令を含む。
タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、光センサ(単数又は複数)164、光センサコントローラ158、接触モジュール130、グラフィックモジュール132、及び画像管理モジュール144と連携して、カメラモジュール143は、静止画像若しくはビデオ(ビデオストリームを含む)をキャプチャし、それらをメモリ102に記憶し、静止画像若しくはビデオの特性を修正し、並びに/又はメモリ102から静止画又はビデオを削除する実行可能命令を含む。
タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びカメラモジュール143と連携して、画像管理モジュール144は、静止画像及び/若しくはビデオ画像を配置し、修正し(例えば、編集し)、又はその他の方式で操作し、ラベル付けし、削除し、提示し(例えば、デジタルスライドショー若しくはアルバム内で)、並びに記憶するための実行可能命令を含む。
RF回路108、タッチ感知ディスプレイシステム112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、ブラウザモジュール147は、ウェブページ又はそれらの一部、並びにウェブページにリンクされた添付ファイル及び他のファイルを検索し、それらにリンクさせ、受信し、表示することを含む、ユーザの指示に従ってインターネットを閲覧する実行可能命令を含む。
RF回路108、タッチ感知ディスプレイシステム112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連携して、カレンダーモジュール148は、ユーザの指示に従って、カレンダー及びカレンダーと関連付けられたデータ(例えば、カレンダー項目、to doリストなど)を作成し、表示し、修正し、記憶する実行可能命令を含む。
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(拡張可能マークアップ言語)ファイル及びJavaScriptファイル(例えば、Yahoo!ウィジェット)を含む。
RF回路108、タッチ感知ディスプレイシステム112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と連携して、ウィジェット作成モジュール150は、ウィジェットを作成する(例えば、ウェブページのユーザ指定部分をウィジェットに変える)実行可能命令を含む。
タッチ感知ディスプレイシステム112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、検索モジュール151は、ユーザの指示に従って、1つ以上の検索基準(例えば、1つ以上のユーザ指定の検索語句)と一致する、メモリ102内のテキスト、音楽、サウンド、画像、ビデオ、及び/又は他のファイルを検索する実行可能命令を含む。
タッチ感知ディスプレイシステム112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、音声回路110、スピーカ111、RF回路108、及びブラウザモジュール147と連携して、ビデオ及び音楽プレーヤモジュール152は、MP3又はAACファイルなどの1つ以上のファイル形式で記憶された記録された音楽又は他のサウンドファイルをユーザがダウンロード及び再生することを可能にする実行可能命令、並びにビデオを表示し、提示し、又はその他の方式で再生する(例えば、タッチ感知ディスプレイシステム112上で、又は無線で若しくは外部ポート124を介して接続された外部のディスプレイ上で)実行可能命令を含む。いくつかの実施形態では、デバイス100は、任意選択的に、iPod(Apple Inc.の商標)などのMP3プレーヤの機能を含む。
タッチ感知ディスプレイシステム112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、メモモジュール153は、ユーザの指示に従って、メモ、to doリストなどを作成及び管理するための実行可能命令を含む。
RF回路108、タッチ感知ディスプレイシステム112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、及びブラウザモジュール147と連携して、マップモジュール154は、ユーザの指示に従って、地図及び地図と関連付けられたデータ(例えば、運転方向、特定の位置における又はその近くの店舗及び対象となる他の地点についてのデータ、並びに位置に基づく他のデータ)を受信し、表示し、修正し、記憶する実行可能命令を含む。
タッチ感知ディスプレイシステム112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、音声回路110、スピーカ111、RF回路108、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連携して、オンラインビデオモジュール155は、ユーザがH.264などの1つ以上のファイル形式のオンラインビデオにアクセスし、閲覧し、受信し(例えば、ストリーミング及び/又はダウンロードにより)、再生し(例えば、タッチスクリーン112上で、又は無線で若しくは外部ポート124を介して接続された外部のディスプレイ上で)、特定のオンラインビデオへのリンクを有する電子メールを送信し、別の方法で管理することを可能にする実行可能命令を含む。いくつかの実施形態では、特定のオンラインビデオへのリンクを送信するために、電子メールクライアントモジュール140ではなく、インスタントメッセージングモジュール141が使用される。
上記特定されたモジュール及びアプリケーションの各々は、上述した1つ以上の機能を実行する実行可能命令セット、及び本出願で説明される方法(例えば、本明細書で説明されるコンピュータにより実行される方法及び他の情報処理方法)に対応する。それらのモジュール(すなわち、命令セット)は、別々のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、よって、それらのモジュールの様々なサブセットは任意選択的に、様々な実施形態において、組み合わされ、又はその他の方式で再配置される。いくつかの実施形態では、メモリ102は、上記で特定されたモジュール及びデータ構造のサブセットを任意選択的に記憶する。更に、メモリ102は任意選択的に、上述していない追加のモジュール及びデータ構造を記憶する。
いくつかの実施形態では、デバイス100は、デバイス上で定義済みの機能の組の動作がタッチスクリーン及び/又はタッチパッドを通じて排他的に実行されるデバイスである。デバイス100の動作のための主要な入力制御デバイスとしてタッチスクリーン及び/又はタッチパッドを使用することによって、デバイス100上の物理的な入力制御デバイス(プッシュボタン、ダイアルなど)の数が任意選択的に削減される。
タッチスクリーン及び/又はタッチパッドを通じて排他的に実行される定義済みの機能のセットは任意選択的に、ユーザインターフェース間のナビゲーションを含む。いくつかの実施形態では、タッチパッドは、ユーザによってタッチされるとき、デバイス100上に表示される任意のユーザインターフェースから、メインメニュー、ホームメニュー、又はルートメニューへデバイス100をナビゲートする。そのような実施形態では、「メニューボタン」はタッチパッドを使用して実装される。いくつかの他の実施形態では、メニューボタンは、タッチパッドの代わりに、物理プッシュボタン又は他の物理入力制御デバイスである。
図1Bは、いくつかの実施形態に係る、イベント処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態では、メモリ102(図1Aにおける)又は370(図3)は、イベントソート部170(例えば、オペレーティングシステム126内)及びそれぞれのアプリケーション136-1(例えば、上述したアプリケーション136、137~155、380~390のいずれか)を含む。
イベントソート部170は、イベント情報を受信し、イベント情報が配信されるアプリケーション136-1及びアプリケーション136-1のアプリケーションビュー191を判定する。イベントソート部170は、イベントモニタ171及びイベントディスパッチャモジュール174を含む。いくつかの実施形態では、アプリケーション136-1は、アプリケーションがアクティブ又は実行中のとき、タッチ感知ディスプレイシステム112上に表示されている現在のアプリケーションビュー(単数又は複数)を示す、アプリケーション内部状態192を含む。いくつかの実施形態では、デバイス/グローバル内部状態157は、どのアプリケーション(単数又は複数)が現在アクティブであるかを判定するためにイベントソート部170によって使用され、アプリケーション内部状態192は、イベント情報が配信されるアプリケーションビュー191を決定するためにイベントソート部170によって使用される。
いくつかの実施形態では、アプリケーション内部状態192は、アプリケーション136-1が実行を再開するときに使用される再開情報、アプリケーション136-1によって表示されているか又は表示の準備がされている情報を示すユーザインターフェース状態情報、ユーザがアプリケーション136-1の前の状態又はビューに戻ることを可能にするための状態待ち行列、及びユーザが行った前のアクションのリドゥ/アンドゥ待ち行列、のうちの1つ以上などの追加の情報を含む。
イベントモニタ171は、周辺機器インターフェース118からイベント情報を受信する。イベント情報は、サブイベント(例えば、マルチタッチジェスチャの一部としての、タッチ感知ディスプレイシステム112上のユーザのタッチ)についての情報を含む。周辺機器インターフェース118は、I/Oサブシステム106、又は近接センサ166、加速度計(単数又は複数)168、及び/若しくは(オーディオ回路110を通じて)マイクロフォン113などのセンサから受信する情報を送信する。周辺機器インターフェース118がI/Oサブシステム106から受信する情報は、タッチ感知ディスプレイシステム112又はタッチ感知面からの情報を含む。
いくつかの実施形態では、イベントモニタ171は、所定の間隔で周辺機器インターフェース118に要求を送信する。それに応答して、周辺機器インターフェース118はイベント情報を送信する。他の実施形態では、周辺機器インターフェース118は、重要なイベント(例えば、所定のノイズ閾値を上回り、及び/又は所定の期間よりも長い入力を受信すること)が存在するときのみ、イベント情報を送信する。
いくつかの実施形態では、イベントソート部170はまた、ヒットビュー判定モジュール172及び/又はアクティブイベント認識部判定モジュール173を含む。
ヒットビュー判定モジュール172は、タッチ感知ディスプレイシステム112が2つ以上のビューを表示するとき、1つ以上のビュー内のどこにおいてサブイベントが発生したかを判定するためのソフトウェア手順を提供する。ビューは、制御部及びユーザがディスプレイ上で見ることが可能な他の要素で構成される。
アプリケーションに関連付けられたユーザインターフェースの別の態様は、本明細書ではアプリケーションビュー又はユーザインターフェースウィンドウと呼ばれることもあるビューのセットであり、その中で情報が表示され、タッチに基づくジェスチャが生じる。タッチが検出される(それぞれのアプリケーションの)アプリケーションビューは、アプリケーションのプログラム階層又はビュー階層内のプログラムレベルに任意選択的に対応する。例えば、タッチが検出される最下位レベルのビューは任意選択的に、ヒットビューと呼ばれ、適切な入力として認識されるイベントのセットは任意選択的に、タッチに基づくジェスチャを開始する初期のタッチのヒットビューに少なくとも部分的に基づいて判定される。
ヒットビュー判定モジュール172は、タッチに基づくジェスチャのサブイベントに関連する情報を受信する。アプリケーションが階層において編成された複数のビューを有するとき、ヒットビュー判定モジュール172は、サブイベントを処理するべき階層内の最下位のビューとしてヒットビューを特定する。ほとんどの状況では、ヒットビューは、開始するサブイベント(すなわち、イベント又は潜在的なイベントを形成する一連のサブイベントにおける最初のサブイベント)が発生する最下位レベルのビューである。ヒットビューがヒットビュー判定モジュールによって特定されると、ヒットビューは典型的には、それがヒットビューとして特定された同一のタッチ又は入力元に関連する全てのサブイベントを受信する。
アクティブイベント認識部判定モジュール173は、ビュー階層内のどのビュー(単数又は複数)が特定の一連のサブイベントを受信すべきかを判定する。いくつかの実施形態では、アクティブイベント認識部判定モジュール173は、ヒットビューのみがサブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、アクティブイベント認識部判定モジュール173は、サブイベントの物理位置を含む全てのビューはアクティブに関わっているビューであると判定し、従って、全てのアクティブに関わっているビューは、サブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、タッチサブイベントがある特定のビューに関連付けられた領域に完全に限定されたとしても、階層の上位のビューは、依然としてアクティブに関わっているビューであり続ける。
イベントディスパッチャモジュール174は、イベント情報をイベントレコグナイザ(例えば、イベントレコグナイザ180)にディスパッチする。アクティブイベント認識部判定モジュール173を含む実施形態において、イベントディスパッチャモジュール174は、アクティブイベント認識部判定モジュール173により判定されたイベント認識部にイベント情報を配信する。いくつかの実施形態では、イベントディスパッチャモジュール174は、それぞれのイベント受信部モジュール182により取得されるイベント情報をイベント待ち行列内に記憶する。
いくつかの実施形態では、オペレーティングシステム126は、イベントソート部170を含む。代替として、アプリケーション136-1がイベントソート部170を含む。更に他の実施形態では、イベントソート部170は、独立型のモジュール、又は接触/動きモジュール130などの、メモリ102に記憶された別のモジュールの一部である。
いくつかの実施形態では、アプリケーション136-1は、各々がアプリケーションのユーザインターフェースの対応するビュー内で発生するタッチイベントを処理する命令を含む、複数のイベント処理部190及び1つ以上のアプリケーションビュー191を含む。アプリケーション136-1の各アプリケーションビュー191は、1つ以上のイベントレコグナイザ180を含む。典型的には、対応するアプリケーションビュー191は、複数のイベントレコグナイザ180を含む。他の実施形態では、イベント認識部180のうちの1つ以上は、ユーザインターフェースキット(図示せず)又はアプリケーション136-1が方法及び他の特性を継承する上位レベルのオブジェクトなどの、別個のモジュールの一部である。いくつかの実施形態では、対応するイベント処理部190は、データ更新部176、オブジェクト更新部177、GUI更新部178及び/又はイベントソート部170から受信されたイベントデータ179、のうちの1つ以上を含む。イベント処理部190は任意選択的に、アプリケーション内部状態192を更新するために、データ更新部176、オブジェクト更新部177、又はGUI更新部178を、利用するか又は呼び出す。代替として、アプリケーションビュー191のうちの1つ以上は、1つ以上の対応するイベント処理部190を含む。また、いくつかの実施形態では、データ更新部176、オブジェクト更新部177及びGUI更新部178のうちの1つ以上は、対応するアプリケーションビュー191に含まれる。
それぞれのイベント認識部180は、イベントソート部170からイベント情報(例えば、イベントデータ179)を受信し、イベント情報からイベントを特定する。イベントレコグナイザ180は、イベント受信部182及びイベント比較部184を含む。いくつかの実施形態では、イベント認識部180はまた、メタデータ183及びイベント配信命令188(任意選択的にサブイベント配信命令を含む)の少なくともサブセットも含む。
イベント受信部182は、イベントソート部170からイベント情報を受信する。イベント情報は、サブイベントについての情報、例えば、タッチ又はタッチの移動についての情報を含む。サブイベントに応じて、イベント情報はまた、サブイベントの位置などの追加の情報を含む。サブイベントがタッチの動きに関わるとき、イベント情報はまた任意選択的に、サブイベントの速さ及び方向を含む。いくつかの実施形態では、イベントは、1つの向きから別の向きへの(例えば、縦長の向きから横長の向きへの、又はその逆の)デバイスの回転を含み、イベント情報は、デバイスの現在の向き(デバイスの姿勢とも呼ばれる)についての対応する情報を含む。
イベント比較部184は、イベント情報を定義済みのイベント又はサブイベント定義と比較し、比較に基づいて、イベント又はサブイベントを判定し、又はイベント若しくはサブイベントの状態を判定若しくは更新する。いくつかの実施形態では、イベント比較部184は、イベント定義186を含む。イベント定義186は、例えば、イベント1(187-1)、イベント2(187-2)などのイベントの定義(例えば、定義済みの一連のサブイベント)を含む。いくつかの実施形態では、イベント187におけるサブイベントは、例えば、タッチの始め、タッチの終わり、タッチの移動、タッチの中止、及び複数のタッチを含む。一実施例では、イベント1(187-1)についての定義は、表示されたオブジェクト上のダブルタップである。ダブルタップは、例えば、表示されたオブジェクト上の所定の段階についての第1のタッチ(タッチの始め)、所定の段階についての第1のリフトオフ(タッチの終わり)、表示されたオブジェクト上の所定の段階についての第2のタッチ(タッチの始め)、及び所定の段階についての第2のリフトオフ(タッチの終わり)を含む。別の実施例では、イベント2(187-2)の定義は、表示されたオブジェクト上のドラッグ操作である。ドラッグ操作は、例えば、表示されたオブジェクト上の所定の段階についてのタッチ(又は、接触)、タッチ感知ディスプレイシステム112を横切るタッチの移動、及びタッチのリフトオフ(タッチの終了)を含む。いくつかの実施形態では、イベントはまた、1つ以上の関連付けられたイベント処理部190に関する情報を含む。
いくつかの実施形態では、イベント定義187は、対応するユーザインターフェースオブジェクトに関するイベントの定義を含む。いくつかの実施形態では、イベント比較部184は、どのユーザインターフェースオブジェクトがサブイベントと関連付けられているかを判定するためのヒットテストを実行する。例えば、3つのユーザインターフェースオブジェクトがタッチ感知ディスプレイシステム112上で表示されるアプリケーションビューにおいて、タッチ感知ディスプレイシステム112上でタッチが検出されるとき、イベント比較部184は、3つのユーザインターフェースオブジェクトのうちのどれがタッチ(サブイベント)と関連付けられているかを判定するためにヒットテストを実行する。表示された各オブジェクトが、対応するイベント処理部190に関連付けられている場合、イベント比較部は、ヒットテストの結果を用いて、どのイベント処理部190をアクティブ化すべきかを判定する。例えば、イベント比較部184は、ヒットテストをトリガするサブイベント及びオブジェクトと関連付けられたイベント処理部を選択する。
いくつかの実施形態では、それぞれのイベント187についての定義はまた、一連のサブイベントがイベント認識部のイベントタイプに対応するか否かが判定されるまで、イベント情報の配信を遅延させる遅延アクションを含む。
対応するイベント認識部180が、一連のサブイベントがイベント定義186のイベントのいずれとも一致しないと判定した場合、対応するイベント認識部180は、イベント不可能、イベント失敗、又はイベント終了の状態に入り、その後は、タッチに基づくジェスチャの次のサブイベントを無視する。この状況では、ヒットビューについてアクティブのままである他のイベント認識部がもしあれば、そのイベント認識部が進行中のタッチに基づくジェスチャのサブイベントの追跡及び処理を続行する。
いくつかの実施形態では、対応するイベント認識部180は、イベント配信システムがどのようにサブイベント配信を実行すべきかをアクティブに関与しているイベント認識部に示す構成可能なプロパティ、フラグ、及び/又はリストを有するメタデータ183を含む。いくつかの実施形態では、メタデータ183は、イベント認識部が相互にどのように対話するか又は対話することが可能とされているかについて示す構成可能なプロパティ、フラグ、及び/又はリストを含む。いくつかの実施形態では、メタデータ183は、サブイベントがビュー階層又はプログラム階層における多様なレベルに配信されるかを示す構成可能なプロパティ、フラグ、及び/又はリストを含む。
いくつかの実施形態では、それぞれのイベント認識部180は、イベントの1つ以上の特定のサブイベントが認識されるときに、イベントと関連付けられたイベント処理部190をアクティブ化する。いくつかの実施形態では、それぞれのイベント認識部180は、イベントと関連付けられたイベント情報をイベント処理部190に配信する。イベント処理部190をアクティブ化することは、それぞれのヒットビューにサブイベントを送信する(及び、送信を延期する)こととは別個である。いくつかの実施形態では、イベント認識部180は、認識されたイベントと関連付けられたフラグを投入し、フラグと関連付けられたイベント処理部190は、フラグを捕らえ、定義済みの処理を実行する。
いくつかの実施形態では、イベント配信命令188は、イベント処理部をアクティブ化することなくサブイベントについてのイベント情報を配信するサブイベント配信命令を含む。代わりに、サブイベント配信命令は、一連のサブイベントと関連付けられたイベント処理部に、又はアクティブに関与しているビューにイベント情報を配信する。一連のサブイベント又はアクティブに関与しているビューと関連付けられたイベント処理部は、イベント情報を受信し、所定の処理を実行する。
いくつかの実施形態では、データ更新部176は、アプリケーション136-1で使用されるデータを作成及び更新する。例えば、データ更新部176は、連絡先モジュール137で使用される電話番号を更新するか、又はビデオ及び音楽プレーヤモジュール152で使用されるビデオファイルを記憶する。いくつかの実施形態では、オブジェクト更新部177は、アプリケーション136-1で使用されるオブジェクトを作成及び更新する。例えば、オブジェクト更新部177は、新たなユーザインターフェースオブジェクトを作成するか、又はユーザインターフェースオブジェクトの位置を更新する。GUI更新部178は、GUIを更新する。例えば、GUI更新部178は、表示情報を準備し、タッチ感知ディスプレイ上に表示するために表示情報をグラフィックモジュール132に送る。
いくつかの実施形態では、イベント処理部(単数又は複数)190は、データ更新部176、オブジェクト更新部177、及びGUI更新部178を含むか又はそれらへのアクセスを有する。いくつかの実施形態では、データ更新部176、オブジェクト更新部177、及びGUI更新部178は、それぞれのアプリケーション136-1又はアプリケーションビュー191の単一モジュールに含まれる。他の実施形態では、それらは、2つ以上のソフトウェアモジュールに含まれる。
タッチ感知ディスプレイ上のユーザのタッチのイベント処理に関する前述の議論はまた、入力デバイスを用いて多機能デバイス100を動作させるための他の形態のユーザ入力にも適用されるが、その全てがタッチスクリーン上で開始されるわけではないことを理解されたい。例えば、単一若しくは複数のキーボードの押圧若しくは保持に任意選択的に連携されたマウスの移動及びマウスボタンの押圧、タッチパッド上でのタップ、ドラッグ、スクロールなどの接触の移動、ペンスタイラス入力、デバイスの移動、口頭による指示検出された眼球運動、バイオメトリック入力、並びに/又はそれらのいずれかの組合せは、任意選択的に、認識されることになるイベントを定義するサブイベントに対応する入力として利用される。
図2は、いくつかの実施形態に係る、タッチスクリーン(例えば、タッチ感知ディスプレイシステム112、図1A)を有するポータブル多機能デバイス100を示す。タッチスクリーンは、任意選択的に、1つ以上のグラフィックをユーザインターフェース(user interface、UI)200内に表示する。これらの実施形態、並びに後述する実施形態では、ユーザは、例えば、1本以上の指202(図には、正確な縮尺率では描かれていない)又は1つ以上のスタイラス203(図には、正確な縮尺率では描かれていない)を用いて、グラフィック上でジェスチャを行うことによって、グラフィックのうちの1つ以上を選択することできる。いくつかの実施形態では、ユーザが1つ以上のグラフィックとの接触を中断するときに1つ以上のグラフィックの選択が生じる。いくつかの実施形態では、ジェスチャは、1回以上のタップ、1回以上のスワイプ(左から右へ、右から左へ、上方向へ及び/若しくは下方向へ)、並びに/又はデバイス100と接触した指のローリング(右から左へ、左から右へ、上方向へ及び/若しくは下方向へ)を、任意選択的に含む。いくつかの実現形態又は状況では、グラフィックとの故意でない接触は、グラフィックを選択しない。例えば、選択に対応するジェスチャがタップであるとき、アプリケーションアイコンの上をスイープするスワイプジェスチャは、任意選択的に、対応するアプリケーションを選択しない。
デバイス100はまた任意選択的に、「ホーム」又はメニューボタン204などの1つ以上の物理ボタンを含む。前述のように、メニューボタン204は、任意選択的にデバイス100上で実行されるアプリケーションのセット内の任意のアプリケーション136へナビゲートするために、任意選択的に使用される。代替として、いくつかの実施形態では、メニューボタンは、タッチスクリーンディスプレイ上に表示されたGUI内のソフトキーとして実装されている。
いくつかの実施形態では、デバイス100は、タッチスクリーンディスプレイ、メニューボタン204(ホームボタン204と呼ばれることもある)、デバイスへの電力供給のオン/オフ及びデバイスのロックのためのプッシュボタン206、ボリューム調節ボタン(単数又は複数)208、加入者識別モジュール(SIM)カードスロット210、ヘッドセットジャック212、ドッキング/充電用外部ポート124を含む。プッシュボタン206は任意選択的に、ボタンを押し下げて、定義済みの時間間隔の間、ボタンを押し下げた状態で保持することによってデバイスの電源をオン/オフし、ボタンを押し下げて、定義済みの時間間隔が経過する前にボタンを解放することによってデバイスをロックし、及び/又は、デバイスのロックを解除する若しくはロック解除処理を開始するために用いられる。いくつかの実施形態では、デバイス100はまた、マイクロフォン113を通じていくつかの機能をアクティブ化又は非アクティブ化するための口頭入力を受け付ける。デバイス100はまた任意選択的に、タッチ感知ディスプレイシステム112上の接触の強度を検出するための1つ以上の接触強度センサ165、及び/又はデバイス100のユーザに対する触知出力を生成するための1つ以上の触知出力生成器167を含む。
図3は、いくつかの実施形態に係る、ディスプレイ及びタッチ感知面を有する例示的な多機能デバイスのブロック図である。デバイス300は、ポータブル型である必要はない。いくつかの実施形態では、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディア再生デバイス、ナビゲーションデバイス、教育用デバイス(子供の学習玩具など)、ゲームシステム、又は制御デバイス(例えば、家庭用又は業務用コントローラ)である。デバイス300は典型的には、1つ以上の処理ユニット(CPU)310、1つ以上のネットワーク又は他の通信インターフェース360、メモリ370、及びこれら構成要素を相互接続するための1つ以上の通信バス320を含む。通信バス320は、任意選択的に、システム構成要素間の通信を相互接続及び制御する回路(チップセットと呼ばれることもある)を含む。デバイス300は、典型的にはタッチスクリーンディスプレイであるディスプレイ340を備える、入出力(I/O)インターフェース330を含む。I/Oインターフェース330はまた、任意選択的に、キーボード及び/又はマウス(又は、他のポインティングデバイス)350並びにタッチパッド355、デバイス300上で触知出力を生成するための触知出力生成器357(例えば、図1Aを参照して上述した触知出力生成器(単数又は複数)167と同様の)、センサ359(例えば、光センサ、加速度センサ、近接センサ、タッチ感知センサ、及び/又は図1Aを参照して上述した接触強度センサ(単数又は複数)165に類似した接触強度センサ)を含む。メモリ370は、DRAM、SRAM、DDR RAM、又は他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含み、任意選択的に、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステート記憶デバイスなどの不揮発性メモリを含む。メモリ370は、任意選択的に、CPU(単数又は複数)310から離れて位置する1つ以上の記憶デバイスを含む。いくつかの実施形態では、メモリ370は、ポータブル多機能デバイス100(図1A)のメモリ102に記憶されたプログラム、モジュール、及びデータ構造に類似のプログラム、モジュール、及びデータ構造、又はそれらのサブセットを記憶する。更に、メモリ370は任意選択的に、ポータブル多機能デバイス100のメモリ102に存在しない追加のプログラム、モジュール、及びデータ構造を記憶する。例えば、デバイス300のメモリ370は任意選択的に、描画モジュール380、プレゼンテーションモジュール382、ワードプロセッシングモジュール384、ウェブサイト作成モジュール386、ディスクオーサリングモジュール388、及び/又はスプレッドシートモジュール390を記憶するが、ポータブル多機能デバイス100(図1A)のメモリ102は任意選択的に、それらのモジュールを記憶しない。
上記特定された図3における要素の各々は任意選択的に、前に言及したメモリデバイスのうちの1つ以上に記憶される。上記特定されたモジュールのうちの各々は、上述した機能を実行する命令セットに対応する。上記特定されたモジュール又はプログラム(すなわち、命令セット)は、別々のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、よって、それらのモジュールの様々なサブセットは任意選択的に、様々な実施形態において組み合わされ、又はその他の方式で再配置される。いくつかの実施形態では、メモリ370は、上記で特定されたモジュール及びデータ構造のサブセットを任意選択的に記憶する。更に、メモリ370は、上述していない追加のモジュール及びデータ構造を任意選択的に記憶する。
ここで、ポータブル多機能デバイス100上で任意選択的に実装されるユーザインターフェース(「UI」)の実施形態に注目する。
図4Aは、いくつかの実施形態に係る、ポータブル多機能デバイス100上のアプリケーションのメニューのための例示的なユーザインターフェースを示す。同様のユーザインターフェースは、任意選択的に、デバイス300上に実装される。いくつかの実施形態では、ユーザインターフェース400は、以下の要素、又はそれらのサブセット若しくはスーパーセットを含む。
●セルラ信号及びWi-Fi信号などの無線通信(単数又は複数)のための信号強度インジケータ(単数又は複数)、
●時間
●Bluetoothインジケータ、
●バッテリ状態インジケータ、
●下記などの、頻繁に使用されるアプリケーション用のアイコンを有するトレー408、
○不在着信又は音声メールメッセージの数のインジケータ414を任意選択的に含む、「電話」とラベル付けされた、電話モジュール138用のアイコン416、
○未読電子メールの数のインジケータ410を任意選択的に含む、「メール」とラベル付けされた、電子メールクライアントモジュール140用のアイコン418、
○「ブラウザ」とラベル付けされた、ブラウザモジュール147用のアイコン420、及び
○「音楽」とラベル付けされたビデオ及び音楽プレーヤモジュール152用のアイコン422、並びに
●下記などの、その他のアプリケーションのためのアイコン、
○「メッセージ」とラベル付けされた、IMモジュール141用のアイコン424、
○「カレンダー」とラベル付けされた、カレンダーモジュール148用のアイコン426、
○「写真」とラベル付けされた、画像管理モジュール144用のアイコン428、
○「カメラ」とラベル付けされた、カメラモジュール143用のアイコン430、
○「オンラインビデオ」とラベル付けされた、オンラインビデオモジュール155用のアイコン432、
○「株価」とラベル付けされた、株価ウィジェット149-2用のアイコン434、
○「マップ」とラベル付けされた、マップモジュール154用のアイコン436、
○「天気」とラベル付けされた、天気ウィジェット149-1用のアイコン438、
○「時計」とラベル付けされた、アラーム時計ウィジェット149-4用のアイコン440、
○「トレーニングサポート」とラベル付けされた、トレーニングサポートモジュール142用のアイコン442、
○「メモ」とラベル付けされた、メモモジュール153用のアイコン444、及び
○デバイス100及びその様々なアプリケーション136に関する設定へのアクセスを提供する、設定アプリケーション又はモジュール用のアイコン446。
図4Aに示されたアイコンのラベルは単なる例に過ぎないことに留意されたい。例えば、他のラベルが任意選択的に、様々なアプリケーションアイコンに使用される。いくつかの実施形態では、それぞれのアプリケーションアイコンについてのラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。いくつかの実施形態では、特定のアプリケーションアイコンのラベルは、特定のアプリケーションアイコンに対応するアプリケーションの名前とは異なる。
図4Bは、ディスプレイ450と分離したタッチ感知面451(例えば、タブレット又はタッチパッド355、図3)を有するデバイス(例えば、デバイス300、図3)上の例示的なユーザインターフェースを示す。デバイス300はまた、任意選択的に、タッチ感知面451上の接触の強度を検出するための1つ以上の接触強度センサ(例えば、センサ357のうちの1つ以上)、及び/又はデバイス300のユーザに対して触知出力を生成するための1つ以上の触知出力生成器359を含む。
以下の実施例のうちの多くはタッチスクリーンディスプレイ112上での入力(タッチ感知面とディスプレイとが組み合わされている場合)を参照して与えられるが、いくつかの実施形態では、デバイスは、図4Bに示すように、ディスプレイとは別個のタッチ感知面上での入力を検出する。いくつかの実施形態では、タッチ感知面(例えば、図4Bにおける451)は、ディスプレイ(例えば、450)上の主軸(例えば、図4Bにおける453)に対応する主軸(例えば、図4Bにおける452)を有する。それらの実施形態によれば、デバイスは、ディスプレイ上のそれぞれの位置に対応する位置(例えば、図4Bにおいて、460は468に対応し、462は470に対応する)におけるタッチ感知面451との接触(例えば、図4Bにおける460及び462)を検出する。このように、タッチ感知面がディスプレイとは別個のものであるとき、タッチ感知面(例えば、図4Bの451)上でデバイスによって検出されたユーザ入力(例えば、接触460及び462、及びそれらの動き)は、多機能デバイスのディスプレイ(例えば、図4Bの450)上のユーザインターフェースを操作するためにデバイスによって使用される。同様の方法が、本明細書に記載の他のユーザインターフェースに任意選択的に使用されることを理解されたい。
これに加えて、以下の説明は、主に指入力(例えば、指の接触、指のタップジェスチャ、指のスワイプジェスチャなど)を参照して説明されるが、いくつかの実施形態では、それらの指入力のうちの1つ以上は、別の入力デバイスからの入力(例えば、マウスに基づく入力又はスタイラス入力)で置き換えられることを理解されたい。例えば、スワイプジェスチャは、任意選択的に、(例えば、接触の代わりに)マウスクリックと置き換えられ、その後、(例えば、接触の移動の代わりに)スワイプの経路に沿ってカーソルの移動が行われる。別の例として、タップジェスチャは、任意選択的に、カーソルがタップジェスチャの位置の上に位置している間、マウスクリックと置き換えられる(例えば、接触の検出とそれに続く接触の検出の停止、の代わりに)。同様に、複数のユーザ入力が同時に検出されるとき、複数のコンピュータマウスが、任意選択的に、同時に使用され、又はマウス及び指の接触が、任意選択的に、同時に使用されることを理解されたい。
本明細書で使用する場合、用語「フォーカスセレクタ」とは、ユーザが対話しているユーザインターフェースの現在の部分を示す入力要素を指す。カーソル又は他のロケーションマーカを含む実現形態において、カーソルは「フォーカスセレクタ」として機能し、それにより、カーソルが特定のユーザインターフェース要素(例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインターフェース要素)の上にある間に、タッチ感知面(例えば、図3のタッチパッド355、又は図4Bのタッチ感知面451)上で入力(例えば、押圧入力)が検出されたときに、特定のユーザインターフェース要素は検出された入力に従って調整される。タッチスクリーンディスプレイ上のユーザインターフェース要素との直接的な対話を可能にする、タッチスクリーンディスプレイ(例えば、図1Aのタッチ感知ディスプレイシステム112、又は図4Aのタッチスクリーン)を含むいくつかの実現形態において、タッチスクリーン上で検出された接触が「フォーカスセレクタ」として機能し、それにより、タッチスクリーンディスプレイ上の特定のユーザインターフェース要素(例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインターフェース要素)の場所で入力(例えば、接触による押圧入力)が検出されたときに、特定のユーザインターフェース要素は検出された入力に従って調節される。いくつかの実現形態では、(例えば、フォーカスを1つのボタンから別のボタンに移動させるためにタブキー又は矢印キーを使用することによって)タッチスクリーンディスプレイ上の対応するカーソルの移動又は接触の移動なしに、フォーカスがユーザインターフェースの1つの領域からユーザインターフェースの別の領域に移動され、それらの実現装形態では、フォーカスセレクタは、ユーザインターフェースの異なる領域の間のフォーカスの移動に従って移動する。フォーカスセレクタによって取られる具体的な形態とは関わりなく、フォーカスセレクタは一般的に、ユーザが意図したユーザインターフェースとの対話を通信するために(例えば、ユーザが対話しようと意図しているユーザインターフェースの要素をデバイスに示すことによって)、ユーザによって制御されるユーザインターフェース要素(又は、タッチスクリーンディスプレイ上の接触)である。例えば、押圧入力がタッチ感知面(例えば、タッチパッド又はタッチスクリーン)上で検出されている間に、対応するボタンの上にあるフォーカスセレクタ(例えば、カーソル、接触又は選択ボックス)の位置は、(デバイスのディスプレイ上に示されている他のユーザインターフェース要素ではなく)対応するボタンをユーザがアクティブ化しようとしていることを示すものである。
本明細書及び特許請求の範囲で使用する場合、タッチ感知面上の接触の「強度」という用語は、タッチ感知面上の接触(例えば、指の接触又はスタイラスの接触)の力若しくは圧力(単位面積当りの力)、又はタッチ感知面上の接触の力若しくは圧力を代替するもの(プロキシ)を指す。接触の強度は、少なくとも4つの異なる値を含み、より典型的には、何百もの(例えば、少なくとも256個の)異なる値を含む値範囲を有する。接触の強度は、任意選択的に、様々な手法、及び様々なセンサ又はセンサの組合せを使用して判定(又は、測定)される。例えば、タッチ感知面の下に又はこれに隣接する1つ以上の力センサは、任意選択的に、タッチ感知面上の様々な点における力を測定するために使用される。いくつかの実現形態では、複数の力センサからの力測定値を組み合わせて(例えば、加重平均又は合計)、推定される接触の力を判定する。同様に、スタイラスの感圧性チップを任意選択的に使用して、タッチ感知面上のスタイラスの圧力を判定する。代替として、タッチ感知面上で検出される接触領域のサイズ及び/若しくはその変化、接触に近接するタッチ感知面の静電容量及び/若しくはその変化、並びに/又は、接触に近接するタッチ感知面の抵抗及び/若しくはその変化が、タッチ感知面上の接触の力又は圧力の代替物として、任意選択的に用いられる。いくつかの実現形態では、接触の力又は圧力に対する代替的測定値が、強度閾値を超えているかを判定するために直接使用される(例えば、強度閾値は、代替的測定値に対応する単位で記述される)。いくつかの実現形態では、接触の力又は圧力に対する代替的測定値は、推定される力又は圧力に変換され、推定される力又は圧力は、強度閾値を超えているかを判定するために使用される(例えば、強度閾値は、圧力の単位で測定された圧力閾値である)。接触の強度をユーザ入力の属性として使用することにより、ユーザは追加的なデバイス機能へアクセスできるようになるが、そうしなければ、縮小されたサイズのデバイス上では、アフォーダンスを(例えば、タッチ感知ディスプレイ上に)表示し、及び/又は、ユーザ入力を(例えば、タッチ感知ディスプレイ、タッチ感知面、又はノブ若しくはボタンなどの物理的/機械的制御部を介して)受けるための面積が制限されるために、ユーザがこの機能に容易にアクセスすることはできない。
いくつかの実施形態では、接触/動きモジュール130は、ユーザによって動作が実行されたかを判定するための(例えば、ユーザがアイコン上で「クリック」したかを判定するための)、1つ以上の強度閾値のセットを使用する。いくつかの実施形態では、少なくとも強度閾値のサブセットが、ソフトウェアパラメータに従って判定される(例えば、強度閾値は特定の物理アクチュエータのアクティブ化閾値によって判定されず、デバイス100の物理ハードウェアを変更することなく調整し得る)。例えば、トラックパッド又はタッチスクリーンディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチスクリーンディスプレイのハードウェアを変更することなく、広範囲の既定閾値のうちのいずれかに設定することができる。加えて、いくつかの実現形態では、デバイスのユーザには、強度閾値のセットのうちの1つ以上を調節するためのソフトウェア設定が提供される(例えば、個々の強度閾値を調節することによって、及び/又はシステムレベルのクリック「強度」パラメータで一度に複数の強度閾値を調節することによって)。
本明細書及び特許請求の範囲で使用されるとき、接触の「特性強度」という用語は、接触の1つ以上の強度に基づく接触の特性を指す。いくつかの実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、任意選択的に、定義済みの数の強度サンプル、又は定義済みのイベント(例えば、接触を検出した後、接触のリフトオフを検出する前、接触の移動の開始を検出する前若しくは後、接触の終わりを検出する前、接触の強度の増加を検出する前若しくは後、及び/又は接触の強度の減少を検出する前若しくは後)に対して、所定の時間期間(例えば、0.05、0.1、0.2、0.5、1、2、5、10秒)の間に収集された強度サンプルのセットに基づく。接触の特性強度は、任意選択的に、接触の強度の最大値、接触の強度の平均値(mean value)、接触の強度の平均値(average value)、接触の強度の上位10%値、接触の強度の最大値の半分の値、接触の強度の最大値の90%の値、定義済みの期間にわたって、又は定義済み時間に開始した接触の強度を低域フィルタリングすることによって生成された値などのうちの1つ以上に基づく。いくつかの実施形態では、特性強度を判定する際に、接触の持続期間が使用される(例えば、特性強度が、接触の強度の時間に対する平均であるとき)。いくつかの実施形態では、動作がユーザによって実行されたか否かを判定するために、特性強度を1つ以上の強度閾値のセットと比較する。例えば、1つ以上の強度閾値のセットは、第1の強度閾値及び第2の強度閾値を含むことができる。この実施例では、第1の閾値を上回らない特性強度を有する接触の結果として第1の動作が実行され、第1の強度閾値を上回り、第2の強度閾値を上回らない特性強度を有する接触の結果として第2の動作が実行され、第2の強度閾値を上回る特性強度を有する接触の結果として第3の動作が実行される。いくつかの実施形態では、特性強度と1つ以上の強度閾値との間の比較は、第1の操作又は第2の操作のいずれを実行するかを判定するために使用されるのではなく、1つ以上の操作を実行するか否か(例えば、それぞれのオプションを実行するか、又はそれぞれの操作の実行を控えるか)を判定するために使用される。
いくつかの実施形態では、ジェスチャの一部は、特性強度を判定する目的で特定される。例えば、タッチ感知面は、開始場所から遷移して終了場所まで達する連続的なスワイプ接触(例えば、ドラッグジェスチャ)を受け取る場合があり、この終了場所で接触の強度が増加する。この実施例では、終了場所における接触の特性強度は、連続的なスワイプ接触全体ではなく、そのスワイプ接触の一部のみ(例えば、スワイプ接触の終了位置における一部のみ)に基づいてもよい。いくつかの実施形態では、接触の特性強度を判定する前に、平滑化アルゴリズムをそのスワイプ接触の強度に適用してもよい。例えば、平滑化アルゴリズムは、任意選択的に、非荷重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム、及び/又は指数平滑化アルゴリズムのうちの1つ以上を含む。状況次第では、これらの平滑化アルゴリズムは、特性強度を判定する目的で、スワイプ接触の強度の小幅な上昇又は低下を除外する。
本明細書で説明されるユーザインターフェースの図は任意選択的に、1つ以上の強度閾値(例えば、接触検出強度閾値IT0、軽い押圧強度閾値ITL、深い押圧強度閾値ITD(例えば、少なくとも最初はITLよりも高い)、及び/又は1つ以上の他の強度閾値(例えば、ITLよりも低い強度閾値ITH))に対する、タッチ感知面上の接触の現在の強度を示す、様々な強度ダイアグラムを含む。この強度ダイアグラムは、典型的には、表示されるユーザインターフェースの一部ではないが図の解釈に役立てるために提供される。いくつかの実施形態では、軽い押圧強度閾値は、物理マウスのボタン又はトラックパッドのクリックと典型的に関連付けられた動作をデバイスが実行する強度に相当する。いくつかの実施形態では、深い押圧強度閾値は、物理マウスのボタン又はトラックパッドのクリックに典型的と関連付けられた動作とは異なる動作をデバイスが実行する強度に相当する。いくつかの実施形態では、軽い押圧強度閾値を下回る(例えば、かつ、それを下回ると接触が検出されなくなるわずかな接触検出強度閾値IT0を上回る)特性強度で接触が検出される場合、デバイスは、軽い押圧強度閾値又は深い押圧強度閾値に関連付けられた動作を実行することなく、タッチ感知面上の接触の移動に従って、フォーカスセレクタを移動させる。全般的には、特に明記しない限り、これらの強度閾値は、異なるユーザインターフェースの数値のセット間で一貫している。
いくつかの実施形態では、デバイスによって検出された入力へのデバイスの応答は、入力中の接触強度に基づく基準に依存する。例えば、いくつかの「軽い押圧」入力について、入力中の第1の強度閾値を超える接触の強度は第1の応答をトリガする。いくつかの実施形態では、デバイスによって検出された入力へのデバイスの応答は、入力中の接触強度及び時間に基づく基準の両方を含む基準に依存する。例えば、いくつかの「深い押圧」入力について、入力中の軽い押圧に対する第1の強度閾値より大きい第2の強度閾値を超える接触の強度は、第1の強度閾値を満たすことと第2の強度閾値を満たすこととの間で遅延時間が経過した場合のみ、第2の応答をトリガする。この遅延時間は典型的には、時間が200ms(ミリ秒)よりも短い(例えば、第2の強度閾値の大きさに依存して、40ms、100ms、又は120msであり、遅延時間は第2の強度閾値が増加するにつれて増加する)。この遅延時間は、深い押圧入力の偶発的な認識を回避することに役立つ。別の実施例として、いくつかの「深い押圧」入力について、第1の強度閾値が満たされる時間の後に発生する感度が低下した時間期間が存在する。感度が低下した時間期間の間、第2の強度閾値は増加する。第2の強度閾値のこの一時的な増加もまた、偶発的な深い押圧入力を回避することに役立つ。他の深い押圧入力について、深い押圧入力の検出に対する応答は、時間に基づく基準に依存しない。
いくつかの実施形態では、入力強度閾値及び/又は対応する出力のうちの1つ以上は、ユーザ設定、接触の動き、入力タイミング、実行しているアプリケーション、強度が加わる速度、同時に行われる入力の数、ユーザ履歴、環境要因(例えば、周囲ノイズ)、フォーカスセレクタの位置などの1つ以上の要因に基づいて変化する。例示的な要因が、米国特許出願第14/399,606号及び第14/624,296号に記載されており、それらの全体が参照により本明細書に組み込まれている。
例えば、いくつかの実施形態では、動的強度閾値は、経時的なタッチ入力の強度に部分的に基づいて経時的に変化する。動的強度閾値は、2つの成分、すなわちタッチ入力が最初に検出されたときから定義済みの遅延時間p1の後に経時的に減衰する第1の成分と、経時的にタッチ入力の強度を追跡する第2の成分との合計である。第1の成分の初期の高強度閾値は、「深い押圧」応答が偶発的にトリガすることを減少させ、一方でタッチ入力が十分な強度を提供する場合に、即時の「深い押圧」応答を依然として可能にする。第2の成分は、タッチ入力における段階的な強度変動によって「深い押圧」応答が意図せずにトリガすることを減少させる。いくつかの実施形態では、タッチ入力が動的強度閾値を満たした時点で、「深い押圧」応答がトリガされる。
いくつかの実施形態における別の例では、動的強度閾値(例えば、強度閾値ID)は、2つの他の強度閾値、すなわち第1の強度閾値ITH及び第2の強度閾値ILと共に使用される。いくつかの実施形態では、時間p2以前に、タッチ入力が第1の強度閾値ITH及び第2の強度閾値ITLを満足しているが、遅延時間p2が経過するまでは応答は提供されない。いくつかの実施形態では、動的強度閾値は、第2の強度閾値ITLと関連付けられた応答がトリガされたとき(例えば、時間p2)から、定義済みの遅延時間p1が経過した時点で開始する減衰で、経時的に減衰する。このタイプの動的強度閾値は、第1の強度閾値ITH又は第2の強度閾値ILなど、より低い強度閾値と関連付けられた応答のトリガの直後に又はそれと同時に、動的強度閾値ITDと関連付けられた応答を偶発的にトリガすることを減少させる。
いくつかの実施形態における別の例では、強度閾値ITLと関連付けられた応答は、タッチ入力が最初に検出されたときから遅延時間p2が経過した後にトリガされる。同時に、動的強度閾値(例えば強度閾値ID)は、タッチ入力が最初に検出されたときから定義済み遅延時間p1が経過した後に減衰する。よって、強度閾値ILと関連付けられた応答をトリガした後にタッチ入力の強度が減少し、その後にタッチ入力を取り除くことなくタッチ入力の強度が増加した場合、タッチ入力の強度が別の強度閾値、例えば、強度閾値ILを下回るときであっても、強度閾値ITDと関連付けられた応答をトリガすることができる。
軽い押圧強度閾値ITLを下回る強度から、軽い押圧強度閾値ITLと深い押圧強度閾値ITDとの間の強度への、接触の特性強度の増加は、「軽い押圧」入力と称される場合がある。深い押圧強度閾値ITDを下回る強度から、深い押圧強度閾値ITDを上回る強度への、接触の特性強度の増加は、「深い押圧」入力と称される場合がある。接触検出強度閾値IT0を下回る強度から、接触検出強度閾値IT0と軽い押圧強度閾値ITLとの間の強度への、接触の特性強度の増加は、タッチ面上の接触の検出と称される場合がある。接触検出強度閾値IT0を上回る強度から、接触検出強度閾値IT0を下回る強度への、接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と称される場合がある。いくつかの実施形態では、IT0はゼロである。いくつかの実施形態では、IT0はゼロよりも大きい。いくつかの図では、タッチ感知面上の接触の強度を表すために、影付きの円又は楕円が使用される。いくつかの図では、それぞれの接触の強度を指定することなく、タッチ感知面上のそれぞれの接触を表すために、影なしの円又は楕円が使用される。
本明細書で説明されるいくつかの実施形態では、1つ以上の動作は、それぞれの押圧入力を含むジェスチャを検出したことに応答して、又はそれぞれの接触(若しくは、複数の接触)で実行されるそれぞれの押圧入力を検出したことに応答して実行され、それぞれの押圧入力は、押圧入力強度閾値を上回る接触(又は、複数の接触)の強度の増加を検出したことに少なくとも部分的に基づいて検出される。いくつかの実施形態では、それぞれの動作は、それぞれの接触の強度が押圧入力強度閾値を上回って増加したことを検出したことに応答して実行される(例えば、それぞれの動作は、それぞれの押圧入力の「ダウンストローク」により実行される)。いくつかの実施形態では、押圧入力は、押圧入力強度閾値を上回るそれぞれの接触の強度の増加、及び押圧入力強度閾値を下回る接触の強度のその後の減少を含み、それぞれの操作は、押圧入力閾値を下回るそれぞれの接触の強度のその後の減少を検出したことに応答して実行される(例えば、それぞれの操作は、それぞれの押圧入力の「アップストローク」上で実行される)。
いくつかの実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある偶発的な入力を回避するために強度ヒステリシスを採用し、デバイスは、押圧入力強度閾値との定義済みの関係を有するヒステリシス強度閾値を定義又は選択する(例えば、ヒステリシス強度閾値は、押圧入力強度閾値よりもX強度単位低いか、又はヒステリシス強度閾値は、押圧入力強度閾値の75%、90%、若しくは何らかの妥当な比率である)。従って、いくつかの実施形態では、押圧入力は、押圧入力強度閾値を上回る、それぞれの接触の強度の増加と、それに続く押圧入力強度閾値に対応するヒステリシス強度閾値を下回る、接触の強度の減少を含み、それぞれの動作は、ヒステリシス強度閾値を下回る、それぞれの接触の強度の減少の検出に応答して実行される(例えば、それぞれの動作は、それぞれの押圧入力の「アップストローク」により実行される)。同様に、いくつかの実施形態では、押圧入力は、デバイスが、ヒステリシス強度閾値以下の強度から押圧入力強度閾値以上の強度への接触の強度の増加、及び任意選択的に、それに引き続く、ヒステリシス強度以下の強度への接触の強度の減少を検出する場合にのみ検出され、それぞれの動作は、その押圧入力の検出(例えば、状況に応じて、接触の強度の増加、又は接触の強度の減少)に応答して実行される。
説明を容易にするために、押圧入力強度閾値と関連付けられた押圧入力に応答して、又は押圧入力を含むジェスチャに応答して実行される動作の説明は、任意選択的に、押圧入力強度閾値を上回る接触の強度の増加、ヒステリシス強度閾値を下回る強度から押圧入力強度閾値を上回る強度への接触の強度の増加、押圧入力強度閾値を下回る接触の強度の減少、又は押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少、を検出したことに応答してトリガされる。加えて、押圧入力強度閾値を下回る接触の強度の減少を検出したことに応答して動作が実行されるとして説明される実施例では、動作は、任意選択的に、押圧入力強度閾値に対応し、かつそれよりも低いヒステリシス強度閾値を下回る接触の強度の減少を検出したことに応答して実行される。上述したように、いくつかの実施形態では、それらの応答のトリガはまた、満たされる時間に基づく基準に依存する(例えば、遅延時間は、第1の強度閾値が満たされることと第2の強度閾値が満たされることとの間で経過している)。
ユーザインターフェース及び関連する処理
ここで、ディスプレイ、タッチ感知面、及び(任意選択的に)タッチ感知面との接触の強度を検出するための1つ以上のセンサを有する、ポータブル多機能デバイス100又はデバイス300、などの電子デバイス上で実現され得る、ユーザインターフェース(「UI」)及び関連するプロセスの実施形態に注目する。
図5A~図5Dは、いくつかの実施形態に係る、ナビゲーションジェスチャ(例えば、ホーム画面ユーザインターフェースにナビゲートするためのジェスチャ)のために、タッチ感知ディスプレイ画面上のジェスチャ開始領域を示すアフォーダンス(例えば、ホームアフォーダンス)を有する、ユーザインターフェースの例を示す。いくつかの実施形態では、本明細書に示される方法を使用して、デバイスの他の機能又は動作に関するガイダンスを制御又は提供するためのアフォーダンスも表示される。それらの図におけるユーザインターフェースは、図6A~図6C、図7A~図7E、及び図8A~図8Fにおける処理を含む、以下で説明される処理を示すために使用される。説明の便宜上、実施形態のいくつかは、タッチ感知ディスプレイシステム112を有するデバイス上で実行される動作を参照して議論される。そのような実施形態では、フォーカスセレクタは任意選択的に、それぞれの指若しくはスタイラスの接触、指若しくはスタイラスの接触に対応する代表的な点(例えば、それぞれの接触の重心若しくはそれぞれの接触と関連付けられた点)、又はタッチ感知ディスプレイシステム112上で検出された2つ以上の接触の重心である。
説明の便宜上、実施形態のいくつかは、ホームボタンを持たないデバイス上で実行される操作を参照して議論され、定義済みの基準を満たすジェスチャは、現在表示されているユーザインターフェースの退避及びホーム画面ユーザインターフェースの表示を引き起こすために使用される。図5A~5Dには示されないが、いくつかの実施形態では、ホームボタン(例えば、機械ボタン、ソリッドステートボタン、又は仮想ボタン)はデバイスに含まれており、現在表示されているユーザインターフェースの退避及びホーム画面ユーザインターフェースの表示を引き起こすために使われる。(例えば、単一の押圧入力に応答して)、並びに/又はマルチタスクユーザインターフェースの表示(例えば、二重押圧入力に応答して)を引き起こすために使用される。
図5A~図5Dにおいて、デバイスがいずれかのユーザインターフェースを表示している間、スクリーンの底部で開始するジェスチャ(例えば、ディスプレイの縁部領域に近接したデバイスの定義済みの領域内で(例えば、デバイスの底端部に近いディスプレイの定義済みの部分(例えば、20画素幅)を含む縁部領域)は、ユーザインターフェースナビゲーション処理を引き起こし、任意選択的に、入力の速さ及び方向に基づいて、更に任意選択的に、現在表示されているユーザインターフェースオブジェクト(例えば、現在表示されているユーザインターフェースの縮小された表示)の、移動パラメータ及び特性に基づいて、複数のユーザインターフェース間のナビゲーションを指示する。
電子デバイス上で動作するアプリケーション用の例示的なユーザインターフェースは、ナビゲーションジェスチャを開始してもよい端部領域の位置、及び任意選択的に、現在表示されているアプリケーションの現在の動作モードにおいてナビゲーションが制限されているか(例えば、ホームアフォーダンスがないことは、ナビゲーションが制限されており、ユーザインターフェース間をナビゲートするためには、確認入力又は拡張されたナビゲーションジェスチャ(例えば、押圧入力とそれに続く上方向スワイプ、又はタッチ保持入力とそれに続く上方向スワイプ)が必要であることを示す(図5X~図5AAに示すように、アフォーダンスを再表示するために初期入力が必要であり、その時点で以降のナビゲーションジェスチャが認識され得る))、に関してユーザに視覚的な案内を提供するアフォーダンス(例えば、ホームアフォーダンス5002)を含む。いくつかの実施形態では、ホームアフォーダンスは、例えば、仮想ボタンと同様の方式で、アクティブ化可能でなく、又はタッチ入力に直接応答しない。いくつかの実施形態では、本明細書に記載の方法を用いて実現されたホームアフォーダンス又は別のアフォーダンスは、アフォーダンス上への直接の接触を含むタッチ入力に応答する。
図5Aは、ウェブページ5004のコンテンツを示すウェブブラウジングユーザインターフェースを示す。ホームアフォーダンス5002が、タッチスクリーン112の底端部の近くに表示されたコンテンツの一部に重なって表示されている。ユーザインターフェースのナビゲーションプロセスは、図5A~図5Bに示すように、ホームアフォーダンス5002の下方、上、又は近傍の位置で開始され、画面の底部から上方向に移動するコンタクト5006によって起動される。
図5Bでは、ウェブブラウジング用ユーザインターフェースは、図5Aのウェブブラウザユーザインターフェースを表すカード5008で置き換えられている。入力が画面上を上方向に移動すると、図5A~5Cにおいて、カード5008は動的に収縮し、背景にホーム画面のぼかしビュー5010が現れる。いくつかの実施形態では、ホーム画面に適用されるぼかしの量は、接触5006の画面底部からの距離に応じて動的に変化する。
いくつかの実施形態では、図5Bに示すように、コンタクト5006による入力によってユーザインターフェースナビゲーションプロセスが起動されると、ホームアフォーダンス5002は表示を中止する(例えば、ホームアフォーダンス5006はタッチ入力もよる直接操作が可能ではなく、ナビゲーションジェスチャに関して、ユーザに視覚的な案内を提供する目的が達成されたときに表示を中止する)。カード5008のサイズが十分に小さい場合には、他のカード(例えば、システム制御パネルユーザインターフェース及び最近開いたアプリケーションのユーザインターフェースをそれぞれ表す、カード5012及び5014)がカード5008の隣に表示される。任意選択的に、複数のカードが表示されている場合は、入力の終了(例えば、コンタクト5006のリフトオフ)により、デバイスはマルチタスクモード(例えば、ユーザがアプリケーションを選択できる、アプリケーション切替ユーザインターフェースを表示して、前景アプリケーションとしてウェブブラウザアプリケーションに置き換える)に入る。
図5Cにおいて、コンタクト5006が上方向に移動し続け定義済みのホームナビゲーション基準が満たされると(例えば、コンタクト5006の定義済みの特性(例えば、位置、速度等)が既定閾値を満たすと)、画面上の他のカードは表示を停止し、カード5008のみが画面上に残る。カード5008のみが表示されている間(例えば、図5Cに類似するユーザインターフェースの状態)に入力が中止される(例えば、コンタクト5006のリフトオフが検出される)と、図5Dに示すように(例えば、破線の楕円形がコンタクト5006のリフトオフ位置を示す)、デバイスはホーム画面5016を表示する。タッチスクリーン112上にホーム画面6016が表示されているときは、タッチスクリーン上にはホームアフォーダンス5002は表示されない。
多くのコンテキストにおいて(異なるアプリケーション又は他のシステムレベルユーザインターフェース(例えば、通知センターのユーザインターフェース、カバーシートユーザインターフェース、制御パネルユーザインターフェース等)を表示するとき)、現在表示されているユーザインターフェースを消してホーム画面に行く必要があるので、ホームアフォーダンス5002は、あらゆる種類の背景上に表示されなければならず、背景も自発的に又はユーザ操作に応答して、かつ瞬時に及び時間の経過と共に変化し得る。加えて、ユーザには、タッチスクリーンの底端部領域に沿って、どこからナビゲーションジェスチャを開始するかを決める大きな自由度が与えられており、従って、ホームアフォーダンス5002は、ジェスチャに対する反応領域の広がりを示す大きな水平スパンと、画面を過度に乱雑にすること、及び不必要にユーザの気をそらすことを回避するための比較的小さい幅を有するように設計されている。その結果、下地コンテンツが時間に対して静止していても、ホームアフォーダンス5002の下にあるコンテンツの一部は、コンテンツの一部の様々な部分において、色及びルミナンス、並びに他のディスプレイ特性の変動を含む場合がある。従って、いくつかの実施形態では、アフォーダンスの各下位領域(例えば、各画素又は画素の小さなクラスタの各々)の外観は、アフォーダンス(及び、任意選択的に、アフォーダンスの各下位領域の境界の外側にわずかに延びているコンテンツの外観(例えば、コンテンツ又はアフォーダンスに適用される、ぼかしや平均化効果を介して))の下位領域の直接下にあるコンテンツの外観に基づき別々に決定される。図5Aに示すように、ホームアフォーダンス5002は、ウェブページ内のコンテンツ5004の一部の上に表示される。コンテンツのその部分は、ルミナンスレベルが異なる領域を含み、その結果、ホームアフォーダンス5002は、その長さ(例えば、水平範囲)に沿ったルミナンスの変動をも含む。
いくつかの実施形態では、図5Eに示すように、アフォーダンスの下にある背景コンテンツに、複数の画像処理フィルタが適用され(例えば、順次、又はフィルタの順序への制限なく)、アフォーダンスの外観を決定する。例えば、コンテンツの元のフルカラー画像を非飽和させて、コンテンツのルミナンスマップを得る。コンテンツのルミナンスが反転されて(例えば、背景のルミナンス値とアフォーダンスのルミナンス値との間の定義済みの反転関係(例えば、図5F、5R、5AE等に示す反転関係のうちの1つ)に応じて)、アフォーダンスの各画素におけるアフォーダンスのルミナンス値が求められる。アフォーダンスのルミナンスと下地コンテンツのルミナンスとの間の反転関係を、アフォーダンスと下地コンテンツの選択されたディスプレイ特性の値の間の相関の例として用いている。グレー値又はルミナンスの変形などの、他の種類のディスプレイ特性を様々な実施形態で使用してもよい。
図5Eに示すように、反転によってアフォーダンスと下地コンテンツとの間に外観上のコントラストが生成される。下地コンテンツの部分が明るい(例えば、より高いルミナンス値を有して)場合は、アフォーダンスの対応する部分はより暗く(例えば、より低いルミナンス値を有して)なる。例えば、異なるルミナンス値を有する非飽和の背景コンテンツの異なる部分(例えば、非飽和ストリップ内で1、2、3、及び4のラベルを付した円で囲まれた部分)に実施された反転の結果、異なるルミナンス値を有するアフォーダンスの対応する部分となる(例えば、反転ストリップ内で1、2、3、及び4とラベル付けした円で囲まれた部分)。図5Fは、対応する背景ルミナンス値から、アフォーダンスルミナンス値を生成するために用いられる反転曲線の例を示す。図5E内で円でラベル付けした背景及びアフォーダンスの対応する部分の値が、図7F内でも1、2、3、4とラベル付けした円でマークされている。アフォーダンスの濃淡も、図7F内で1、2、3、4とラベル付けした円で再現されている。いくつかの実施形態では、実行の反転後、ルミナンス値に閾値処理が実行されて、ルミナンス値のダイナミックレンジが低減される。例えば、アフォーダンスの各画素のルミナンス値を、アフォーダンスの最大ルミナンスの50%を上限として設けて、より低い内部の視覚コントラストを有する、より抑制された外観を生成する(例えば、反転後のアフォーダンスと閾値処理後のアフォーダンスとを比較して)。いくつかの実施形態では、アフォーダンス内の内部変動及びコントラストを更に低減するために、ぼかしフィルタが適用されて、コンテンツ内の隣接する複数の画素にわたるルミナンスの変動が平均化され、その結果、アフォーダンス内の隣接する複数の画素にわたるルミナンスの変動が平均化される。結局、得られるアフォーダンスは、下地コンテンツにおけるルミナンスの変動に対応する、ルミナンスの幅広いストロークの変動を有する。
異なる背景に対して目立つアフォーダンスを生成する場合に、ルミナンス値の単純な反転によって、ほとんどの場合に十分なコントラストが生じるが、アフォーダンスに対して全ルミナンス値範囲を使用すると、多くの場合、ユーザの注意をそらすことなり得るきつい外観となるであろう。従って、アフォーダンスのルミナンス値範囲を、コンテンツのルミナンス値範囲のサブレンジに制約することが好都合である。加えて、下地コンテンツの予想されるルミナンスレベルに応じて、アフォーダンスのルミナンス範囲の値は、「暗」アフォーダンス値範囲、又は「明」アフォーダンス値範囲に制約され、「暗」アフォーダンス又は「明」アフォーダンスのいずれかが生成される。いくつかの実施形態では、アフォーダンスが最初に表示された後は、下地コンテンツの外観が、たとえ非常に暗いから非常に明るいに変化したとしても、アフォーダンス外観タイプ(例えば、「暗」対「明」)は変化せず、その逆も同様である(図5G~図5Pに示すように)。いくつかの実施形態では、コンテンツの瞬間的な変化(例えば、短い時間スケールでのコンテンツのルミナンスレベルの一時的な反転)に応答して、アフォーダンス外観タイプ(例えば、「暗」対「明」)は変化しないが、コンテンツのより持続した変化(例えば、より長い時間スケールにわたるコンテンツのルミナンスレベルの反転)に応答して最終的には変化する。いくつかの実施形態では、アフォーダンス外観タイプ(例えば、「明」若しくは「暗」、又はアフォーダンスの特定の外観の値範囲)は、アフォーダンスが最初に表示されるときに、下地コンテンツの初期的なルミナンスレベルに従って選択され、コンテキスト切替イベントが発生するまで(例えば、アプリケーション間の切り替え、アプリケーション若しくはシステムユーザインターフェース間の切り替え、又は2つのシステムユーザインターフェース間の切り替え等)、アフォーダンスはそのアフォーダンス外観タイプを維持し、アフォーダンス外観タイプは新しいコンテキスト内の下地コンテンツに基づいて再決定される。一例として、図5Rは「明」アフォーダンスと「暗」アフォーダンスに対する反転関係の例を示しており(例えば、曲線はそれぞれ、LA」及び「DA」とラベル付けされている)、コンテンツのルミナンス値範囲(例えば、水平軸に沿った値)は、黒から白への全範囲(例えば、グレースケール画像のグレー値に対して[0、1]、カラー画像のルミナンス値に対して[0、255]、又はルミナンス若しくは他のアナログディスプレイ特性に対して[0、100%])であり、アフォーダンスルミナンス値範囲(例えば、垂直軸に沿った値)は、上方の値範囲(例えば、「明」アフォーダンスに対する値範囲)、又は下方の値範囲(例えば、「暗」アフォーダンスに対する値範囲)のいずれかに制約されている。いくつかの実施形態では、2つの値範囲は、オーバーラップしていない(例えば、ギャップによって分離されている)。図5Rに示すように、両曲線(例えば、曲線LA、及び曲線DA)は、コンテンツのルミナンスが増加すると、アフォーダンスのルミナンスの減少につながることを示している。
図5Fは、いくつかの実施形態に係る、図5Eに示す反転を実行するためのルミナンス反転曲線5017の例を示す。この例では、上限と下限との間で制約されるアフォーダンス値範囲は、背景の値範囲の半分を超え、純黒(値=0)と純白(例えば、値=1)を含まない。いくつかの実施形態では、反転曲線は連続しており、連続性を含まない。
図5G~図5Kは、いくつかの実施形態に係る、第1のアフォーダンス外観タイプ(例えば、「暗」アフォーダンスタイプ)のアフォーダンス(例えば、アフォーダンス5002-DA)の外観の変化を示す。図5G~図5Kは、タッチスクリーン112上に表示される、ウェブブラウザユーザインターフェース内に示されるコンテンツ5018のスクロールを示す。コンテンツ5018がスクロールしながら、タッチスクリーンの底端部の近くに表示されるアフォーダンス5002-DAの下地にあるコンテンツの一部が変化する。換言すれば、コンテンツ5018のスクロールの最中に、コンテンツ5018の異なる部分がアフォーダンス5002-DAの下に移動する。
図5Gに示すように、いくつかの実施形態では、アフォーダンス5002-DAが最初に表示されるとき(例えば、ウェブブラウザアプリケーションが開かれ、ウェブブラウザインターフェースがコンテンツ5018を伴って最初に表示されるとき)、コンテンツ5018の部分の全体的なルミナンスレベルが評価され、アフォーダンスに対して好適なアフォーダンス外観タイプが選択される。この特定の例では、アフォーダンスの下地にあるコンテンツ5018の部分は比較的暗く(例えば、全体的なルミナンスレベルが定義済みのルミナンス閾値未満である)、アフォーダンスルミナンス値範囲の「より暗い」部分(例えば、範囲[0、0.4])に対応するアフォーダンス外観タイプ(例えば、「暗」アフォーダンス外観タイプ)が、アフォーダンス用のアフォーダンス外観タイプとして選択される。アフォーダンスはフィルタのセットを用いて、例えば図5Eに示すように生成され、使用される反転関係は暗アフォーダンス外観タイプのもの(例えば、例えば、図5Rに示す曲線DA)である。
図5Hにおいて、ユーザインターフェースのナビゲーションジェスチャ(例えば、図5A~5Dに示すような、コンタクト5006によるホーム/マルチタスクジェスチャ)の反応領域の外部(例えば、上方)で開始されたスクロール入力(例えば、コンタクト5020のタッチスクリーンを横切る上方向への移動)は、タッチスクリーン上で検出される。スクロール入力により、ウェブページのコンテンツ5018が上方向にスクロールし、コンテンツ5018の以前には未表示であった部分がアフォーダンス5002-DAの下に現れる。図5Hに示す瞬間に、アフォーダンス5002-DAの直接下地にあるコンテンツ5018の一部は完全に白(例えば、ルミナンス値が1又は100%)であり、それに対応して、暗アフォーダンス外観タイプ(例えば、図5Rの曲線DAで示すような)用の反転関係に基づいて決定されるように、アフォーダンス5002-DAのルミナンス値は完全に黒(例えば、ルミナンス値が0又は0%)である。
図5I~図5Kは、スクロール入力の継続(例えば、コンタクト5020の上方向への移動と、それに続くコンタクト5020の最終速度でのリフトオフ)に伴って、コンテンツ5018がアフォーダンス5002-DAの下を上方向にスクロールすることを示す。アフォーダンス5002-DAの外観は、現在、アフォーダンス5002-DAの下地にあるコンテンツ5002-DAの部分に応じて変化する。アフォーダンス5002-DAのルミナンスは、暗アフォーダンス外観タイプ用の反転関係に基づいて決定される(例えば、図5Rの曲線DAで示すように)。
特に、図5Jに示す瞬間に、アフォーダンス5002-DAの直接下地にあるコンテンツ5018の一部は左側が完全に白(例えば、ルミナンス値が1又は100%)であり、右側が完全に黒(例えば、ルミナンス値が0又は0%)であり、それに対応して、左側のアフォーダンス5002-DAの半分は完全に黒(図5Hに示す場合と合致)であり、右側のアフォーダンス5002-DAの半分は完全には白ではない。代わりに、アフォーダンス5002-DAの右半分は、暗アフォーダンス外観タイプ(例えば、図5Rの曲線DAで示すような)用の反転関係に基づいて決定されるように、グレー(例えば、0よりも大きい(例えば、0.4)アフォーダンスルミナンス値を有する)である。換言すれば、暗アフォーダンス(例えば、5002-DA)のルミナンス値範囲は最大ルミナンス閾値(例えば、0.4)未満の範囲に制約される。
図5L~図5Pは、いくつかの実施形態に係る、第2のアフォーダンス外観タイプ(例えば、「明」アフォーダンスタイプ)のアフォーダンスの外観の変化を示す。
図5L~図5Pは、タッチスクリーン112上に表示される、ウェブブラウザユーザインターフェース内に示されるコンテンツ5018のスクロールを示す。このスクロールは、図5G~図5Kに示すスクロールの逆転である。
図5Lに示すように、いくつかの実施形態では、アフォーダンス5002-LAが最初に表示されるとき(例えば、ウェブブラウザアプリケーションが開かれ、ウェブブラウザインターフェースがコンテンツ5018を伴って最初に表示されるとき)、コンテンツ5018の部分の全体的なルミナンスレベルが評価され、アフォーダンスに対して好適なアフォーダンス外観タイプが選択される。この特定の例では、アフォーダンスの下地にあるコンテンツ5018の部分は比較的明るく(例えば、全体的なルミナンスレベルが定義済みのルミナンス閾値を超える)、アフォーダンスルミナンス値範囲の「より明るい」部分(例えば、範囲[0.6、1])に対応するアフォーダンス外観タイプ(例えば、「明」アフォーダンス外観タイプ)が、アフォーダンス用のアフォーダンス外観タイプとして選択される。アフォーダンスはフィルタのセットを用いて、例えば図5Eに示すように生成され、使用される反転関係は明アフォーダンスのもの(例えば、例えば、図5Rに示す曲線LA)である。
図5L~図5Mにおいて、ユーザインターフェースのナビゲーションジェスチャ(例えば、図5A~5Dに示すような、コンタクト5006によるホーム/マルチタスクジェスチャ)の反応領域の外部(例えば、上方)で開始されたスクロール入力(例えば、コンタクト5022のタッチスクリーンを横切る下方向への移動)は、タッチスクリーン上で検出される。スクロール入力により、ウェブページのコンテンツ5018が下方向にスクロールし、コンテンツ5018の以前には未表示であった上方部分がアフォーダンス5002-LAの下に現れる。
図5Mに示す瞬間に、アフォーダンス5002-LAの直接下地にあるコンテンツ5018の一部は左側が完全に白(例えば、ルミナンス値が1又は100%)であり、右側が完全に黒(例えば、ルミナンス値が0又は0%)であり、それに対応して、右側のアフォーダンス5002-LAの半分は完全に白であり、左側のアフォーダンス5002-LAの半分は完全には黒ではない。代わりに、アフォーダンス5002-LAの左半分は、明アフォーダンス外観タイプ(例えば、図5Rの曲線LAで示すような)用の反転関係に基づいて決定されるように、グレー(例えば、0よりも大きい(例えば、0.6)ルミナンス値を有する)である。換言すれば、明アフォーダンスのアフォーダンスルミナンス値範囲は最小ルミナンス閾値(例えば、0.6)を超える範囲に制約される。いくつかの実施形態では、図5J及び図5Mに示すように、同じ背景に対して、暗アフォーダンス5002-DAの全体的な外観は、明アフォーダンス5002-LAの全体的な外観よりも、より暗い。
図5N~図5Pは、スクロール入力の継続(例えば、コンタクト5022の下方向への移動と、それに続くコンタクト5022の最終速度でのリフトオフ)に伴って、コンテンツ5018がアフォーダンス5002-LAの下を下方向にスクロールすることを示す。アフォーダンス5002-LAの外観は、現在、アフォーダンス5002-LAの下地にあるコンテンツ5002-DAの部分に応じて変化する。アフォーダンス5002-LAのルミナンスは、明アフォーダンス外観タイプ用の反転関係に基づいて決定される(例えば、図5Rの曲線LAで示すように)。
図5Oに示す瞬間に、アフォーダンス5002-LAの直接下地にあるコンテンツ5018の一部は完全に白(例えば、ルミナンス値が1又は100%)であり、それに対応して、アフォーダンス5002-LAのルミナンス値は完全には黒ではない。代わりに、アフォーダンス5002-LAは、明アフォーダンス外観タイプ(例えば、図5Rの曲線LAで示すような)用の反転関係に基づいて決定されるように、グレー(例えば、0よりも大きい(例えば、0.6)ルミナンス値を有する)である。換言すれば、明アフォーダンスのルミナンス値範囲は最小ルミナンス閾値(例えば、0.6)を超える範囲に制約される。
図5Qは、いくつかの実施形態に係る、背景(例えば、コンテンツ5018)の変化が同じと想定した場合の、2つのタイプのアフォーダンス外観タイプ(例えば、LA及びDA)に対するアフォーダンス5002の外観の違いを示す。
図5Qは、図5G~5P図に示す各状態でのアフォーダンス5002の外観の一覧を示す。状態は、5つのグループに分類してあり、各々は、ウェブブラウザユーザインターフェース内に示される、コンテンツ5018のそれぞれの状態に対応している。例えば、上から下に、5つのグループは、(i)図5G及び図5P、(ii)図5H及び図5O、(iii)図5I及び図5N、(iv)図5J及び図5M、並びに(v)図5K及び図5Lに対応する。
図5Qに示すように、対応するコンテンツ状態に対応する各グループに対して、アフォーダンス5002は(例えば、同じコンテンツストリップでアフォーダンスのDAの例とLAの例とを比較すると)、明アフォーダンス外観タイプに対するよりも暗アフォーダンス外観タイプに対して、全体的により暗い外観(より低い全体的なルミナンス)を有している。
図5Rは、いくつかの実施形態に係る、暗アフォーダンス外観タイプと明アフォーダンス外観タイプに対する、値範囲、及びアフォーダンスのディスプレイ特性(例えば、ルミナンス又はグレー値)と下地コンテンツとの反転関係を示す。
図5Qに示す外観の差は図5Rにおいても反映されており、明アフォーダンスに対するアフォーダンスルミナンス値範囲は、暗アフォーダンスに対するアフォーダンスルミナンス値範囲の完全に上方にあり、2つの値は任意選択的にオーバーラップしていない。
図5S~図5AAは、いくつかの実施形態に係る、背景の外観の変化及び背景ユーザインターフェースに関連する動作モードの変化に応答する外観、を有するアフォーダンスを含む、ユーザインターフェースを示す。
図5Sでは、ウェブブラウザアプリケーションが起動され、ウェブブラウザユーザインターフェース5024がタッチスクリーン上に表示されている。この例では、ウェブブラウザユーザインターフェースは、デバイス100の向きに応じて横長の向きで表示されている。第1の状態(例えば、完全可視状態/高コントラスト状態5002-A)では、ホームアフォーダンス5002はタッチスクリーンの底端部の近くに表示されている。アフォーダンス5002に対するアフォーダンス外観タイプは、任意選択的に、アフォーダンス5002の下地にあるウェブページコンテンツの一部の、初期の全体的なルミナンスレベルに基づいて選択される。
図5S~図5Tは、メディアアイテム(例えば、ムービークリップ「Live Bright」)が再生のために選択されている(図5Sのメディアアイテムに関連付けられた再生アイコン上のコンタクト5026によるタップ入力)ことを示している。メディアアイテムの選択に応答してメディアプレーヤアプリケーションが起動され、メディアプレーヤアプリケーションのユーザインターフェース(例えば、ユーザインターフェース5028)がタッチスクリーン上に示される。図5Tでは、メディアプレーヤアプリケーションは第1のモード(例えば、表示された制御を有するフルスクリーンモード、又はインタラクティブモード)で動作している。メディア再生がちょうど開始されたとき、ユーザインターフェース5028は、メディア再生領域上に重なる複数の制御領域(例えば、実質的に全画面を占めるメディアコンテンツ)、メディアスクラバなどの各種制御を含む制御領域、メディアプレーヤアプリケーションを閉じてウェブブラウザアプリケーションのユーザインターフェース5024に戻るための「完了」ボタン、音量スライダ制御、巻き戻し制御、一時停止/再生制御、及び早送り制御を含んでいる。ユーザは最初に、メディアコンテンツがどのように見え聞こえるかを確認してから、デバイスによって選択された既定の開始位置又は音量を調整し、又は以前のアプリケーションに戻ることを希望する可能性がより高いため、これらの制御は最初はメディア再生領域上に表示される。いくつかの実施形態では、ウェブブラウザユーザインターフェース5024からメディアプレーヤユーザインターフェース5028に切り替えるときに、コンテキスト切替イベントがデバイスによって登録され、アフォーダンス5002のアフォーダンス外観タイプは、メディア再生が最初に開始されたとき、アフォーダンス5002の下地にあるメディアコンテンツの一部の初期の全体的なルミナンスレベルに基づき再決定される。アフォーダンス外観タイプが再決定されるかどうかに関わらず、アフォーダンス5002は最初は、ユーザインターフェース5028上に完全可視状態(例えば、高コントラスト状態)で表示される。
図5Uは、メディア再生の開始後の第1の所定の時間の間(例えば、10秒)、制御領域はメディアコンテンツの上に可視のまま残っており、アフォーダンス5002はユーザインターフェース5028の上に完全可視状態(例えば、完全コントラスト状態)で残っていることを示している。この期間の間に、アフォーダンス5002の外観が第1のルールのセットに従って決定される。いくつかの実施形態では、第1のルールのセットは、図5Eに示すようなフィルタのセットと、図5Rに示すような反転関係とを含み、フィルタに対する第1のパラメータのセット及び/又は反転曲線の形状(単数又は複数)が、アフォーダンスの第1の状態に対して、任意選択的に予め選択される。図5S~図5Uでは、下地コンテンツがフルカラーではあるものの、アフォーダンス5002-Aは色情報のないグレーアフォーダンスである。
図5Vでは、メディア再生が開始された後の、第1の所定の時間(例えば、10秒)は満了している。第1の所定の時間の満了に応答して、制御領域はメディアコンテンツの上への表示が中止されている。制御領域のフェーディングは、瞬時に又は短いアニメーションにわたって起こり得る。第1の所定の時間の満了及び/又はメディアプレーヤユーザインターフェース上の制御領域の表示の停止は、メディアプレーヤユーザインターフェースが第2のモード(例えば、表示されている制御がないフルスクリーンディスプレイモード又はメディア消費モード)で動作していることを示す。加えて、第1の所定の時間の満了に応答して、デバイスは第1のルールのセットとは異なる第2のルールのセットに従ってアフォーダンス5002の外観を決定する。換言すれば、アフォーダンスは第2の状態(半可視状態/低コントラスト状態5002-A')で表示される。いくつかの実施形態では、第2のルールのセットは、図5Eに示すようなフィルタのセットと、図5Rに示すような反転関係とを含み、フィルタに対する第2のパラメータのセット及び/又は反転曲線の形状(単数又は複数)が、アフォーダンス5002の第2の状態(例えば、半可視状態/低コントラスト状態5002-A')に対して、任意選択的に予め選択される。いくつかの実施形態では、低コントラスト状態において、アフォーダンス5002は下地コンテンツのいくつかの色を維持する。例えば、コンテンツのルミナンスマップを得るために下地コンテンツを完全に非飽和化する代わりに、各画素に対して色値(例えば、RGB値)の70%のみを非飽和化し、下地コンテンツ内の各画素に対して色情報の30%は、アフォーダンスの最終的な外観に維持される。いくつかの実施形態では、アフォーダンスが完全不透明にならないようにアフォーダンスの透明レベルが調整され、下地コンテンツのいくつかの色情報がアフォーダンスの画素に転送される。いくつかの実施形態では、ルミナンス反転を実行した後に、アフォーダンスの残りの色飽和を増加して(例えば、30%だけ)、アフォーダンスを少しより鮮やかに見えるようにして、より良好に背景と調和するようにしている。アフォーダンス5002の第2の状態に対する視認性又はコントラストの低減は、メディア再生が最初に開始された後、最初の一定期間後には、ユーザがいかなる制御ともやり取りする可能性が低減していることを考慮している。いくつかの実施形態では、第1の状態から第2の状態への遷移は、急峻で不連続な遷移とは対照的に、任意選択的に第1の状態と第2の状態との間の複数の中間状態にわたる段階的で連続的な遷移である。段階的な遷移は、メディアコンテンツを見ることからユーザの注意をそらす可能性が低い。
図5V~図5Wに示すように、アフォーダンス5002が第2の状態(例えば半可視状態/低コントラスト状態5002-A')にある間、アフォーダンス5002の外観は、第2のルールのセットに基づき、アフォーダンスの下地にあるコンテンツの変化に応じて変化する。
図5Xでは、アフォーダンス5002が第2の所定の時間(例えば、5秒)の間、第2の状態に置かれた後、アフォーダンス5002は第2の状態から不可視状態(例えば、第3の状態と呼ばれる)に遷移し、又は換言すると、アフォーダンスは完全にフェードアウトしメディアコンテンツの上への表示が中止される。いくつかの実施形態では、第2の状態から第3の状態への遷移は急峻で不連続な遷移とは対照的に、任意選択的に第2の状態と第3の状態との間の複数の中間状態にわたる段階的で連続的な遷移である。段階的な遷移は、メディアコンテンツを見ることからユーザの注意をそらす可能性が低い。
図5Y~図5AAは、メディアコンテンツ5028上にアフォーダンス5002が表示されなくなった後、入力が検出されるまで(例えば、デバイスの移動、タッチスクリーン上のコンタクトによるタップ入力又はスワイプ入力、ディスプレイの底端部領域の近くへのコンタクトなど)、メディア再生が継続することを示している。入力を検出したことに応答して、アフォーダンス5002がメディアコンテンツ5028の上に再表示される。
図5Yに示すように、デバイス100の動き(又は、タップ、スワイプ、ディスプレイの底端部領域の近くへのコンタクトのタッチダウンなどの、他のタイプの入力)に応答して、第2の状態(例えば、半可視状態/低コントラスト状態5002-A')において、アフォーダンス5002がメディアコンテンツ5028の上に(例えば、他の制御領域と共に)再表示される。いくつかの実施形態では、制御領域はこの入力に応答して再表示されることはなく、デバイスは制御を表示せずに、メディアプレーヤアプリケーションのフルスクリーンディスプレイモードで動作を継続する。いくつかの実施形態では、閾値時間内に別の入力(例えば、タップ入力又はスワイプ入力)が検出されなければ、アフォーダンスは再び再表示を中止する。閾値時間内に必要な入力が検出された場合は、アフォーダンスは第1の状態で再び表示され、メディア制御領域も任意選択的に再表示される。ユーザインターフェースは、メディアプレーヤアプリケーションの第1の動作モード(例えば、表示された制御を有するフルスクリーン再生モード、又はインタラクティブモード)に戻される。アフォーダンス5002を第1の状態で表示し直ちに第1の動作モードに戻ることとは対照的に、第1の入力に応答して最初にアフォーダンス5002を第2の状態で提供することは、ホームアフォーダンスの位置とユーザインターフェースの状態に関して、ユーザに何らかの指示を提供するが、同時に、入力が故意ではない可能性があり、ユーザは本当はメディアコンテンツを見ることから注意をそらしたくないということを考慮している。ユーザの意図が、制御及び/又はアフォーダンス5002を使用することである場合、ユーザからの確認入力(例えば、同一コンタクトの閾値時間にわたる継続タッチ、閾値押圧強度での同一コンタクトによる押圧入力、又は別のコンタクトによる第2のタップ入力)が要求される。
図5Z及び図5AAは、いくつかの実施形態では、アフォーダンス5002が表示されていない間に(図5Xに示すように)、又はアフォーダンス5002が第2の状態(例えば、半透明/低コントラスト状態5002-A')で表示されている間に(図5Yに示すように)、コンタクト(例えば、コンタクト5030)による入力をタッチスクリーン上で検出することを示している。コンタクト5030の入力に応答して、アフォーダンス5002が第2の状態(例えば、半可視/低コントラスト状態5002-A')で表示される(既に表示されていなければ)。加えて、メディア制御領域もメディアプレーヤユーザインターフェース上に再表示される。換言すれば、メディアプレーヤアプリケーションは第1の動作モードに戻っている。いくつかの実施形態では、ディスプレイの底端部領域の近くでの継続タッチ入力により、デバイスは最初に第2の状態でアフォーダンスを再表示し(例えば、接触が検出されたとき)、次いで第1の状態でアフォーダンスを再表示する(例えば、コンタクトが、タッチダウン以降、閾値移動量未満であって閾値時間を超えて維持された時点で)。いくつかの実施形態では、ナビゲーションジェスチャは、アフォーダンスが第1の状態で再表示された後にコンタクトの移動が検出されたときに(コンタクトのリフトオフなしで)、デバイスによって認識される。いくつかの実施形態では、アフォーダンスを第1の状態で再表示するために、コンタクトが閾値時間にわたって実質的に静止状態を維持することを必要とする代わりに、デバイスは、コンタクトが閾値移動量未満であってコンタクトの強度が定義済みの軽い押圧強度閾値を超えることを要求する。いくつかの実施形態では、ナビゲーションジェスチャは、アフォーダンスが第1の状態で再表示された後にコンタクトの移動が検出されたときに(コンタクトのリフトオフなしで)、デバイスによって認識される。
図5AAでは、メディアプレーヤアプリケーションが第1の動作状態(例えば、インタラクティブ状態)に戻ることに応答して、アフォーダンス5002も第2の状態(例えば、半可視状態/低コントラスト状態5002-A')から遷移して第1の状態(例えば完全可視状態/高コントラスト状態5002-A)に戻る。いくつかの実施形態では、第2の状態から第1の状態への遷移は、第1の状態と第2の状態との間の複数の中間状態にわたる遷移とは対照的に、任意選択的に不連続な遷移である。急峻な遷移は、ユーザインターフェースの動作モードが変更されたことをユーザに警告する可能性が高く、ユーザが制御にアクセスし、その後の入力を提供する際の待ち時間を減少させる。いくつかの実施形態では、確認入力(例えば、第1のタップに応答してアフォーダンスが第2の状態で表示された後の第2のタップ、又は、第2の状態でのアフォーダンスの表示をトリガしたものと同じコンタクトによる持続したタッチ)が検出されたときは、図5Zに示す状態をスキップし、図5Yに示す状態から図5AAに示す状態への直接遷移となる。
図5AB~図5ACは、いくつかの実施形態に係る、異なる動作モードでの背景に対するアフォーダンスの外観の違いを示す。
図5ABでは、アフォーダンスの第1の状態5002-Aは不透明であり、メディアプレーヤユーザインターフェースが第1の動作状態(例えば、インタラクティブ状態)で動作しているとき、及びメディアコンテンツの上にメディア制御が表示されているときに使用される。第2の状態5002-A'は半透明であり、メディアプレーヤユーザインターフェースが第2の動作状態(例えば、保護状態、又はメディア消費状態)で動作し、メディアコンテンツの上にメディア制御が表示されていないときに使用される。第3の状態は、アフォーダンスがもはや表示されておらず、ユーザインターフェースが第2の動作状態(例えば、保護状態、又はメディア消費状態)で動作を継続しているときに使用される。メディアプレーヤが(例えば、フルスクリーンモード又は横長モードで)開始された後、所定の時間にわたって入力が何ら受信されないとき、アフォーダンス5002はこれらの状態を経由する。
図5ACでは、アフォーダンスは不可視状態で開始されるか、又はメディアコンテンツの上には表示されない(例えば、ユーザ入力の不在によりアフォーダンス5002の表示が中止された後で)。第1の入力又は入力の第1の部分に応答して、アフォーダンスは第2の状態で表示され、一方でメディアプレーヤユーザインターフェースは第2の動作状態(例えば、保護状態、又はメディア消費状態)を維持している。次いで、第2の入力又は入力の第2の部分に応答して、アフォーダンスは第1の状態5002-Aで表示され、ユーザインターフェースは第1の動作状態(例えば、インタラクティブ状態)に戻る。第1の状態5002-Aにおいて、アフォーダンスは不透明である。第2の状態5002-A'において、アフォーダンスは半透明である。
いくつかの実施形態では、アフォーダンスのアフォーダンス外観タイプは固定され、下地コンテンツが変化したときに変化しない。これによりアフォーダンスに対して一貫した外観が提供され、ユーザにとって注意をそらすことが少なくなり得る。しかし、いくつかのシナリオにおいて、アフォーダンスが表示されているコンテンツが広範にわたって変動する場合、コンテンツが全体的に暗い階調から全体的に明るい階調に変化した後に、又はその逆の場合に、固定したアフォーダンスタイプは下地の背景に対して十分なコントラストを提供できない場合がある。更に、時には、コンテンツのルミナンスレベルの切り替えは短期的な切り替えであり(例えば、白い背景上での黒いテキストのスクロール)、そのような場合には、そのような短期的な変化に応答してアフォーダンスタイプを切り替えると、ユーザにとって非効率であり、ユーザを混乱させ、注意をそらす可能性がある。一方、コンテンツのルミナンスレベルの切り替えが、より永続的又は長期的な切り替えの場合(例えば、フルカラーの物語の電子ブックを、あるページ(例えば、夕空の暖かい色調を表すページ)から別のページ(例えば、星の多い夜景を表すページ)にめくる場合)、アフォーダンス外観タイプを固定すると、長期間にわたってアフォーダンスの視認性が不十分になり得る。
上記課題に対処するために、いくつかの実施形態では、過度にユーザの注意をそらすことなく、依然として視認性を維持する必要性との均衡を保ちながら、デバイスはアフォーダンスがそのアフォーダンス外観タイプを切り替えることを可能にし、それに対応して、定義済みのレンジ切替基準が満足されたときに、アフォーダンス外観の値範囲を、ある値範囲から別の値範囲へとシフトさせる。いくつかの実施形態では、レンジ切替基準は、アフォーダンスの下地にある(及び任意選択的に、周囲の)コンテンツの全体的なルミナンス状態の測定値(例えば、累積及び統合されたルミナンス値)が、コンテンツの外観の時間にわたる変化により既定閾値を横切ったときに満足される。いくつかの実施形態では、コンテンツの全体的なルミナンス状態の測定値は一定時間にわたるコンテンツの関連する一部のルミナンスレベルを考慮し(例えば、加重移動平均を用いて)、更に現在のアフォーダンスのアフォーダンス外観タイプが変化しないようにバイアスを付加している(例えば、バイアスは、任意選択的に、コンテンツのより古いルミナンスレベルにより高い重みを、コンテンツのより新しいルミナンスレベルにより小さい重みを付与することにより実現される)。現在のアフォーダンス外観タイプに対する累積効果とバイアスにより、コンテンツの時間変化に対してアフォーダンス外観を安定化するという短期ゴールと、変化したコンテンツ上のアフォーダンスを継続的に十分に際立たせるという長期ゴールの両方が満足される。
図5ADは、いくつかの実施形態に係る、時間に対する下地コンテンツの変化に基づいて、アフォーダンス外観タイプ間で動的に切り替わるアフォーダンスを含むユーザインターフェースを示す。
図5ADは、アフォーダンス5002が暗アフォーダンス(最初に、図5Gに示すような状態でユーザインターフェース上に表示されている)として開始した単純な例を示す。次いで、アフォーダンス5002の下地のコンテンツが、例えば、スクロールを通じて比較的明るい状態(例えば、図5Kに示すようなユーザインターフェースの状態)に変化している。この例では、アフォーダンス5002のアフォーダンス外観タイプはコンテンツのスクロール中に変化しなかったが、その理由は例えば、スクロールが比較的速く、現在選択されているアフォーダンス外観タイプを維持するためのバイアスが、短い時間スケールの間でのコンテンツの外観の変化に対して打ち勝ったからである。コンテンツのスクロールが停止した後、アフォーダンスは明るい状態で示されるコンテンツ上に重なったままである。コンテンツの全体的なルミナンス状態は時間と共に徐々に変化し、現在の背景のルミナンスレベルが、(例えば、アフォーダンスが最初に表示されていたときに、又はコンテンツのスクロール中に)先に示されていた背景のルミナンスレベルに取って代わり優勢になる。最終的に、時刻t1において、背景の全体的なルミナンス状態の測定値が既定閾値と交差し、レンジ切替トリガ基準が満たされる。いくつかの実施形態では、レンジ切替トリガ基準が満たされたことの検出に応答して、デバイスは直ちにアフォーダンス外観タイプを切り替え、新たに選択されたアフォーダンス外観タイプに応じてアフォーダンスを表示する(例えば図5ADの右側のユーザインターフェースの上に示すような)。アフォーダンスの外観は図5Lに示すものと同じであるが、この例では、ユーザは、コンテンツ5018の上にアフォーダンスを明アフォーダンスとして表示させるために、ウェブブラウザアプリケーションを閉じて再始動する必要はない。
いくつかの実施形態では、レンジ切替トリガ基準が満たされたとき、デバイスは第1のアフォーダンス外観タイプ(例えば、暗アフォーダンス外観タイプ)から、第2のアフォーダンス外観タイプ(例えば、明アフォーダンス外観タイプ)への段階的な遷移を開始する。例えば、所定の遷移期間中(例えば、T=t2-t1、5秒)、アフォーダンス外観の値範囲は第1と第2の外観タイプの値範囲の間の1つ以上の中間範囲を経由する。遷移期間中の任意の時点で、アフォーダンスの外観は、アフォーダンス外観の値範囲として現在使用されている特定の中間の値範囲に基づき決定される。図5ADの中央のユーザインターフェースに示すように、同一の背景コンテンツを想定すれば、アフォーダンスは暗アフォーダンスと明アフォーダンスの間の中間のルミナンスレベルを有している。
いくつかの実施形態では、遷移期間の間、下地コンテンツの全体的なルミナンス状態の測定値は、より最近のコンテンツのルミナンスレベルが以前の時間でのコンテンツのルミナンスレベルに取って代わりながら、時間と共に継続して更新される。レンジ切替トリガ基準が再び満たされた場合(例えば、以前の切り替えで使用したのと同一の閾値で、又は現在選択されているアフォーダンス外観タイプに依存する異なる閾値で)、第2のアフォーダンス外観タイプへの切り替えは完全には完了されず、アフォーダンスは第1のアフォーダンス外観タイプに戻される。この特定の例では、コンテンツは変化せず、遷移期間中はレンジ切替トリガ基準は再び満たされることはないので、その結果、第2のアフォーダンス外観タイプへの切り替えは時刻t2(例えば、t1とt2との間の期間が定義済みの遷移期間である)で完全に完了する。第2のアフォーダンス外観タイプへの切り替えが完了すると、下地コンテンツの全体的なルミナンス状態の測定値は時間と共に継続して更新され、下地コンテンツ内の累積的変化(例えば、コンテキストの切り替え、スクロール等)によって、レンジ切替トリガ基準が再び満たされた場合、第1のアフォーダンス外観タイプへの切り替えが再び起きる場合がある。
図5AEは、いくつかの実施形態に係る、値範囲、並びに、アフォーダンスのディスプレイ特性(例えば、ルミナンス)と、明アフォーダンス外観タイプ(A)、暗アフォーダンス外観タイプ(C)、及び遷移アフォーダンス外観タイプ(B)に対する下地コンテンツとの反転関係を示す。いくつかの実施形態では、図5AEに示す反転曲線は、任意選択的に図5ADのアフォーダンス5002の外観を生成する際に使用される。
5AEに示す例では、異なる外観のアフォーダンスタイプ(A)、(B)、(C)に対する反転曲線の形状は同一である。同一形状の反転曲線を使用することで、背景ルミナンス値とアフォーダンスルミナンス値との間の相関値をグラフの各点に対して計算し、データテーブルに保存することが可能となり、それにより、アフォーダンスタイプ間の範囲である遷移が継続的に多くの中間の値範囲を経由するときに、背景内の対応する画素のルミナンスに基づいたテーブルのルックアップにより、アフォーダンス上の各画素のルミナンスは、少なくとも部分的には、単純に決定することができる。例えば、遷移期間中に、複数の均等に間隔を空けた時間ポイントの各々は、明アフォーダンスの値範囲と暗アフォーダンスの値範囲との間の対応する中間の値範囲に関連しており、遷移期間中にコンテンツが継続的に変化する場合であっても、その時間ポイントに対する対応する中間の値範囲の反転曲線に基づき、アフォーダンス外観を時間ポイントの各々において素早く決定することができる。
図5AEに示すように、反転曲線5032は2つの不連続を含む。左の不連続5034は、等ルミナンス線5036(例えば、アフォーダンスルミナンス=背景ルミナンス)と不連続のない反転曲線との交点である(例えば、背景ルミナンス25.4%における)干渉点に対処するために導入されている。左の不連続は、アフォーダンスが背景ルミナンスとは全く同一ではないルミナンス値を有することを可能にし、それにより一部の特定の場合に「不可視」アフォーダンスの可能性を回避している。右の不連続5038は、等ルミナンス線5036と不連続のない反転曲線との交点である(例えば、ルミナンス74.51%における)干渉点に対処するために導入されている。右の不連続は、アフォーダンスが背景ルミナンスとは全く同一ではないルミナンス値を有することを可能にし、それにより一部の特定の場合に「不可視」アフォーダンスの可能性を回避している。
加えて、不連続5036及び5038の近くで、アフォーダンスのルミナンスに特別の補正がなされ、そのため厳密な反転(例えば、背景ルミナンスを増加させることはアフォーダンスのルミナンスを減少させることに対応し、その逆も同様である)が常に見られるとは限らない。例えば、左の不連続5036に対する補正領域において、背景ルミナンスがより高い側でのアフォーダンスルミナンスは比較的平坦であり、一方、背景ルミナンスがより低い側でのアフォーダンスルミナンスは、通常の反転関係の小さな逆転を含んでいる。右の不連続5038に対する補正領域では、背景ルミナンスがより低い側のアフォーダンスルミナンスは、通常の反転関係の相対的に大きな逆転を含んでいる。これらの補正領域の精密な形状の設計は、これら領域内のルミナンス値に対する人間の視覚の応答性を考慮し、また、干渉点の近傍で、アフォーダンスと背景との間に十分なコントラストを創出する必要性も考慮している。例えば、干渉領域の幅、及び通常の反転関係の調整は、これらの干渉点での背景上のアフォーダンスにとって必要なコントラストの量に依存する。
図5AEに示すグラフ(A)、(B)、(C)の各々は、背景ルミナンスバー及びアフォーダンス応答バーを含む(グラフ領域の下に示す)。各図の背景ルミナンスバー及びアフォーダンス応答バーは、同じ図内の反転曲線5032に従って生成された、対応する背景ルミナンス及びアフォーダンスルミナンスを示す。加えて、グラフ(A)の暗アフォーダンスに対する背景色は白であり、それにより暗アフォーダンス(例えば、完全に黒のアフォーダンスを含むが、完全に白のアフォーダンスは含まない)の全ての影を示すことができる。明アフォーダンスに対するグラフ(C)の背景色は黒であり、それにより明アフォーダンス(例えば、完全に白のアフォーダンスを含むが、完全に黒のアフォーダンスは含まない)の全ての影を示すことができる。遷移アフォーダンスに対するグラフ(B)の背景色はグレー(50%ルミナンス)である。50%の背景ルミナンスに対するアフォーダンスルミナンスはわずかに明るいグレーの色合い(例えば、50%未満のルミナンス値を有する)であり、グラフ(B)の底部に表示された、水平軸に沿った中間点でのアフォーダンス応答と50%グレーバーとを比較することにより示される。
図5AFは、いくつかの実施形態に係る、暗アフォーダンス外観タイプ(グラフ(A)で示す)から明アフォーダンス外観タイプ(例えば、グラフ(C)で示す)への、複数の遷移アフォーダンス外観タイプ(例えば、グラフ(B-1)、(B-2)、(B-3)で示す)を介した段階的なシフトを示す。
いくつかの実施形態では、レンジ切替トリガ基準が時刻t1にて満たされたとき、デバイスは第1のアフォーダンス外観タイプ(例えば、暗アフォーダンス外観タイプ)から、第2のアフォーダンス外観タイプ(例えば、明アフォーダンス外観タイプ)への段階的な遷移を開始する。その時、所定の遷移期間中(例えば、T=t2-t1)に、アフォーダンス外観の値範囲は、複数の中間範囲を経由して(例えば、中間範囲の総数はディスプレイのリフレッシュレート、及び暗アフォーダンスに対するアフォーダンスルミナンスの上限と1との間のギャップ値)、第1及び第2の外観タイプの値範囲間でシフトする(例えば、切り替えの方向に依存して上方向又は下方向へ)。遷移期間T中の任意の時点で、アフォーダンスの外観は、アフォーダンス外観の値範囲として現在使用されている特定の中間の値範囲に基づき決定される。
いくつかの実施形態では、遷移期間の間、下地コンテンツの全体的なルミナンス状態の測定値は、より最近のコンテンツのルミナンスレベルが以前の時間でのコンテンツのルミナンスレベルに取って代わりながら、時間と共に継続して更新される。レンジ切替トリガ基準が再び満たされた場合(例えば、以前の切り替えで使用したのと同一の閾値で、又は現在選択されているアフォーダンス外観タイプに依存する異なる閾値で)、第2のアフォーダンス外観タイプへの切り替えは完全には完了されず、アフォーダンス外観の値範囲のシフトは方向が逆転し、アフォーダンスは最終的に第1のアフォーダンス外観タイプに戻されてもよい。遷移期間中に、レンジ切替トリガ基準が2度目に満たされなければ、第2のアフォーダンス外観タイプへの切り替えは遷移期間の最後で完了に至る。第2のアフォーダンス外観タイプへの切り替えが完了すると、下地コンテンツの全体的なルミナンス状態の測定値は時間と共に継続して更新され、下地コンテンツ内の累積的変化(例えば、コンテキストの切り替え、スクロール等)によって、レンジ切替トリガ基準がこの次に満たされた場合、第1のアフォーダンス外観タイプへの切り替えが再び起きる場合がある。
5AFに示す例では、異なる外観のアフォーダンスタイプ(A)、(B-1)、(B-2)、(B-3)、及び(C)に対する反転曲線の形状は同一である。同一形状の反転曲線を使用することで、背景ルミナンス値とアフォーダンスルミナンス値との間の相関値をグラフの各点に対して(又は各中間の値範囲に対する反転曲線に対して)計算し、データテーブルに保存することが可能となり、それにより、アフォーダンスタイプ間の範囲である遷移が継続的に多くの中間の値範囲を経由するときに、背景内の対応する画素のルミナンスに基づいたデータテーブルの短時間のルックアップにより、アフォーダンス上の各画素のルミナンスは、少なくとも部分的には、単純に決定することができる。例えば、遷移期間中に、複数の均等に間隔を空けた時間ポイントの各々は、明アフォーダンスの値範囲と暗アフォーダンスの値範囲との間の対応する中間の値範囲に関連しており、遷移期間中にコンテンツが継続的に変化し、下地コンテンツが、アフォーダンスの異なる部分の下部でルミナンスの大きな変動を有する場合であっても、データテーブルに予め保存したデータに基づき、アフォーダンス外観を時間ポイントの各々において、依然として素早く決定することができる。
図5AG~図5AKは、図5AFに示す異なるアフォーダンスタイプに対する、アフォーダンスのディスプレイ特性と下地コンテンツの反転関係の複製を拡大したものである。
図6A~図6Cは、いくつかの実施形態に係る、下地コンテンツの外観の変化に応じて、アフォーダンスの外観を変化させる方法6000を説明するフロー図である。方法6000は、ディスプレイ及びタッチ感知面を有する電子デバイス(例えば、図3のデバイス300、又はポータブル多機能デバイス100、図1A)において実行される。いくつかの実施形態では、電子デバイスは、タッチ感知面との接触の強度を検出するための1つ以上のセンサを含む。いくつかの実施形態では、タッチ感知面及びディスプレイは、タッチ感知ディスプレイに統合される。いくつかの実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。いくつかの実施形態では、ディスプレイはタッチ感知面から分離している。方法6000のいくつかの動作が任意選択的に組み合わされ、及び/又はいくつかの動作の順序が任意選択的に変更される。
方法6000は、アフォーダンス(例えば、ホーム画面を表示するためのジェスチャの許容可能な開始領域を示すアフォーダンス)を、アフォーダンスのディスプレイ特性(例えば、グレー値、又はルミナンス値)が、下地コンテンツの同じディスプレイ特性の変化に基づいて動的に変化する形で、コンテンツ上に表示する方法に関する。具体的には、アフォーダンスのディスプレイ特性の値は、下地コンテンツの同じディスプレイ特性の値の変化とは反対の方向に変化する(例えば、アフォーダンスのグレー値は、下地コンテンツのグレー値の反転である)。加えて、アフォーダンスのディスプレイ特性の値は、下地コンテンツのディスプレイ特性の値よりも小さい値範囲に制約されている。その結果、デバイスは、注意をそらすことがより少なく又は邪魔にならない形でアフォーダンスを提供し、一方で(例えば、スクロール、コンテキストの切り替え、及び動的コンテンツの再生により)、コンテンツの外観が変化し続けながらも、アフォーダンスの十分な視認性を維持している。本明細書で説明した形で、下地コンテンツの外観に基づいて、アフォーダンスに動的に変化させた外観を提供することにより、デバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイス間のインターフェースは、より効率的になり(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。本明細書で説明した形でアフォーダンスを提供することにより、多くの異なるユーザインターフェースのコンテキストにおいて、画面上のアフォーダンスが、同じ機能(例えば、ホーム画面を表示すること)を提供するハードウェアボタンを効果的に置換することが可能になり、デバイスの製造費用及び保守費用を低減することに役立つ。加えて、主張されている解決策は、アフォーダンスの値範囲を制約して、アフォーダンスと背景コンテンツとの間で、黒地に白及び白地に黒のコントラストを排除し、それにより白又は黒の背景上へのアフォーダンスの長期にわたる表示によるディスプレイ焼き付きの危険性を緩和する。画面焼き付きの既知の原因は、動かない画像(例えば、ホームジェスチャインジケータなどのシステムワイドアフォーダンス)の長期にわたる表示と、画素の不均一な使用(例えば、これは前景と背景のコンテンツ間のコントラストが高い場合に最も厳しい)とが組み合わされることである。ある使用シナリオ(例えば、システム全体に及ぶホームアフォーダンスの実現)において、提案された解決策(例えば、アフォーダンスをよく目立つように維持しながら、極度に高いコントラストを低減すること)は、焼き付きの課題に効果的に対処している。携帯電話のディスプレイ内の焼き付きの問題及びその原因は、業界用文献に長年にわたり詳細に記録されており、多数の商品の問題に依然として存在している。これまで、アフォーダンスを画面上で動き回らせる、又は単に一定時間の非活動後に消すことにより、この問題に対処しようとする試みがあった。しかし、このような解決策はデバイスの操作性を悪化させる。下地コンテンツのディスプレイ特性の反転が、アフォーダンスの同じディスプレイ特性の値を、ディスプレイ特性値のサブレンジ内で決定する基礎となるという、主張されている解決策により、焼き付きの危険性がなくアフォーダンスを同じ場所で使うことを可能にしている。
方法6000は、ディスプレイ及びタッチ感知面を有するデバイス(例えば、ディスプレイ及びタッチ感知面の両方としての役割を果たすタッチスクリーンディスプレイ)において実行される。デバイスはディスプレイ上に、コンテンツ(例えば、ホーム画面、ウィジェット画面、デスクトップ、アプリケーションのユーザインターフェース、メディアプレーヤのユーザインターフェース等)、及びアフォーダンス(例えば、ディスプレイ上のホームジェスチャに応答する領域を示すホームアフォーダンス)を表示し(6002)、アフォーダンスがコンテンツの一部の上に表示され、アフォーダンスのディスプレイ特性(例えば、画像のグレー値又はルミナンス値(例えば、カラー画像又は白黒画像)、グレー値又はルミナンス値以外の固有のディスプレイパラメータ(例えば、フルカラー画像の色相、飽和等)、又は1つ以上の固有のディスプレイパラメータに基づいて計算された、導出されたディスプレイパラメータ(例えば、フルカラー画像のグレー値若しくはルミナンス値、又はこれらの変形若しくは等価物))の値は、アフォーダンスが上に表示されているコンテンツの一部の同じディスプレイ特性の値に基づいて決定され、コンテンツのディスプレイ特性の値は第1の値範囲内で変動することが許容されており(例えば、[0、1]の範囲、例えば、「範囲」は範囲の最大値と範囲の最小値との間の値の差として数学的に定義される)、アフォーダンスのディスプレイ特性の値は第1の値範囲よりも小さい、第2の値範囲内で変動するように制約されており(例えば、[0、0.4]、[0.6、1]、[0.1、0.7]、[0、0.7]、又は[0.3、1]等の範囲のうちの1つであり、「第1の範囲」の「サブレンジ」は、第1の範囲の最大値よりも小さい最大値と第1の範囲の最小値よりも大きい最小値とを有する範囲、又は第1の範囲の最大値よりも小さい最大値と第1の範囲の最小値と同じ最小値とを有する範囲、又は第1の範囲の最大値と同じ最大値と第1の範囲の最小値よりも大きい最小値とを有する範囲、と定義される。)コンテンツ及びアフォーダンスを表示している間、デバイスはアフォーダンスが上に表示されているコンテンツの外観変化を検出する(6004)。アフォーダンスが上に表示されているコンテンツの外観変化を検出したことに応答して、デバイスはアフォーダンスの外観を変化させ(6006)、これは、コンテンツのディスプレイ特性の値が減少したとの判定に応じて、コンテンツのディスプレイ特性の値の変化の大きさと、第2の値範囲とに応じて、アフォーダンスのディスプレイ特性の値を増加させること(例えば、アフォーダンスの下地にあるコンテンツがより暗くなるとアフォーダンスはより明るくなる)と、コンテンツのディスプレイ特性の値が増加したとの判定に応じて、コンテンツのディスプレイ特性の値の変化の大きさと、第2の値範囲とに応じて、アフォーダンスのディスプレイ特性の値を減少させること(例えば、アフォーダンスの下地のコンテンツがより明るくなるとアフォーダンスはより暗くなる)と、を含む。これは例えば、図5F、図5G~図5P、図5Q及び図5Rに示され、アフォーダンスのディスプレイ特性(例えば、ルミナンス)が、下地コンテンツの同じディスプレイ特性(例えば、ルミナンス)の変化に応じて変化する(例えば、コンテンツがスクロールされたとき)。加えて、ディスプレイ特性(例えば、ルミナンス)のアフォーダンス外観の値範囲は、下地コンテンツの同じディスプレイ特性の値範囲のサブレンジに制約されている(例えば、黒(例えば、0又は0%)から白(例えば、1又は100%)までの全ての値範囲)。
いくつかの実施形態では、コンテンツの外観変化(6008)はコンテンツナビゲーションによる(例えば、アフォーダンスの下地のコンテンツの一部はコンテンツのスクロール、ページング等により変化する)。これは例えば、図5G~図5Pに示される。アフォーダンスのディスプレイ特性の値を、コンテンツナビゲーションにより下地コンテンツの同じディスプレイ特性が変化している間に変化させることにより、デバイスの操作性は高まり(例えば、コンテンツナビゲーションにわたってアフォーダンスの十分な視認性を維持し、ユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、加えてデバイスの電力効率及び電池寿命が改善する(例えば、ユーザの間違いを減らし、ユーザがデバイスをより素早く迅速に効率的に使用することを手助けすることにより)。
いくつかの実施形態では、コンテンツの外観変化(6010)はコンテンツが時間と共に変化することによる(例えば、コンテンツが再生中のビデオ又はアニメーションであり、表示されるビデオ又はアニメーションの画像が時間と共に変化する)。これは例えば、図5T~図5Uに示される。アフォーダンスのディスプレイ特性の値を、コンテンツが時間と共に変化することにより下地コンテンツの同じディスプレイ特性が変化している間に変化させることにより、デバイスの操作性は高まり(例えば、コンテンツの時間的な変化にわたってアフォーダンスの十分な視認性を維持し、ユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、加えてデバイスの電力効率及び電池寿命が改善する(例えば、ユーザの間違いを減らし、ユーザがデバイスをより素早く迅速に効率的に使用することを手助けすることにより)。
いくつかの実施形態では、アフォーダンスは、第2の値範囲に対する終了値の第1のセットを有する第1の変形、及び第2の値範囲に対する終了値の第2のセットを有する第2の変形を有し(6012)、終了値の第2のセットは終了値の第1のセットとは異なっている(明るい背景上に最初に表示された「明アフォーダンス」については、第2の値範囲は第1の開始点及び第1の終了点を有し、暗い背景上に最初に表示された「暗アフォーダンス」については、第2の値範囲は、第1の開始点及び第2の開始点とはそれぞれ異なる、第2の開始点及び第2の終了点を有する)。これは例えば、図5A及び図5Rに示される。いくつかの実施形態では、第1の変形の値範囲は、第2の変形の値範囲とは重ならない(例えば、「明アフォーダンス」に対する値範囲の全ての値は、「暗アフォーダンス」に対する値範囲の全ての値よりも大きい)。異なる値範囲を有する、アフォーダンスの2つの変形を提供することにより、デバイスがアフォーダンスの視認性を更に改善し、一方で異なるタイプ類のコンテンツ上のアフォーダンスの外観を控え目に維持することが可能となり、それによりデバイスの操作性が向上し(例えば、異なるタイプのコンテンツに対してアフォーダンスの十分な視認性を維持し、ユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的にできる(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)。
いくつかの実施形態では、コンテンツが第1のアプリケーションに対応するとの判定に応じてアフォーダンスの第1の変形が表示され、コンテンツが第1のアプリケーションとは異なる第2のアプリケーションに対応するとの判定に応じて、アフォーダンスの第2の変形が表示される(6014)(例えば、現在表示されているアプリケーション内で使用されている「明」対「暗」アフォーダンスは、現在表示されているアプリケーションのアプリケーション開発者によって選択され、現在表示されているアプリケーションのプログラムコード内で指定されるように、アフォーダンス選択パラメータ、又は第2の値範囲に対する対応する終了値のセットに応じて、デバイスはアフォーダンスの第1の変形又は第2の変形を表示する(例えば、アフォーダンスのディスプレイ特性の値を変化させるときに、第2の値範囲に対する第1又は第2の終了値のセットを使用する))。異なるアプリケーションがアフォーダンスの異なる変形を使用できるようにすることにより、アプリケーション開発者が、アプリケーションコンテキストに基づきアフォーダンスの外観をカスタマイズすることを助け、それによりアフォーダンスの外観とアプリケーションコンテンツの外観との間の適合性が更に改善され、(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、アフォーダンスが上に表示されているコンテンツの第1の部分の外観は、アフォーダンスが上に表示されているコンテンツの第2の部分の外観とは異なる量で変化し(6016)、アフォーダンスの外観を変化させることは、コンテンツの第1の部分に対応するアフォーダンスの第1の部分の外観を、コンテンツの第2の部分に対応するアフォーダンスの第2の部分の外観を変化させる量とは異なる量で変化させることを含む(例えば、アフォーダンスは、アフォーダンスの第1の部分の下地にあるコンテンツの対応する部分内の外観変化に応じて変化する)。これは例えば、図5Qに示される。例えば、下地コンテンツが変動すると(例えば、アフォーダンスがコンテンツの部分のぼかされた/非飽和された/反転されたバージョンであれば)、アフォーダンスの外観は変動し、アフォーダンスの異なる部分の外観は、アフォーダンスの異なる部分の下地にあるコンテンツの外観を反映する。下地コンテンツの異なる部分のディスプレイ特性内で生じている異なる量の変化に基づき、アフォーダンスの異なる部分のディスプレイ特性に異なる量の変化を適用できるようにすることにより、デバイスの操作性が改善される(例えば、コンテンツの変化にわたってアフォーダンスの十分な視認性を維持し、ユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、加えてデバイスの電力効率及び電池寿命が改善する(例えば、ユーザの間違いを減らし、ユーザがデバイスをより素早く迅速に効率的に使用することを手助けすることにより)。
いくつかの実施形態では、第1の値範囲は連続した値範囲であり(6018)、第2の値範囲は、少なくとも、第1の値範囲内のディスプレイ特性の第1の値に対応する不連続を含む。例えば、いくつかの実施形態では、アフォーダンスの下地にあるコンテンツのディスプレイ特性に対する0.5付近の小さな値範囲に対して、0.5未満の第1の値から0.5を超える第2の値にジャンプする。いくつかの実施形態では、デバイスは不連続関数を用いて、アフォーダンス用のディスプレイ特性の値を、下地コンテンツ用の同じディスプレイ特性の値に基づいて計算し、アフォーダンスの外観が下地コンテンツの外観に近過ぎないことを確実にする(グレーのアフォーダンスが、グレーのアフォーダンスのグレー値にかなり近いグレーコンテンツの上に表示されないことを確実にするために)。図5AEは、アフォーダンスのディスプレイ特性の値として、2つの不連続(例えば、5034及び5038)を含む反転曲線を示す。アフォーダンスのディスプレイ特性に対して不連続な値範囲を使用し、一方で下地コンテンツの値表示に対して連続な値範囲を維持することにより、アフォーダンスが下地コンテンツの値に近過ぎる値を取り、アフォーダンスの不十分な視認性を引き起こす状況を回避することに役立つ。アフォーダンスのディスプレイ特性に対して不連続な値範囲を使用することにより、デバイスの操作性が向上し(例えば、コンテンツの変化にわたってアフォーダンスの十分な視認性を維持し、ユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、加えてデバイスの電力効率及び電池寿命が改善する(例えば、ユーザの間違いを減らし、ユーザがデバイスをより素早く迅速に効率的に使用することを手助けすることにより)。
いくつかの実施形態では、アフォーダンスは第1の変形及び第2の変形を有し(6020)(例えば、「明アフォーダンス」及び「暗アフォーダンス」)、アフォーダンスの第1の変形に対応する第2の値範囲と、アフォーダンスの第2の変形に対応する第2の値範囲とは重なり合わず(「明アフォーダンス」に対する値範囲は、「暗アフォーダンス」に対する値範囲から「カットオフ値範囲」によって分離されている)、デバイスは第1の変形及び第2の変形のうちの1つを動的に選択して、コンテンツのディスプレイ特性の所定の時間(例えば、アプリケーションが起動したとき、ビデオの場面が変化したとき、又はアプリケーション内でユーザインターフェースの切り替えが生じたとき)での初期値に基づき、コンテンツ上に表示する。例えば、コンテンツが最初に暗いグレー値(例えば、0.5未満)を有する場合は、アフォーダンスはグレースケールの明るい値範囲(例えば、0.6を超える)の初期値を有し、コンテンツが最初に明るいグレー値(例えば、0.5を超える)を有する場合は、アフォーダンスはグレースケールの暗い範囲の(例えば、0.4未満)の初期値を有する。アフォーダンスの厳密なグレー値は、任意選択的に、アフォーダンスの初期的な外観に関連する明るい又は暗い値範囲に対する、対応する反転関数を通して、コンテンツのグレー値を反転することにより得られる。いくつかの実施形態では、アフォーダンスが最初に(例えば、0.2のグレー値を有する)暗いコンテンツ上に表示される(例えば、0.9のグレー値を有する)明アフォーダンスの場合、アフォーダンス下のコンテンツが(例えば、グレー値が1に向かって増加しながら)次第に明るくなるとき、アフォーダンスは(例えば、グレー値が0に向かって減少しながら)次第に暗くなるが、アフォーダンスのグレー値は、グレースケール[0、1]上で中央のグレー値(例えば、0.5)よりも更に明るい、最小の閾値グレー値(例えば、0.6)によって制約される。アフォーダンス下のコンテンツが(例えば、グレー値が0に向かって減少しながら)次第に暗くなるときは、アフォーダンスは(例えば、グレー値が1に向かって増加しながら)次第に明るくなり、コンテンツが完全に黒になったときに、完全に白になる(例えば、グレースケール[0、1]上で1の終了値に達する)まで継続する。別の例では、アフォーダンスが最初に(例えば、0.9のグレー値を有する)明るいコンテンツ上に表示される(例えば、0.2のグレー値を有する)暗アフォーダンスの場合、アフォーダンス下のコンテンツが(例えば、グレー値が0に向かって減少しながら)次第に暗くなるとき、アフォーダンスは(例えば、グレー値が1に向かって増加しながら)次第に明るくなるが、アフォーダンスのグレー値は、グレースケール[0、1]上で中央のグレー値(例えば、0.5)よりも更に暗い、最大の閾値グレー値(例えば、0.4)によって制約される。アフォーダンス下のコンテンツが(例えば、グレー値が1に向かって増加しながら)次第に明るくなるときは、アフォーダンスは(例えば、グレー値が0に向かって減少しながら)次第に暗くなり、コンテンツが完全に白になったときに、完全に黒になる(例えば、グレースケール[0、1]上での終了値0に達する)まで継続する。図5Gは、比較的に暗い下地コンテンツの初期の全体的なルミナンス状態に基づいた暗アフォーダンスの選択を示し、図5Lは、相対的に明るい下地コンテンツの初期の全体的なルミナンス状態に基づいた明アフォーダンスの選択を示している。アプリケーションが、アフォーダンスの2つの異なる変形(例えば、暗いコンテンツと明るいコンテンツ)から動的に選択することを可能にすることにより、アプリケーションコンテキストに基づいてアフォーダンスの外観が更に改善され、それによりアフォーダンスの外観と下地コンテンツの外観との間の適合性が更に改善され、(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、アフォーダンスを表示することは、デバイスが第1の向きにあるときに、アフォーダンスを第1のサイズで(例えば、デバイスの底端部の近くに)表示することを含み(6022)、その方法は、アフォーダンスを第1のサイズで表示しながら、第1の向きから、第1の向きとは異なる第2の向きへのデバイスの回転を検出すること(デバイスの回転により、表示されているコンテンツが、第1のユーザインターフェースの向き(例えば、縦長の向き)から第2のユーザインターフェースの向き(横長の向き)に変化する)、及び、デバイスの第1の向きから第2の向きへの回転を検出したことに応答して、アフォーダンスを第1のサイズとは異なる第2のサイズで表示すること(及び、任意選択的に、アフォーダンスを異なる場所に(例えば、デバイスの第2の向きに基づいて規定された、デバイスの新しい底端部の近くに)表示すること)を含む。いくつかの実施形態では、デバイスが横長の向きにあるときは、アフォーダンスのより長いバージョンが表示され、デバイスが縦長の向きにあるときは、アフォーダンスのより短いバージョンが表示される。デバイスが回転したときに、異なるサイズのアフォーダンスを表示することにより、アフォーダンスの外観とデバイスの向き(従って、コンテンツの向き)との間の視覚的適合性が改善され、(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、ディスプレイ特性はグレー値である(6024)(例えば、グレー値は、黒(例えば、グレー値=0)から白(例えば、グレー値=1)のグレー値範囲を表す、全値範囲[0、1]を有する。下地コンテンツのグレー値に基づいてグレー値を変化させるアフォーダンスを提供することにより、(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、コンテンツのディスプレイ特性の現在値が、コンテンツの一部をぼかすことにより得られる(6026)(例えば、ぼかし関数(例えば、ガウスぼかし関数)を、定義済みのぼかし半径を用いてアフォーダンスの下地にあるコンテンツ領域に、及び少なくとも1つのぼかし半径を用いてアフォーダンスの直接下地にあるコンテンツ領域の周囲に適用することにより)。いくつかの実施形態では、コンテンツをぼかした後に、非飽和化する及び/又は不透明度を変更するなどの、他のフィルタが適用される。アフォーダンスに、下地コンテンツのぼかしたバージョンの、同じディスプレイ特性に基づいて導出されたディスプレイ特性を提供することにより(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、コンテンツのディスプレイ特性の現在値はコンテンツの一部を非飽和化することにより得られる(6028)(例えば、アフォーダンスの下地にあるコンテンツの領域の各画素のカラー値(例えば、RGB値、HSL値、又はHSV値)、及びその領域の周りの少なくとも1つのぼかし半径を、単色スケール(例えば、グレースケール)上の対応するスカラ値(例えば、グレー値)に変化することにより)。いくつかの実施形態では、コンテンツを非飽和化した後に、ぼかす及び/又は不透明度を変更するなどの、他のフィルタが適用される。アフォーダンスに、下地コンテンツの非飽和化したバージョンの同じディスプレイ特性に基づいて導出されたディスプレイ特性を提供することにより(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、アフォーダンスは定義済みのジェスチャ入力(例えば、ホーム画面及び/又はアプリケーション切り替えユーザインターフェースを表示するためのホーム/マルチタスクジェスチャ)を開始するための反応領域を示す(6030)。これは例えば、図5A~5Dに示される。いくつかの実施形態では、アフォーダンスは実際のボタンではない。アフォーダンス上でのタップ又は押圧はデバイスのいかなる機能をもトリガしない。いくつかの実施形態では、アフォーダンスが表示されなくなったとき(例えば、アプリケーションの全画面モードでアフォーダンスがフェードアウトした後)、定義済みのジェスチャ(例えば、ホーム/マルチタスキングジェスチャ)は依然として、アフォーダンスが表示されていたときのように機能する。いくつかの実施形態では、ユーザ入力(例えば、ホーム/マルチタスキングジェスチャ、又はディスプレイ上のタップ入力等)が検出されたとき、アフォーダンスは全画面コンテンツディスプレイモードで再表示される。アフォーダンスは、高さと長さの比が小さい狭いアフォーダンスである。ジェスチャの反応領域は普通、ボタンの反応領域よりも許容度がより大きいので、定義済みのジェスチャを開始するための反応領域を示すアフォーダンスは通常、下地コンテンツに対して特別に高めた視認性を有する必要性はなく、従って、デバイスと双方向対話中にユーザの間違いを回避する手助けをするために、ユーザにとって注意をそらすことがより少ないアフォーダンスを有することがより有益である。従って、動的に変動するディスプレイ特性を有するアフォーダンスを、本明細書で説明した形で使用することにより、(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
図6A~図6Cにおける動作について説明された特定の順序は単なる例であり、説明された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法7000、及び8000)に関して本明細書に記載される他のプロセスの詳細はまた、図6A~図6Cに関して上述した方法6000にも、類似の様式で適用可能であることに留意されたい。例えば、方法6000に関して上述した、接触、ジェスチャ、ユーザインターフェースオブジェクト、アプリケーションビュー、制御パネル、制御、アフォーダンス、位置閾値、方向的条件、反転曲線、フィルタ、値範囲、ナビゲーション基準、移動パラメータ、フォーカスセレクタ、及び/又はアニメーションは、任意選択的に、本明細書で説明される他の方法(例えば、方法7000、及び8000)に関して本明細書で説明される、接触、ジェスチャ、ユーザインターフェースオブジェクト、アプリケーションビュー、制御パネル、制御、位置閾値、方向的条件、ナビゲーション基準、移動パラメータ、フォーカスセレクタ、及び/又はアニメーションの特徴のうちの1つ以上を有する。簡潔のため、これらの詳細はここでは繰り返さない。
上述した情報処理方法での動作は任意選択的に、汎用プロセッサ(例えば、図1A及び図3に関連して上述したようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図6A~図6Cを参照して上述した動作は、任意選択的に図1A~図1Bに記される構成要素によって実施される。例えば、検出動作及び変更動作は、任意選択的にイベントソート部170、イベント認識部180、及びイベント処理部190により実施される。イベントソート部170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136-1に配信する。アプリケーション136-1の対応するイベント認識部180は、そのイベント情報を対応するイベント定義186と比較し、タッチ感知面上の第1の場所での第1の接触(又は、デバイスの回転)が、ユーザインターフェース上のオブジェクトの選択、又は1つの向きから別の向きへのデバイスの回転などの、定義済みのイベント又はサブイベントに対応するかどうかを判定する。対応する定義済みのイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連するイベント処理部190をアクティブ化する。イベント処理部190は、アプリケーション内部状態192を更新するために、データ更新部176又はオブジェクト更新部177を、任意選択的に使用するか又は呼び出す。いくつかの実施形態では、イベント処理部190は、アプリケーションにより表示されるものを更新するために、対応するGUI更新部178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに記される構成要素に基づいてどのように実装され得るかは明らかであろう。
図7A~図7Eは、いくつかの実施形態に係る、下地コンテンツ、及びアフォーダンス外観の変化が表示されるユーザインターフェースのモードの変化に応じて、アフォーダンスの外観を変化させる方法を説明するフロー図である。方法7000は、ディスプレイ及びタッチ感知面を有する電子デバイス(例えば、図3のデバイス300、又はポータブル多機能デバイス100、図1A)において実行される。いくつかの実施形態では、電子デバイスは、タッチ感知面との接触の強度を検出するための1つ以上のセンサを含む。いくつかの実施形態では、タッチ感知面及びディスプレイは、タッチ感知ディスプレイに統合される。いくつかの実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。いくつかの実施形態では、ディスプレイはタッチ感知面から分離している。方法600におけるいくつかの動作が任意選択的に組み合わされ、及び/又はいくつかの動作の順序が任意選択的に変更される。
方法7000は、アフォーダンスのディスプレイ特性のセット(例えば、グレー値、ルミナンス値、不透明度、色相、飽和等)が、アプリケーションユーザインターフェースの現在のディスプレイモードに依存して、2つの異なるルールセットに従って、下地コンテンツのディスプレイ特性のセットに基づいて変化する形で、アフォーダンス(例えば、ホーム画面を表示するためのジェスチャの許容可能な開始領域を示すアフォーダンス)をアプリケーションユーザインターフェース上に表示させることに関連している。例えば、アプリケーションユーザインターフェースが(例えば、頻繁なユーザ入力が予想される)インタラクティブモードで表示されている場合、アフォーダンスがより視認しやすいように、アフォーダンスの外観は、下地コンテンツの外観に基づき第1の方法で変化し(例えば、第1のルールのセットに基づいて)、一方、アプリケーションユーザインターフェースが(例えば、コンテンツの閲覧が主要目的である可能性がある)全画面コンテンツディスプレイモードで表示されている間、アフォーダンスが、ユーザにとって注意をそらすことがより少ないように、アフォーダンスの外観は、下地コンテンツの外観に基づき第2の方法で変化する(例えば、第2のルールのセットに基づいて)。従って、下地コンテンツの外観に基づき、アプリケーションユーザインターフェースのディスプレイモードに基づき、異なる形で外観を変化させるアフォーダンスを提供することにより、デバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。本明細書で説明した形でアフォーダンスを提供することにより、多くの異なるユーザインターフェースのコンテキストにおいて、画面上のアフォーダンスが、同じ機能(例えば、ホーム画面を表示すること)を提供するハードウェアボタンを効果的に置換することが可能になり、デバイスの製造費用及び保守費用を低減することに役立つ。本明細書で説明した形でアフォーダンスを提供することはまた、ディスプレイの焼き付き問題を低減又は解消することに役立つ。
方法7000は、ディスプレイ及びタッチ感知面を有するデバイス(例えば、ディスプレイ及びタッチ感知面の両方としての役割を果たすタッチスクリーンディスプレイ)において実行される。デバイスはアプリケーションのユーザインターフェース(例えば、メディアプレーヤのユーザインターフェース、ブラウザのユーザインターフェース、インスタントメッセージングのユーザインターフェース、マップユーザインターフェース、電話ユーザインターフェース、ゲーミングユーザインターフェース等)を、第1のモード(例えば、全画面コンテンツを含まないコンテンツディスプレイモード、ウィンドウ化されたモード、又はデフォルトモード)で表示する(7002)。アプリケーションのユーザインターフェースを第1のモードで表示している間に、デバイスは第1の外観を有するアフォーダンス(例えば、ホームジェスチャ応答領域を画面上に示すホームアフォーダンス)をユーザインターフェース上に表示し(7004)、アフォーダンスはユーザインターフェースの一部上に表示される(例えば、アフォーダンスはディスプレイの第1の定義済みの領域(例えば、ディスプレイの底部中央領域の近くに位置するホームアフォーダンス表示領域)に表示され、第1の外観を有するアフォーダンスの1つ以上のディスプレイ特性のセットの値が、第1の1つ以上のルールのセットに従って、アフォーダンスの下地にあるユーザインターフェースの一部の、1つ以上のディスプレイ特性のセットの値の変化に応じて変化する(例えば、アフォーダンスの1つ以上のディスプレイ特性のセットは、アフォーダンスの下地にあるユーザインターフェースの一部の画像のルミナンス又はグレー値を、非飽和化する、ぼかす、不透明度を変更する、及び/又は反転させるための第1のフィルタのセットを適用することにより得られる))。第1の外観を有するアフォーダンスを、第1のモードで表示されたユーザインターフェースの一部上に表示している間に、デバイスは、ユーザインターフェースを第1のモードで表示することから、ユーザインターフェースを第2のモード(例えば、全画面コンテンツディスプレイモード)で表示することに遷移させる要求(例えば、現在の動作状態(例えば、長時間にわたる入力の不在、動作モードを切り替える定義済みの基準等)又はユーザ要求(例えば、タッチスクリーン上でのコンタクトによるタップ入力、又はスワイプ入力等)に基づいて、ユーザインターフェース又はオペレーティングシステムに提供される、アプリケーションプログラムによって生成された要求)を検出する(7006)。要求を検出したことに応答して、デバイスはユーザインターフェースを第2のモードで表示し(7008)(例えば、全画面コンテンツディスプレイモードにおいては、元々のユーザインターフェースの一部は拡大され、アプリケーションメニューバー、スクロールバーなどのユーザインターフェース内のユーザインターフェース要素のいくつかはユーザインターフェースから取り除かれ、かつユーザインターフェースと共に以前に表示されていたシステムステータスバーも表示から取り除かれる)、デバイスは第2の外観を有するアフォーダンスを、第2のモードで表示されたユーザインターフェース上に表示し、第2の外観を有するアフォーダンスの1つ以上のディスプレイ特性のセットの値が、アフォーダンスの下地にあるユーザインターフェースの一部の1つ以上のディスプレイ特性のセットの値の変化に応じて、第1の1つ以上のルールのセットとは異なる第2の1つ以上のルールのセットに従って変化する(例えば、アフォーダンスの1つ以上のディスプレイ特性のセットは、アフォーダンスの下地にあるユーザインターフェースの一部の画像のルミナンス又はグレー値を、非飽和化する、ぼかす、不透明度を変更する、反転させるための第2のフィルタのセットを適用することにより得られる)(第2の外観を有するアフォーダンスは第1の外観を有するアフォーダンスの変形であるが、両方ともアフォーダンスの下地にあるユーザインターフェースの一部から、しかし異なるフィルタのセットを用いて又は同じフィルタのセットを異なる調整パラメータで用いて、導出される)。これは図5S~図5Wに示されており、アフォーダンスが最初に第1の状態(例えば、図5T及び図5Uの完全可視状態)で表示された後に、デバイスがインタラクティブモードからメディア消費モードに遷移したときに、アフォーダンス5002が第2の状態(例えば、図5V及び図5Wの低コントラスト状態)で表示されている。
いくつかの実施形態では、第2の外観を有するアフォーダンスを第2のモードで表示されたユーザインターフェース上に表示している間に、フェードアウト基準を満たしたとの判定に従って、デバイスはアフォーダンスを、第2のモードで表示されたユーザインターフェース上に表示することを停止し(7010)(例えば、ユーザインターフェースの第2のモードでの表示を維持しながら)、またフェードアウト基準を満たさないとの判定に従って、第2の外観を有するアフォーダンスの、第2のモードで表示されたユーザインターフェース上への表示を維持する。これは例えば図5Xに示され、低コントラスト状態のアフォーダンス5002が、ユーザ入力のない追加の一定時間後に最終的に完全に消滅している。いくつかの実施形態では、フェードアウト基準が満たされるためには、フェードアウト基準は、少なくとも既定閾値時間の間、タッチ感知面上でユーザ入力が検出されていないことを要求する(例えば、フェードアウト基準は、全画面コンテンツディスプレイモードに入った後に、デバイスがタッチ感知面上のどこにも、いかなるタッチ入力をも、30秒にわたって検出しなかったとき、又は全画面コンテンツディスプレイモードに入った後に、デバイスがタッチスクリーンディスプレイの底部中央領域の近くで、いかなるタッチ入力をも、30秒にわたって検出しなかったとき(例えば、画面の他の部分は依然として、フェードアウト基準に関する判定に影響することなく、引き続きユーザ入力を受け取り、ユーザ入力に応答してもよい))。アプリケーションユーザインターフェースの定義済みのディスプレイモードで表示されたアフォーダンスの表示を、定義済みの基準に基づいてフェードアウト又は維持することにより、デバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。
いくつかの実施形態では、アプリケーションの、第1のモードで表示されたユーザインターフェースは、ディスプレイの全表示領域の半分未満を占めるコンテンツ(例えば、ビデオ、ゲーム、文書、曲のアルバムアート)のレプリゼンテーションを含み(7012)(例えば、アプリケーションの、第1のモードで表示されたユーザインターフェースは、ディスプレイ上にシステム状態バーと同時に表示される)、またアプリケーションの、第2のモードで表示されたユーザインターフェースは、ディスプレイの全表示領域を占めるコンテンツのレプリゼンテーションを含む(例えば、全画面コンテンツディスプレイモードにおいては、元々のユーザインターフェースの一部は拡大され、アプリケーションメニューバー、スクロールバーなどのユーザインターフェース内のユーザインターフェース要素のいくつかはユーザインターフェースから取り除かれ、かつユーザインターフェースと共に以前に表示されていたシステムステータスバーも表示から取り除かれる)。従って、コンテンツが通常ディスプレイモードで表示されているか、又は全画面ディスプレイモードで表示されているかに依存して異なる形で、下地コンテンツの外観に基づいて、外観を変化させるアフォーダンスを提供することにより、デバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、ユーザが、必要な入力を用いて意図した結果を達成し、デバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことを手助けすることにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。
いくつかの実施形態では、アフォーダンスの第1の外観及び第2の外観のうちの少なくとも1つは(例えば、アフォーダンスのルミナンス、強度、又はグレー値)、アフォーダンスの下地にあるユーザインターフェースの一部の反転に基づいている(7014)。例えば、いくつかの実施形態では、アフォーダンスの下地にあるユーザインターフェースの一部が、単色の画像を得るために非飽和化され、単色の画像はぼかされ、次いで、ぼかされた単色の画像内の画素のルミナンス又はグレー値が反転されて、アフォーダンス内の画素のルミナンス又はグレー値が得られる。アフォーダンスに、下地コンテンツの反転に基づいて導出されたディスプレイ特性を提供することにより(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、第1のルールのセットは、アフォーダンスの第1の外観を得るために、アフォーダンスの下地にあるユーザインターフェースの一部に第1の反転量を適用することを要求し(7016)、第2のルールのセットは、アフォーダンスの第2の外観を得るために、アフォーダンスの下地にあるユーザインターフェースの一部に第2の反転量を適用することを要求し、かつ第2の反転量は第1の反転量よりも小さい(例えば、第2のルールのセットは、アフォーダンスのディスプレイ特性とセットを得るために、アフォーダンスの下地にあるユーザインターフェースの一部の反転量を減らす)。アフォーダンスを得るために、下地コンテンツに適用される反転量を変化させることにより、アプリケーションユーザインターフェースのディスプレイモードに応じてアフォーダンスの視認性を調整することに役立ち、それによりデバイスの操作性が改善され(例えば、十分な視認性の要件とアフォーダンスの控え目さの要件とを合理的に平衡させ、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になる(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)。
いくつかの実施形態では、アフォーダンスの第1の外観及び第2の外観のうちの少なくとも1つは(例えば、アフォーダンスのルミナンス、強度、又はグレー値)、アフォーダンスの下地にあるユーザインターフェースの一部をぼかすことにより得られる(7018)。例えば、いくつかの実施形態では、アフォーダンスの下地にあるユーザインターフェースの一部が、単色の画像を得るために非飽和化され、単色の画像はぼかされ、次いで、ぼかされた単色の画像内の画素のルミナンス又はグレー値が反転されて、アフォーダンス内の画素のルミナンス又はグレー値が得られる。下地コンテンツをぼかすことにより得られたディスプレイ特性を、アフォーダンスに提供することにより、(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、第1のルールのセットは、アフォーダンスの第1の外観を得るために、アフォーダンスの下地にあるユーザインターフェースの一部に第1のぼかし量(例えば、ガウシアンぼかし関数)を適用することを要求し(7020)、第2のルールのセットは、アフォーダンスの第2の外観を得るために、アフォーダンスの下地にあるユーザインターフェースの一部に第2のぼかし量(例えば、ガウシアンぼかし関数)を適用することを要求し、かつ第2のぼかし量は第1のぼかし量よりも小さい(例えば、第2のぼかし関数は第1のぼかし関数よりも小さなぼかし半径を有する)(例えば、第2のルールのセットは、アフォーダンスのディスプレイ特性のセットを得るために、アフォーダンスの下地にあるユーザインターフェースの一部のぼかしを減らす)。アフォーダンスを得るために、下地コンテンツに適用されるぼかし量を変化させることにより、アプリケーションユーザインターフェースのディスプレイモードに応じてアフォーダンスの視認性を調整することに役立ち、それによりデバイスの操作性が改善され(例えば、十分な視認性の要件とアフォーダンスの控え目さの要件とを合理的に平衡させ、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になる(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)。
いくつかの実施形態では、アフォーダンスの第1の外観及び第2の外観のうちの少なくとも1つは(例えば、アフォーダンスのルミナンス、強度、又はグレー値)、アフォーダンスの下地にあるユーザインターフェースの一部を非飽和化することにより得られる(7022)。例えば、いくつかの実施形態では、アフォーダンスの下地にあるユーザインターフェースの一部が、単色の画像を得るために非飽和化され、単色の画像はぼかされ、次いで、ぼかされた単色の画像内の画素のルミナンス又はグレー値が反転されて、アフォーダンス内の画素のルミナンス又はグレー値が得られる。下地コンテンツを非飽和化することにより得られたディスプレイ特性を、アフォーダンスに提供することにより、(過度にユーザの注意をそらすことなくアフォーダンスの十分な視認性を維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、デバイスの操作性が改善され、(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、ユーザ対デバイス操作がより効率的になる。
いくつかの実施形態では、第1のルールのセットは、アフォーダンスの第1の外観を得るために、アフォーダンスの下地にあるユーザインターフェースの一部に第1の非飽和量を適用することを要求し(7024)、第2のルールのセットは、アフォーダンスの第2の外観を得るために、アフォーダンスの下地にあるユーザインターフェースの一部に第2の非飽和量を適用することを要求し、かつ第2の非飽和量は第1の非飽和量よりも小さい(例えば、第2のルールのセットは、アフォーダンスのディスプレイ特性のセットを得るために、アフォーダンスの下地にあるユーザインターフェースの一部の非飽和量を減らす)。アフォーダンスを得るために、下地コンテンツに適用される非飽和量を変化させることにより、アプリケーションユーザインターフェースのディスプレイモードに応じてアフォーダンスの視認性を調整することに役立ち、それによりデバイスの操作性が改善され(例えば、十分な視認性の要件とアフォーダンスの控え目さの要件とを合理的に平衡させ、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になる(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)。
いくつかの実施形態では、アフォーダンスを表示することなくユーザインターフェースを第2のモードで表示している間に、デバイスは第1のアフォーダンス再表示基準を満たす入力を検出し(7026)、ここで第1のアフォーダンス再表示基準は、入力がタッチ感知面上(例えば、第1の表示位置に対応する位置において)で検出されたときに満たされ、アフォーダンス再表示基準を満たす入力を検出したことに応答して、デバイスは第2のモードで表示されたユーザインターフェース上にアフォーダンスを再表示する。これは例えば、図5X~5AAに示される。いくつかの実施形態では、第2のモードで表示されたユーザインターフェース上にアフォーダンスが再表示されたとき、アフォーダンスの1つ以上のディスプレイ特性のセットの値は、ユーザインターフェースの一部の1つ以上のディスプレイ特性のセットの値の変化に応じて、第2の1つ以上のルールのセットに従って変化する。いくつかの実施形態では、第1のモードで表示されたユーザインターフェース上にアフォーダンスが再表示されたとき、アフォーダンスの1つ以上のディスプレイ特性のセットの値は、ユーザインターフェースの一部の1つ以上のディスプレイ特性のセットの値の変化に応じて、第1の1つ以上のルールのセットに従って変化する。アフォーダンスがフェードアウトした後に、アフォーダンスを定義済みの基準に基づいて再表示することにより、デバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、ユーザが、必要な入力を用いて意図した結果を達成し、デバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことを手助けすることにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。
いくつかの実施形態では、アフォーダンスを表示することなくユーザインターフェースを第2のモードで表示している間に、デバイスは第2のアフォーダンス再表示基準を満たす入力を検出し(7028)、ここで第2のアフォーダンス再表示基準は、入力が、ユーザインターフェースを第2のモードで表示することから、ユーザインターフェースを第1のモードで表示することに遷移させる要求であるときに満たされ、第2のアフォーダンス再表示基準を満たす入力を検出したことに応答して、デバイスはユーザインターフェースを第1のモードで再表示し、デバイスは、第1のモードで再表示されたユーザインターフェース上にアフォーダンスを再表示する。これは例えば、図5X~5AAに示される。いくつかの実施形態では、第1のモードで表示されたユーザインターフェース上にアフォーダンスが再表示されたとき、アフォーダンスの1つ以上のディスプレイ特性のセットの値は、ユーザインターフェースの一部の1つ以上のディスプレイ特性のセットの値の変化に応じて、第1の1つ以上のルールのセットに従って変化する。第2のディスプレイモードから第1のディスプレイモードに遷移するときに、アフォーダンスを再表示することにより、デバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。
いくつかの実施形態では、アフォーダンスの第1の外観と第2の外観のうちの少なくとも1つが、アフォーダンスの下地にあるユーザインターフェースの一部で起こる変化に応じて、動的に調整される(7030)(例えば、ユーザインターフェースの一部は、ユーザインターフェース内での動的なコンテンツの変化又はユーザインターフェース内に表示されるコンテンツを経由するナビゲーションにより、変化する)。これは例えば、図5T~5Wに示される。例えば、ユーザインターフェースがスクロールされるとき、又は第2のモードで表示されるユーザインターフェースが、連続的に発展しリフレッシュされる、全画面ムービー、ゲーム、若しくはウェブページであるとき、アフォーダンスの外観も連続的に更新されて下にあるユーザインターフェースの変化を反映する。ユーザインターフェースが第1のモードで表示されているときは、アフォーダンスの外観は第1のルールのセットに従って動的に変化し、ユーザインターフェースが第2のモードで表示されているときは、アフォーダンスの外観は第2のルールのセットに従って動的に変化する。アフォーダンスの外観を、下地コンテンツの外観の変化に基づいて動的に変化させることにより、デバイスの操作性が高まり(例えば、コンテンツが時間と共に変化し続ける間に、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供することにより)、ユーザとデバイス間のインターフェースは、より効率的になり(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。
いくつかの実施形態では、第1の外観は、アフォーダンスの下地にあるユーザインターフェースの一部(及びその領域を取り囲む端領域)に適用される第1のフィルタのセット(例えば、ぼかし、非飽和化、及び反転)に基づいて生成され(7032)、第2の外観は、アフォーダンスの下地にあるユーザインターフェースの一部に適用される第2のフィルタのセットに基づいて生成され、第2のフィルタのセット内の2つ以上のフィルタに対して、第1のフィルタのセットは、同じタイプで異なる調整パラメータを有する、対応するフィルタを含んでいる(例えば、異なるぼかし半径を有するぼかしフィルタ、異なる反転曲線を有する反転フィルタ、異なる透明度レベルを有する不透明フィルタ、異なる非飽和化比率を有する非飽和化フィルタ、等)。異なる調整パラメータを有するフィルタのセットを使用して、下地コンテンツの外観に基づいて異なる形で、その外観を変化させるアフォーダンスを提供することにより、ディスプレイモードの切り替えの間に、アフォーダンスが相対的に一貫した外観を維持することが可能となり、ユーザの注意をそらすことが少なくなり、それによってデバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイス間のインターフェースは、より効率的になる(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)。
いくつかの実施形態では、要求を検出したことに応答して、デバイスは第1の外観と第2の外観との間のアフォーダンスに対して、1つ以上の中間のアフォーダンス外観を生成し(7034)、デバイスは、第1の外観を有するアフォーダンスを表示することと第2の外観を有するアフォーダンスを表示することとの間の遷移として、アフォーダンスの1つ以上の中間の外観を表示する。いくつかの実施形態では、中間の外観はユーザインターフェース上に第2のモードとして表示され、中間の外観は、アフォーダンスの第1の外観と第2の外観との間の補間である。アプリケーションユーザインターフェースのディスプレイモードの切り替え中にアフォーダンス外観の遷移を橋渡しする、アフォーダンスの中間の外観を生成することにより、ユーザの注意をそらすことがより少なくなり、それによってデバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイス間のインターフェースは、より効率的になる(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)。
いくつかの実施形態では、第1の外観と第2の外観との間のアフォーダンスに対して、1つ以上の中間の外観を生成することは、第1のルールのセットから第2のルールのセットに段階的に遷移することを含む(7036)(例えば、アフォーダンスを生成するために下地コンテンツに適用される1つのフィルタの大きさを変化させ、アフォーダンスを生成するために下地コンテンツに適用される他のフィルタの大きさは変化させない)。アフォーダンスの外観を生成するために使用したルールのセットを段階的に遷移させることにより、アフォーダンスの中間の外観を生成することにより、ユーザの注意をそらすことがより少なくなり、それによってデバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する適切な量の案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイスとの間のインターフェースは、より効率的になる(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)。
いくつかの実施形態では、第1の外観を有するアフォーダンスは、第1の不透明度の程度を有し(7038)、第2の外観を有するアフォーダンスは、第1の不透明度の程度よりも小さい第2の不透明度の程度を有する(例えば、しかしユーザインターフェースの色は見えている)。アプリケーションユーザインターフェースのディスプレイモードに基づいてアフォーダンスの不透明度を変更することは、アプリケーションユーザインターフェースのディスプレイモードに応じてアフォーダンスの視認性を調整することに役立ち、それによりデバイスの操作性が改善され(例えば、十分な視認性の要件とアフォーダンスの控え目さの要件とを合理的に平衡させ、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になる(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)。
いくつかの実施形態では、第1の外観を有するアフォーダンスと第2の外観を有するアフォーダンスは、ディスプレイ上で同じサイズと位置を有する(7040)。アプリケーションユーザインターフェースの異なるディスプレイモードにおけるアフォーダンスのサイズと位置を維持することは、ユーザインターフェースの切り替え中にアフォーダンスの外観の連続性を維持するために役立ち、それによりデバイスの操作性が改善され(例えば、ユーザに対するコンテキストを維持し、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になる(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)。
いくつかの実施形態では、第2の1つ以上のルールのセットによって生成される、アフォーダンスとアプリケーションのユーザインターフェースとの間の視覚的差異よりも大きな視覚的差異を、第1の1つ以上のルールのセットが、アフォーダンスとアプリケーションのユーザインターフェースとの間に生成する(7042)。アプリケーションユーザインターフェースのディスプレイモードに基づいてアフォーダンスの視覚的明瞭さを変化させることは、アプリケーションユーザインターフェースのディスプレイモードに応じてアフォーダンスの視認性を調整することに役立ち、それによりデバイスの操作性が改善され(例えば、十分な視認性の要件とアフォーダンスの控え目さの要件とを合理的に平衡させ、かつユーザに必要な入力を提供して所望の結果を達成することを手助けすることにより)、ユーザ対デバイス操作がより効率的になる(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)。
図7A~図7Eにおける動作について説明された特定の順序は単なる例であり、説明された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法6000、及び8000)に関して本明細書に記載される他のプロセスの詳細はまた、図7A~図7Eに関して上述した方法7000にも、類似の様式で適用可能であることに留意されたい。例えば、方法7000に関して上述した、接触、ジェスチャ、ユーザインターフェースオブジェクト、アプリケーションビュー、制御パネル、制御、アフォーダンス、位置閾値、方向的条件、反転曲線、フィルタ、値範囲、ナビゲーション基準、移動パラメータ、フォーカスセレクタ、及び/又はアニメーションは、任意選択的に、本明細書で説明される他の方法(例えば、方法6000、及び8000)に関して本明細書で説明される、接触、ジェスチャ、ユーザインターフェースオブジェクト、アプリケーションビュー、制御パネル、制御、位置閾値、方向的条件、ナビゲーション基準、移動パラメータ、フォーカスセレクタ、及び/又はアニメーションの特徴のうちの1つ以上を有する。簡潔のため、これらの詳細はここでは繰り返さない。
上述した情報処理方法での動作は任意選択的に、汎用プロセッサ(例えば、図1A及び図3に関連して上述したようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図7A~図7Eを参照して上述した動作は、任意選択的に図1A~図1Bに記される構成要素によって実施される。例えば、検出動作及び表示動作は、任意選択的にイベントソート部170、イベント認識部180、及びイベント処理部190により実施される。イベントソート部170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136-1に配信する。アプリケーション136-1の対応するイベント認識部180は、そのイベント情報を対応するイベント定義186と比較し、タッチ感知面上の第1の場所での第1の接触(又は、デバイスの回転)が、ユーザインターフェース上のオブジェクトの選択、又は1つの向きから別の向きへのデバイスの回転などの、定義済みのイベント又はサブイベントに対応するかどうかを判定する。対応する定義済みのイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連するイベント処理部190をアクティブ化する。イベント処理部190は、アプリケーション内部状態192を更新するために、データ更新部176又はオブジェクト更新部177を、任意選択的に使用するか又は呼び出す。いくつかの実施形態では、イベント処理部190は、アプリケーションにより表示されるものを更新するために、対応するGUI更新部178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに記される構成要素に基づいてどのように実装され得るかは明らかであろう。
図8A~図8Fは、いくつかの実施形態に係る、下地コンテンツの外観の変化に応じて、アフォーダンスの外観及びアフォーダンス外観タイプを変化させる方法を説明するフロー図である。方法8000は、ディスプレイ及びタッチ感知面を有する電子デバイス(例えば、図3のデバイス300、又はポータブル多機能デバイス100、図1A)において実行される。いくつかの実施形態では、電子デバイスは、タッチ感知面との接触の強度を検出するための1つ以上のセンサを含む。いくつかの実施形態では、タッチ感知面及びディスプレイは、タッチ感知ディスプレイに統合される。いくつかの実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。いくつかの実施形態では、ディスプレイはタッチ感知面から分離している。方法8000における、いくつかの動作が任意選択的に組み合わされ、及び/又はいくつかの動作の順序が任意選択的に変更される。
方法8000は、アフォーダンス(例えば、ホーム画面又はアプリケーション切替ユーザインターフェースなどのユーザインターフェース内の定義済みの操作を実行するためのジェスチャの許容可能な開始領域を示すアフォーダンス)を、アフォーダンスのディスプレイ特性(例えば、グレー値、又はルミナンス値)が、下地コンテンツの同じディスプレイ特性の変化に基づいて動的に変化する形で、コンテンツ上に表示する方法に関する。加えて、方法は、アフォーダンス外観の値範囲は、下地コンテンツのディスプレイ特性の変化によって、定義済みのレンジ切替基準が満たされたかどうかに依存して、2つの異なる値範囲(例えば、「暗アフォーダンス」値範囲、及び「明アフォーダンス」値範囲)の間で切り替わることを必要とする。その結果、アフォーダンスと下地コンテンツとの間の視覚的コントラストを維持するために、デバイスはアフォーダンスの外観を下地コンテンツの変化に適合させ、アフォーダンス外観タイプの初期的な選択(例えば、「明」又は「暗」アフォーダンスタイプ)により制約されることなく、アフォーダンスを、注意をそらすことがより少なく又は邪魔にならない形で提供することができる(例えば、アフォーダンスの外観をあまりにも急速に変化させることにより生じる、状況次第ではユーザにとって注意をそらすことになる、アフォーダンスの急速なちらつきを回避することにより)。本明細書で説明した形で、下地コンテンツの外観に基づいて、アフォーダンスに動的に変化させた外観を提供し、かつ下地コンテンツの変化に基づいて、アフォーダンス外観の値範囲の時間にわたる動的な切り替えを可能にすることにより、デバイスの操作性が高まり(例えば、所望の結果のために必要な入力に関する視覚的な案内を、過度にユーザの注意をそらすことなくユーザに提供して、デバイス操作中のユーザの間違いを減らすことにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、ユーザが必要な入力を用いて意図した結果を達成することを手助けし、かつデバイスの操作時/デバイスとの双方向作用時にユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを手助けすることにより)。本明細書で説明した形でアフォーダンスを提供することにより、多くの異なるユーザインターフェースのコンテキストにおいて、画面上のアフォーダンスが、同じ機能(例えば、ホーム画面を表示すること)を提供するハードウェアボタンを効果的に置換し改善することが可能になり、デバイスの製造費用及び保守費用を低減することに役立つ。本明細書で説明した形でアフォーダンスを提供することはまた、ディスプレイの焼き付き問題を低減又は解消することに役立つ。
方法8000は、ディスプレイ及びタッチ感知面を有するデバイス(例えば、ディスプレイ及びタッチ感知面の両方としての役割を果たすタッチスクリーンディスプレイ)において実行される。デバイスはディスプレイ上に、コンテンツ(例えば、ホーム画面、ウィジェット画面、デスクトップ、アプリケーションのユーザインターフェース、メディアプレーヤのユーザインターフェース等)、及びアフォーダンス(例えば、ディスプレイ上のホームジェスチャに応答する領域を示すホームアフォーダンス)を表示し(8002)、アフォーダンスがコンテンツの一部の上に表示され、アフォーダンスのディスプレイ特性の値(例えば、画像のグレー値又はルミナンス値(例えば、カラー画像又は単色画像)、グレー値又はルミナンス値以外の固有のディスプレイパラメータ(例えば、フルカラー画像の色相、飽和度、等)、又は1つ以上の固有のディスプレイパラメータに基づいて計算された、導出されたディスプレイパラメータ(例えば、フルカラー画像のグレー値若しくはルミナンス値、又はこれらのわずかな変形物若しくは等価物))は、アフォーダンスが上に表示されているコンテンツの一部の同じディスプレイ特性の値に基づいて決定され、コンテンツのディスプレイ特性の値は第1の値範囲内で(例えば、[0、1]の範囲、任意選択的に、ルミナンス0%が0に、ルミナンス100%が1である、ルミナンス0%からルミナンス100%のスケール上で)変動することが許容されており、アフォーダンスのディスプレイ特性の値は、第1の値範囲よりも小さいアフォーダンス外観の値範囲内で変動するように制約されている(例えば、任意選択的に、黒が0、白が1である黒から白のスケール上で、暗アフォーダンスタイプに対して[0、0.4]のアフォーダンス外観の値範囲、又は明アフォーダンスタイプに対して[0.6、1]であり、両方ともコンテンツの値範囲[0、1]よりも小さく、任意選択的に、ルミナンス0%が0に、ルミナンス100%が1である、ルミナンス0%からルミナンス100%のスケール上で)。コンテンツとアフォーダンスを表示している間に、かつアフォーダンス外観値範囲が第2の値範囲(例えば、任意選択的に、黒が0、白が1である黒から白のスケール上で、暗アフォーダンスに対するアフォーダンス外観の値範囲[0、0.4])である間に、デバイスはアフォーダンスが上に表示されているコンテンツの外観変化を検出する(8004)。アフォーダンスが上に表示されているコンテンツの外観変化を検出したことに応答して、デバイスはアフォーダンスの外観を変化させ(8006)(例えば、短時間スケールでの外観変化戦略及び長時間での外観変化戦略に基づいて)、コンテンツの外観の変化がレンジ切替基準を満たしたとの判定に従って(レンジ切替基準は、アフォーダンス(例えば、背景コンテンツの外観の変化による、ディスプレイ特性(例えば、グレー値又はルミナンス)に対する、累積及び統合された値)の下部及び周囲のコンテンツの全体的な明るさ又は暗さの測定値が、第1の閾値と交差したときに満たされる)、アフォーダンス外観の値範囲を第3の値範囲(例えば、任意選択的に、黒が0、白が1である黒から白のスケール上で、明アフォーダンスに対するアフォーダンス外観の値範囲[0.6、1])にシフトさせることであって、第3の値範囲は第2の値範囲とは異なり(例えば、第3の値範囲は、第2の値範囲に含まれない少なくとも1つの値を含み、任意選択的に、第2の値範囲とは重なり合わない)(例えば、レンジ切替基準が満たされたとき、現在選択されているアフォーダンスタイプは、以前に選択されたアフォーダンスタイプ(例えば、暗アフォーダンス)から代替のアフォーダンスタイプ(例えば、明アフォーダンス)に変化する)、第3の値範囲(例えば、任意選択的に、黒が0、白が1である黒から白のスケール上で、[0.6、1])は第1の値範囲よりも小さい、ことと、アフォーダンスのディスプレイ特性の値を、アフォーダンスが上に表示されているコンテンツの同じディスプレイ特性の値に応じて変化させることであって(例えば、アフォーダンスの各画素に対するディスプレイ特性の値は、現在選択されているアフォーダンスタイプ(例えば、明アフォーダンス)に対応する第1の定義済みの値マッピングに基づいて決定される)、アフォーダンスのディスプレイ特性はアフォーダンス外観の値範囲内で変動するように制約されている、ことと、コンテンツの外観の変化がレンジ切替基準を満たしていないとの判定に従って、アフォーダンス外観の値範囲を第2の値範囲として維持しながら(例えば、第1の基準が満たされたとき、現在選択されているアフォーダンスタイプは以前に選択されたアフォーダンスタイプ(例えば、暗アフォーダンス)と同じままである)、アフォーダンスのディスプレイ特性の値を、アフォーダンスが上に表示されているコンテンツの同じディスプレイ特性の値に応じて変化させること(例えば、アフォーダンスの各画素に対するディスプレイ特性の値は、現在選択されているアフォーダンスタイプ(例えば、暗アフォーダンス)に対応する第2の定義済みの変換関係に基づいて決定される)と、を含んでいる。これは例えば、図5AD~図5AEに示される。
いくつかの実施形態では、レンジ切替基準はレンジ切替トリガ基準及びレンジ切替完了基準を含み(8008)、レンジ切替トリガ基準は、既定閾値(例えば、既定閾値は、明アフォーダンスから暗アフォーダンスへ切り替わるときは第1の閾値であり、暗アフォーダンスから明アフォーダンスへ切り替わるときは第1の閾値とは異なる第2の閾値である)と交差するために、コンテンツの外観変化が、コンテンツ外観の定義済みの測定を引き起こす第1の時間間隔にわたる、第1の変化量(例えば、アフォーダンスの下部及びアフォーダンスの下方のコンテンツの一部に対する統合されたルミナンス値などの、ディスプレイ特性の、バイアスを付加した移動平均)を含むことを要求し、レンジ切替完了基準は、レンジ切替トリガ基準が満たされた後に、定義済みの遷移時間(例えば、5秒)が終了する前に、レンジ切替トリガ基準を再び満たすために、コンテンツの外観変化が、第1の時間間隔の後の第2の時間間隔にわたる第2の変化量を含むことを要求する。2つの値範囲の間での、アフォーダンス外観のレンジ切替を完了させるために、1度目にレンジ切替トリガ基準が満たされた後、定義済みの遷移期間内で、レンジ切替トリガ基準が再び満たされることがないことを要求することにより、デバイスの操作性は高まり(例えば、下地コンテンツの変化が過渡的なときに、不必要に、アフォーダンス外観タイプを切り替えユーザの注意をそらすことを避けることにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、レンジ切替によるプロセッサ及びスクリーンへの要求を減らす)。
いくつかの実施形態では、レンジ切替トリガ基準に対して使用される既定閾値は、アフォーダンス外観の値範囲として使用されている現在の値範囲(例えば、現在使用されているアフォーダンスタイプに対する値範囲)に基づき選択され(8010)、アフォーダンス外観の値範囲が第2の値範囲のときは第1の閾値を既定閾値として使用すること、及びアフォーダンス外観の値範囲が第3の値範囲のときは第2の閾値を既定閾値として使用すること、を含む。(いくつかの実施形態では、アフォーダンス外観の値範囲が第2の値範囲(例えば、「暗アフォーダンス」に関連した値範囲)と第3の値範囲(例えば、「明アフォーダンス」に関連した値範囲)との間にあるとき、既定閾値は、アフォーダンス外観の値範囲として直前に選択された値範囲に基づいている(例えば、アフォーダンス外観値のターゲット範囲として、アフォーダンス外観値の「明アフォーダンス」範囲がいったん選択されると、アフォーダンス外観値の「暗アフォーダンス」範囲に、いつ切り替えて戻すかを決定するために「明アフォーダンス」閾値が使われ、アフォーダンス外観値のターゲット範囲として、アフォーダンス外観値の「暗アフォーダンス」範囲がいったん選択されると、アフォーダンス外観値の「明アフォーダンス」範囲に、いつ切り替えて戻すかを決定するために「暗アフォーダンス」閾値が使われる)。レンジ切替トリガ基準として異なる閾値を使用することにより、デバイスの操作性は高まり(例えば、下地コンテンツの変化が過渡的なときに、現在選択されているアフォーダンス外観タイプの方向にバイアスを調整し、不必要にアフォーダンス外観タイプを切り替えユーザの注意をそらすことを避けることにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、レンジ切替によるプロセッサ及びスクリーンへの要求を減らす)。
いくつかの実施形態では、アフォーダンスが上に表示されているコンテンツの外観変化を検出したことに応答して、アフォーダンスの外観を変化させることは(8012)、第1の時間間隔の間で、かつレンジ切替完了基準が満たされる前に、レンジ切替トリガ基準が第1の変化量によって満たされたとの判定に従って、アフォーダンス外観の値範囲を第2の値範囲及び第3の値範囲とは異なる、中間の値範囲(例えば、任意選択的に、黒が0、白が1である黒から白のスケール上で、中間の値範囲[0.3、0.7]であり、第2の値範囲の開始値と第3の値範囲の開始値との間にある開始値を有し、第2の値範囲の終了値と第3の値範囲の終了値との間にある終了値を有する)にシフトさせることと、アフォーダンスのディスプレイ特性の値を、アフォーダンスが上に表示されているコンテンツの同じディスプレイ特性の値に応じて変化させること(例えば、アフォーダンスの各画素に対するディスプレイ特性の値は、現在選択されているアフォーダンスタイプ(例えば、明アフォーダンス)に対応する第1の定義済みの値マッピングに基づいて決定される)と、を含み、アフォーダンスのディスプレイ特性はアフォーダンス外観の値範囲内で変動するように制約されている。いくつかの実施形態では、第2の値範囲と第3の値範囲との間には、複数の中間の値範囲が存在し、デバイスは、定義済みの遷移時間にわたって、レンジ切替完了基準が満たされるまで、複数の中間の値範囲の各々を逐次的に経由して移動する。レンジ切替完了基準が満たされた後は、コンテンツの任意の追加的外観変化に応じて、アフォーダンスのディスプレイ特性が変動したとき、アフォーダンスのディスプレイ特性は第3の値範囲内に制約される。アフォーダンス外観の値範囲を、2つの安定したアフォーダンス外観タイプの間の切り替え中の遷移として、2つの安定したアフォーダンス外観タイプの外観範囲の値とは異なる(例えば、間の)、中間の値範囲にシフトすることにより、デバイスの操作性が改善され(例えば、アフォーダンス外観タイプの切り替えをより巧妙にかつユーザの注意をそらすことをより少なくすることにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、コンテンツの外観変化は、レンジ切替トリガ基準が満たされた後で、かつレンジ切替完了基準が満たされる前に、第1の時間間隔の後の第3の時間間隔にわたる第3の変化量を含む(8014)。例えば、レンジ切替トリガ基準が満たされた後、デバイスは、明アフォーダンスと暗アフォーダンスに対するコンテンツ-アフォーダンス外観反転曲線の間に位置する、中間のコンテンツ-アフォーダンス外観反転曲線を選択し、中間の反転曲線を使用して、遷移期間の間のコンテンツのルミナンスの変化に基づいて、アフォーダンスのルミナンスをどのように変化させるかを決定する(例えば、レンジ切替トリガ基準を満たしてから5秒以内に)。アフォーダンス外観の範囲が、ある安定な値範囲から他の安定な値範囲へ一定時間にわたってシフトする間に、アフォーダンスの外観が下地コンテンツと共に変化し続けることを可能にすることにより、デバイスの操作性が改善され(例えば、アフォーダンス外観タイプの切り替え中にアフォーダンスの外観に視覚的連続性を提供することにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、アフォーダンスが上に表示されているコンテンツの外観変化は、コンテンツのスクローリングにより引き起こされ(8016)、レンジ切替基準は、レンジ切替基準を満たすために、コンテンツのスクローリングの不在を必要としない。下地コンテンツがスクロールしている間に、アフォーダンスの外観が下地コンテンツと共に変化することを可能にすることにより、デバイスの操作性が改善され(例えば、下地コンテンツがスクロールしている間に、アフォーダンスの外観に視覚的連続性を提供することにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、アフォーダンスが上に表示されているコンテンツの外観変化は、アフォーダンスの下方のコンテンツの移動によって引き起こされ(8018)(例えば、コンテンツのズーミング又はスクローリング)、レンジ切替基準は、レンジ切替基準が満たされるためには、アフォーダンスの下方のコンテンツが、少なくとも所定の時間の間に定義済みの量未満しか移動しないことを必要とする。例えば、コンテンツ外観の定義済みの測定値(例えば、アフォーダンスの下部及びアフォーダンスの下方の、コンテンツの一部に対する統合されたルミナンス値などの、ディスプレイ特性の、バイアスを付加した移動平均)が、既定閾値と交差することを要求することに加えて、レンジ切替基準は更に、既定閾値が交差する時刻の近辺でコンテンツが短時間の間、実質的に静止したままであることを要求する。レンジ切替基準を満たすために、アフォーダンスの下地にあるコンテンツが実質的に静止(例えば、スクロールを停止する)していることを要求することにより、デバイスの操作性が改善され(例えば、継続したスクロールによりコンテンツが素早く変化しているとき、アフォーダンス外観タイプが前後に不必要に切り替わることを回避するために)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、アフォーダンスのディスプレイ特性の値を、コンテンツの同じディスプレイ特性の値に応じて変化させることは、コンテンツのディスプレイ特性の値が減少したとの判定に従って(及び、任意選択的に、コンテンツのディスプレイ特性の値が第1の値範囲の定義済みのサブレンジ内にあること(例えば、アフォーダンス値に不連続が存在する、2つの特別なコンテンツ値の範囲の外側で))、コンテンツのディスプレイ特性の値の変化(例えば、減少)の量に応じてアフォーダンスのディスプレイ特性の値を増加させること(アフォーダンスの下地にあるコンテンツがより暗くなるときは、アフォーダンスはより明るくなる)、及び、コンテンツのディスプレイ特性の値が増加したとの判定に従って(及び、任意選択的に、コンテンツのディスプレイ特性の値が第1の値範囲の定義済みのサブレンジ内にあること(例えば、アフォーダンス値に不連続が存在する、2つの特別なコンテンツ値の範囲の外側で))、コンテンツのディスプレイ特性の値の変化(例えば増加)の量に応じてアフォーダンスのディスプレイ特性の値を増加させること(アフォーダンスの下地にあるコンテンツがより明るくなるときは、アフォーダンスはより暗くなる)、を含む(8020)。値の反転(例えば、コンテンツ値の減少に伴いアフォーダンス値を増加させ、コンテンツ値の増加に伴いアフォーダンス値を減少させること)を使用して、アフォーダンスのディスプレイ特性の値を、下地コンテンツの同じディスプレイ特性の値に基づいて決定することにより、デバイスの操作性が改善され(例えば、注意をそらしたり、邪魔になったりせずに、アフォーダンスの十分な視認性を提供することにより)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、アフォーダンスのディスプレイ特性の値が第2の値範囲内で変動するとき(例えば、レンジ切替基準が満たされる前)、及びアフォーダンスのディスプレイ特性の値が第3の値範囲内で変動するとき(例えば、レンジ切替基準が満たされた前)、コンテンツのディスプレイ特性の値が所与の量で変化すると、アフォーダンスのディスプレイ特性の値は同じ量で変化する(8022)。このことは、例えば、図5AE及び図5AFに示される。いくつかの実施形態では、アフォーダンスのディスプレイ特性とコンテンツの同じディスプレイ特性との間のコンテンツ-アフォーダンス外観反転曲線(例えば、アフォーダンスルミナンス対背景ルミナンス曲線)は、暗アフォーダンス及び明アフォーダンスに対して同じ形状を有し、アフォーダンスの各画素に対するルミナンス値が、現在選択されているアフォーダンスタイプに対する、予め保存されたルミナンス値のデータベースから参照される。レンジ切替基準を満たすために、アフォーダンスの下地にあるコンテンツが実質的に静止(例えば、スクロールを停止する)していることを要求することにより、デバイスの操作性が改善され(例えば、継続したスクロールによりコンテンツが素早く変化しているとき、アフォーダンス外観タイプが前後に不必要に切り替わることを回避するために)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、デバイスは、アフォーダンス外観の値範囲を、第2の値範囲(例えば、暗アフォーダンスに対するアフォーダンス外観の値範囲)から第3の値範囲(例えば、明アフォーダンスに対するアフォーダンス外観の値範囲)へシフトさせ(8024)、第2の値範囲から第3の値範囲へ、一定時間(例えば、5秒)にわたって段階的にシフトさせることを含み、方法は、アフォーダンス外観の値範囲を、第2の値範囲から第3の値範囲へ段階的にシフトさせている間に、アフォーダンスが上に表示されているコンテンツの追加的外観変化を検出することと、アフォーダンスが上に表示されているコンテンツの追加的外観変化を検出したことに応答して、アフォーダンス外観の値範囲に応じてアフォーダンスの外観を変化させること(例えば、アフォーダンス外観の値範囲は時間と共に段階的にシフトする)であって、コンテンツの外観変化がレンジ切替基準を満たしたとの判定に従って(例えば、レンジ切替基準を2度目に満たした)、アフォーダンス外観の値範囲を第2の値範囲に段階的にシフトさせて戻すことを開始すること(例えば、値範囲の開始点と終了点を、1、2、3、4、5、10秒などの時間にわたってシフトさせ)、及びコンテンツの外観変化がレンジ切替基準を満たしていないとの判定に従って(例えば、レンジ切替基準を2度目に満たした)、アフォーダンス外観の値範囲を、第2の値範囲から第3の値範囲に段階的にシフトさせ続けること、を含む、ことと、を含む。いくつかの実施形態では、上記のとおり、レンジ切替基準が満たされたかどうかを決定するために使用される既定閾値は、アフォーダンス外観の値範囲に対するターゲットの値範囲が、第2の値範囲(例えば、暗アフォーダンス)であるか、又は第3の値範囲(例えば、明アフォーダンス)であるかに基づいて変化する。この方法により、アフォーダンスが定義済みの遷移期間にわたって、ある外観タイプから別の外観タイプに段階的に切り替わることが可能となり、定義済みの遷移期間の間、アフォーダンスの外観値は下地コンテンツの外観値の変化に応じて変化し続ける。更に、外観の値範囲がシフトしている間に、レンジ切替基準が再び満たされてもよい(例えば、コンテンツ及びアフォーダンスの外観の継続的な変化により)。その結果、トリガされていたレンジ切替は、デバイスにより有効化されて、遷移期間の間にレンジ切替基準が再び満たされるかどうかに依存して、逆転して又は続行して終了する。遷移期間の間にレンジ切替を逆転するメカニズムにより、デバイスの操作性が改善され(例えば、コンテンツが素早く変化しているとき、アフォーダンス外観タイプが前後に不必要に切り替わることを回避するために)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、コンテンツの外観変化がレンジ切替基準を満たしたとの判定に応じて、アフォーダンスのディスプレイ特性の値を第3の値範囲内で変化させた後に、デバイスはアフォーダンスが上に表示されているコンテンツの追加的外観変化を検出し(8026)、アフォーダンスが上に表示されているコンテンツの追加的外観変化を検出したことに応答して、デバイスはアフォーダンスの外観を変化させ、コンテンツの追加的外観変化がレンジ切替トリガ基準を1度目に満たし、かつレンジ切替完了基準を満たしていないとの判定に応じて、アフォーダンスのディスプレイ特性の値を、アフォーダンスが上に表示されているコンテンツの同じディスプレイ特性の値に応じて変化させることであって(例えば、アフォーダンスの各画素に対するディスプレイ特性の値は、現在選択されているアフォーダンスタイプ(例えば、明アフォーダンス)に対応する、第1の定義済みの値マッピングに基づいて決定される)、アフォーダンスのディスプレイ特性は、第2の値範囲と第3の値範囲との間の第1の中間の値範囲内で変動するように制約されている、ことと、コンテンツの追加的外観変化が、1度目の後にレンジ切替完了基準を満たすことなくレンジ切替トリガ基準を2度目に満たしたとの判定に応じて、アフォーダンスのディスプレイ特性の値を、アフォーダンスが上に表示されているコンテンツの同じディスプレイ特性の値に応じて変化させることであって、アフォーダンスのディスプレイ特性は、第3の値範囲と第1の中間値の範囲との間の第2の中間の値範囲内で変動するように制約されている、ことと、及びコンテンツの追加的外観変化が、レンジ切替完了基準を満たす前にレンジ切替トリガ基準を1度だけ満たしたとの判定に応じて、アフォーダンスのディスプレイ特性の値を、アフォーダンスが上に表示されているコンテンツの同じディスプレイ特性の値に応じて変化させることであって、アフォーダンスのディスプレイ特性は、第2の値範囲内で変動するように制約されている、ことと、を含む。アフォーダンスが第1の外観タイプから第2の外観タイプに切り替わった後(例えば、レンジ切替基準が最初に満たされたことに応答して)、レンジ切替トリガ基準が再び満たされた場合、アフォーダンスは第2の外観タイプから第1の外観タイプに切り替わって戻ってもよい。定義済みの遷移期間の間、外観の値範囲は、第2の外観タイプの値範囲から第1の外観タイプの値範囲にシフトし続ける。外観の値範囲がシフトしている間に、レンジ切替トリガ基準はまた次に満たされてもよい(例えば、コンテンツ及びアフォーダンスの外観の継続的な変化により)。その結果、トリガされていたレンジ切替は、現在の状態から逆転し、再び第2の外観タイプの値範囲の方向に向かってもよい。遷移期間の間にレンジ切替を逆転するメカニズムにより、デバイスの操作性が改善され(例えば、コンテンツが素早く変化しているとき、アフォーダンス外観タイプが前後に不必要に切り替わることを回避するために)、ユーザとデバイスとの間のインターフェースは、より効率的になり(例えば、デバイスを使用中又は双方向作用中に、ユーザの注意をそらすことを減らしユーザの間違いを減らすことにより)、デバイスの電池寿命は改善する(例えば、ユーザがデバイスをより素早くかつ効率的に使用することを可能にすることにより)。
いくつかの実施形態では、ホームアフォーダンスが初期的に表示されるとき(例えば、画面上に表示されているコンテンツの変化を生じさせるコンテキストの切り替えが起こる)、様々な実施形態で説明したような形で、コンテンツ外観の測定に基づき、明アフォーダンスか暗アフォーダンスかを積極的に選択するには、デバイスは下地コンテンツに関する十分な量の情報を蓄積していない。よって、デバイスは任意選択的に、アフォーダンスのディスプレイ特性の値を中間値(例えば、0.5、又はフルルミナンス値の50%)などの定義済みの値に設定し、上記の動的アルゴリズムにアフォーダンス外観値を更新させる(例えば、本明細書で説明した、短時間スケール戦略及び長時間スケールの戦略の両方に応じて)。いくつかの実施形態では、アフォーダンスが初期的に表示されるとき、アフォーダンス外観タイプの切り替えのための進行速度は一時的に増加され(例えば、現在選択されているアフォーダンスタイプを維持する方向のバイアスが減少される)、それによりホームアフォーダンスは下地コンテンツの外観に基づいて、明アフォーダンス又は暗アフォーダンスのいずれかに素早く適合する。いくつかの実施形態では、ホームアフォーダンスが初期的に表示されているという状況は、例えば、カバーシートユーザインターフェース(例えば、システムレベル情報画面)がディスプレイの端部から引き下ろされて現在表示されているアプリケーションユーザインターフェース又はホーム画面を覆うとき、又はユーザインターフェースが回転されたとき(例えば、デバイスの回転により)、等、新しいアプリケーションユーザインターフェースが表示されるとき(例えば、マルチタスクユーザインターフェース内での最近開いたアプリケーションの選択、又はホーム画面上のアプリケーションアイコンからアプリケーションを起動することを介して)などの、ユーザインターフェース内のコンテキスト切替イベントによってトリガされる。いくつかの実施形態では、アフォーダンスは、アフォーダンスの不透明度を時間と共に段階的に増加させること、アフォーダンスを時間と共に画面端部から画面上にスライドさせること、及び/又はアフォーダンスのサイズを時間と共に段階的に増加させることを含む、アニメーション化された遷移を伴って初期的に表示される。
図8A~図8Fにおける動作について説明された特定の順序は単なる例であり、説明された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法6000、及び7000)に関して本明細書に記載される他のプロセスの詳細はまた、図8A~図8Eに関して上述した方法8000にも、類似の様式で適用可能であることに留意されたい。例えば、方法8000に関して上述した、接触、ジェスチャ、ユーザインターフェースオブジェクト、アプリケーションビュー、制御パネル、制御、アフォーダンス、位置閾値、方向的条件、反転曲線、フィルタ、値範囲、ナビゲーション基準、移動パラメータ、フォーカスセレクタ、及び/又はアニメーションは、任意選択的に、本明細書で説明される他の方法(例えば、方法6000、及び7000)に関して本明細書で説明される、接触、ジェスチャ、ユーザインターフェースオブジェクト、アプリケーションビュー、制御パネル、制御、位置閾値、方向的条件、ナビゲーション基準、移動パラメータ、フォーカスセレクタ、及び/又はアニメーションの特徴のうちの1つ以上を有する。簡潔のため、これらの詳細はここでは繰り返さない。
上述した情報処理方法での動作は任意選択的に、汎用プロセッサ(例えば、図1A及び図3に関連して上述したようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図8A~図8Fを参照して上述した動作は、任意選択的に図1A~図1Bに記される構成要素によって実施される。例えば、検出動作、シフト動作、及び変更動作は、任意選択的にイベントソート部170、イベント認識部180、及びイベント処理部190により実施される。イベントソート部170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136-1に配信する。アプリケーション136-1の対応するイベント認識部180は、そのイベント情報を対応するイベント定義186と比較し、タッチ感知面上の第1の場所での第1の接触(又は、デバイスの回転)が、ユーザインターフェース上のオブジェクトの選択、又は1つの向きから別の向きへのデバイスの回転などの、定義済みのイベント又はサブイベントに対応するかどうかを判定する。対応する定義済みのイベント又はサブイベントが検出されると、イベント認識部180は、イベント又はサブイベントの検出に関連するイベント処理部190をアクティブ化する。イベント処理部190は、アプリケーション内部状態192を更新するために、データ更新部176又はオブジェクト更新部177を、任意選択的に使用するか又は呼び出す。いくつかの実施形態では、イベント処理部190は、アプリケーションにより表示されるものを更新するために、対応するGUI更新部178にアクセスする。同様に、当業者にとって、他の処理が図1A~図1Bに記される構成要素に基づいてどのように実装され得るかは明らかであろう。
上述した説明は、説明の目的上、特定の実施形態を参照して説明されている。しかし、上記の例示的な議論は、網羅的であること、又は開示される厳密な形態に本発明を限定することを意図するものではない。上記の教示を鑑みて、多くの修正及び変形が可能である。本発明の原理及びその実際的な応用を最良の形で説明し、それによって他の当業者が、想到される特定の用途に好適な様々な修正を伴って本発明及び説明された様々な実施形態を最良の形で使用することを可能とするために、これらの実施形態が選択され説明されている。