ディスプレイを有する多くの電子デバイスは、電子デバイス上に表示される異なるユーザインタフェース間をナビゲートするために、機械式ホームボタンなどの機械式ボタンを含む。しかし、機械式ボタンは、固定的なダウンクリック及び固定的なアップクリックを超えてユーザにフィードバックを、たとえあったとしてもほとんど提供しない。本明細書で説明される方法は、ユーザインタフェースの操作をユーザにとってより効率的で直感的なものにするボタン(例えば、仮想又は物理ホームボタン)との対話中に、視覚フィードバック、触覚フィードバック、及び/又は音声フィードバックを提供する。
本明細書で説明される方法、デバイス、及びGUIは、デバイスとユーザの対話を、複数のやり方で改善するためにフィードバックを使用するものであり、
●ユーザ入力デバイス(例えば、仮想又は物理ホームボタン)のアクティブ化に関する視覚フィードバックを提供することと、
●デバイスのホームボタン上の複数のタイプの入力に応じて視覚フィードバック及び触知出力を提供することと、
●ホームボタンによって提供されたフィードバックを構成することと、
●ユーザインタフェース触覚及びホームボタン触覚を制御することと、
●入力ベースのメトリック又はユーザインタフェースベースのメトリックに依存して異なる触知出力パターンを有する触知出力を生成することと、
●ダブルクリック入力の第1のクリックに対するものとは異なる、ダブルクリック入力の第2のクリックに対する触知出力を提供することと、
●デバイス上の永続的な非機械式ボタンのアクティブ化を示すための離散触知出力を提供することと、を含む。
例示的なデバイス
ここで、添付図面に実施例が示される実施形態を詳細に参照する。以下の詳細な説明では、説明される様々な実施形態の完全な理解を提供するために数多くの具体的な詳細が記載されている。しかしながら、説明されている様々な実施形態は、これらの具体的な詳細を伴わずとも実践し得ることが、当業者には明らかであろう。他の例においては、周知の方法、手順、構成要素、回路、及びネットワークは、実施形態の態様を不必要に不明瞭なものとしないよう、詳細には説明されていない。
本明細書では、第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つ以上の機能、並びにデバイス上で表示される対応する情報は任意選択で、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つ以上の触知出力生成器を介して)、触知出力は、ユーザがデバイスを保持又はタッチする際に異なる触覚感覚を引き起こし得る。ユーザの感覚がユーザの触知出力の知覚に基づいている間、ほとんどのユーザは、デバイスによって生成された波形、周波数、及び振幅における変化を識別することが可能である。よって、ユーザに異なる操作が実行されたことを示すために波形、周波数及び振幅を調節することができる。そのようにして、所与の環境(例えば、グラフィカルな特徴及びオブジェクトを含むユーザインタフェース、仮想境界及び仮想オブジェクトを有するシミュレートされた物理的環境、物理的境界及び物理的オブジェクトを有する現実の物理的環境、並びに/あるいは上記のいずれかの組み合わせ)におけるオブジェクトの、特性(例えば、サイズ、材質、重量、剛性、平滑度など)、振る舞い(例えば、振動、変位、加速、回転、拡大など)、及び/又は、対話(例えば、衝突、付着、反発、引き付け、摩擦など)をシミュレートするように設計、選択、及び/又は立案された触知出力パターンを有する触知出力は、一部の状況で、デバイスのユーザの操作の入力誤りを削減し、効率性を増大させる有益なフィードバックをユーザに提供する。加えて、触知出力は任意選択で、入力閾値又はオブジェクトの選択などのシミュレートされた物理特性に関連しないフィードバックに対応するように生成される。そのような触知出力は、一部の状況では、デバイスのユーザの操作の入力誤りを削減し、効率性を増大させる有益なフィードバックをユーザに提供する。
一部の実施形態では、適切な触知出力パターンを有する触知出力は、ユーザインタフェース内又はデバイス内のシーンの後方で対象となるイベントの発生へのキュー(cue)としての役割を果たす。対象となるイベントの例は、デバイス上又はユーザインタフェース内で提供されるアフォーダンス(例えば、実ボタン、仮想ボタン、又はトグルスイッチ)のアクティブ化、要求された動作の成功又は失敗、ユーザインタフェース内の境界に到達すること又は超えること、新たな状態に入ること、オブジェクト間の入力の焦点を切り替えること、新たなモードのアクティブ化、入力閾値に到達すること又は超えること、入力又はジェスチャのタイプの検出又は認識などを含む。一部の実施形態では、触知出力は、リダイレクション又は中断入力が時宜を得て検出されない限り発生する、近いうち起こるイベント又は結果に対する警告又はアラートしての役割を果たすように提供される。触知出力はまた、他のコンテキストでは、ユーザ経験を強化し、視覚若しくは運動困難なユーザへのデバイスのアクセシビリティ若しくは他のアクセシビリティの必要性を改善し、並びに/又はユーザインタフェース及び/若しくはデバイスの効率性及び機能性を改善するために使用される。触知出力は任意選択で、音声出力及び/又は視認可能なユーザインタフェースの変更を伴い、それは、ユーザがユーザインタフェース及び/又はデバイスと対話するときのユーザの経験を更に高め、ユーザインタフェース及び/又はデバイスの状態に関する情報の搬送を更に促進し、並びにデバイスのユーザの操作の入力誤りを削減し、効率性を増大させる。
図4F1は、1つ以上の変換(例えば、変調、増幅、トランケーションなど)であるか、あるいは又はそれを介した、個々に、あるいは組み合わせて使用できるサンプル触知出力パターンのセットを提供して、本明細書で言及するユーザインタフェース及び方法に関して上述したもの及び説明するもののような様々なシナリオ及び様々な目的で、好適な触覚フィードバックを生成する。図4F2〜図4F4は、図4F1に示すグラフの拡張ビューである。触知出力のパレットのこの例は、3つの波形と8つの周波数のセットをどのように使用して触知出力パターンのアレイを生成するかを示す。この図に示した触知出力パターンに加えて、これらの触知出力パターンのそれぞれは、例えば、図4G1に示すフルタップ80Hz、フルタップ200Hz、ミニタップ80Hz、ミニタップ200Hz、マイクロタップ80Hz、及びマイクロタップ200Hzに対して、それぞれ利得1.0、0.75、0.5及び0.25の変更によって示すように、触知出力パターンに対する利得値を変更することにより、振幅が任意選択的に調整される。図4G2〜図4G4は、図4G1に示すグラフの拡張ビューである。図4G1に示すように、触知出力パターンの利得を変更することにより、パターンの周波数を変えたり波形の形状を変えたりすることなく、パターンの振幅を変更する。一部の実施形態では、可動質量にどれだけの力を加えることができるかによって一部の触知出力生成器が制限されるため、触知出力パターンの周波数を変更することで振幅がより小さくもなり、それによって、より高周波数での質量の移動が、振幅をより小さくするように制約されて、波形を作成するのに必要な加速が触知出力生成器の操作力範囲外の力を必要としないよう保証する(例えば230Hz、270Hz、及び300Hzでのフルタップのピーク振幅は、80Hz、100Hz、125Hz、及び200Hzでのフルタップの振幅よりも低い)。
図4F1において、それぞれの列は、特定の波形を有する触知出力パターンを示す。触知出力パターンの波形は、その触知出力パターンで触知出力を生成するために可動質量が通過する時間に対する中立位置(例えば、xzero)に対する物理的変位のパターンを表す。例えば、図4F1中の左列に示す第1のセットの触知出力パターン(例えば「フルタップ」の触知出力パターン)は、完全な2サイクルの振動(例えば、中立位置で開始及び終了し、中立位置を3回横切る振動)を含む波形をそれぞれ有する。図4F1の真ん中の列に示す触知出力パターン(例えば、「ミニタップ」の触知出力パターン)の第2のセットは、完全な1サイクルを含む振動(例えば、中立位置で開始及び終了し、中立位置を1回横切る振動)を含む波形を有する。図4F1の右列に示す触知出力パターン(例えば、「マイクロタップ」の触知出力パターン)の第3のセットは、完全な1サイクルの半分を含む振動(例えば、中立位置で開始及び終了し、中立位置を横切らない振動)を含む波形を有する。触知出力パターンの波形はまた、触知出力の開始時及び終了時における可動質量の段階的な速度アップ及び速度低下を表す開始バッファ及び終了バッファを含む。図4F1〜図4G1に示す例示的な波形は、可動質量の移動の最大限度及び最小限度を表すxmax値及びxmin値を含む。より大きな可動質量を有するより大きな電子デバイスの場合、質量の移動の最小限度及び最大限度が、より大きい、又はより小さいこともある。図4F1〜4G1に示す例は、1次元における質量の移動を説明しているが、同様の原理は2次元又は3次元における可動質量の移動にも適用される。
図4F1に示すように、それぞれの触知出力パターンは、その特性周波数を有する触知出力からユーザが感じる触覚感覚の「ピッチ」に影響を及ぼす、対応する特性周波数を有する。連続的な触知出力に対して、特性周波数は、触知出力生成器の可動質量による所与の時間期間内に完了するサイクル(例えば、1秒あたりのサイクル)の数を表す。離散触知出力の場合、離散出力信号(例えば、0.5サイクル、1サイクル、又は2サイクルで)が生成され、特性周波数値は、その特性周波数で触知出力を生成するためには可動質量がどれだけ速く移動する必要があるかを特定する。図4F1に示すように、触知出力のそれぞれのタイプ(例えば、フルタップ、ミニタップ、又はマイクロタップなどのそれぞれの波形により定義される)については、より高い周波数値は、可動質量によるより速い移動(単数又は複数)に対応し、したがって、一般に、触知出力を完了するための時間がより短い(例えば、離散触知出力に必要なサイクルの数を完了するための時間開始及び終了バッファ時間を含む)。例えば、特性周波数が80Hzのフルタップは、特性周波数が100Hzのフルタップよりも完了までに時間がかかる(例えば、図4F1では35.4ms対28.3ms)。更に、所与の周波数では、それぞれの周波数におけるその波形のサイクルがより多い触知出力は、同じそれぞれの周波数におけるその波形のサイクルがより少ない触知出力よりも完了するまでに時間がかかる。例えば、150Hzのフルタップは150Hzのミニタップよりも完了に時間がかかり(例えば19.4ms対12.8ms)、150Hzのミニタップは150Hzのマイクロタップよりも完了に時間がかかる(例えば12.8ms対9.4ms)。しかし、異なる周波数の触知出力パターンでは、この規則性があてはまらないことがある(例えば、より多くのサイクルだがより高い周波数を伴う触知出力では、より少ないサイクルだがより低い周波数を伴う触知出力よりもかかる時間が短いことがあり、その逆も起こり得る)。例えば、300Hzでは、フルタップはミニタップと同じ時間がかかる(例えば、9.9ms)。
図4F1に示すように、触知出力パターンはまた、触知信号に含まれるエネルギー量に影響を及ぼす特性振幅、又はその特性振幅を有する触知出力を通じてユーザが感じ得る触覚感覚の「強度」を有する。一部の実施形態では、触知出力パターンの特性振幅は、触知出力を生成する際の中立位置からの可動質量の最大変位を表す絶対値又は正規化値を指す。一部の実施形態では、触知出力パターンの特性振幅は、例えば、(例えば、ユーザインタフェースのコンテキスト及び挙動に基づいてカスタマイズされた)様々な条件、並びに/あるいは予め構成されたメトリック(例えば、入力ベースのメトリック、及び/又はユーザインタフェースベースのメトリック)に従って、固定された又は動的に決定される利得係数(例えば、0〜1の値)によって調整可能である。一部の実施形態では、入力ベースのメトリック(例えば、強度変化メトリック又は入力速度メトリック)は、触知出力の生成をトリガする入力中に、入力の特性(例えば、押圧入力における接触の特性強度の変化率、又はタッチ感知面を横切る接触の移動速度)を測定する。一部の実施形態では、ユーザインタフェースベースのメトリック(例えば、境界を横切る速度のメトリック)は、触知出力の生成をトリガするユーザインタフェース変更中にユーザインタフェース要素の特性(例えば、ユーザインタフェースにおける隠れている境界又は見えている境界を横切る要素の移動速度)を測定する。一部の実施形態では、触知出力パターンの特性振幅は「包絡線」によって変調されてもよく、隣接するサイクルのピークは異なる振幅を有してもよく、上記の波形のうちの1つは、触知出力が生成されている間に経時的に触知出力の一部の振幅を徐々に調整するように、経時的に(例えば、0〜1まで)変更する包絡線パラメータ乗算することによって更に変調される。
例示的な目的で、図4F1では、具体的な周波数、振幅、及び波形がサンプル触知出力パターンで表されているが、他の周波数、振幅及び波形を有する触知出力パターンも同様の目的で使用され得る。例えば、0.5〜4サイクルの波形を用いることができる。また、60Hz〜400Hzの範囲の他の周波数も用いることができる。表1は、特定の触覚フィードバック挙動の例、構成、及びそれらの使用例を提供するものである。
表1で示した例は、異なる入力及びイベントに対して触知出力を生成できる環境の範囲を示す。表1は、デバイスが、示された触知出力を用いて挙げられた入力又はイベントのそれぞれに応答する要件として解釈されるべきではない。むしろ、表1は、(例えば、触知出力パターン、頻度、利得などに基づく)異なる入力及び/又はイベントに対して、触知出力がどのように変化し、及び/又は類似するかを説明することを意図している。例えば、表1は、「イベント成功」触知出力が「イベント失敗」触知出力からどのように変化するか、及び、再ターゲット触知出力がインパクト触知出力とどのように異なるかを示す。
図4H〜図4Jは、一部の実施形態に係る、ボタンクリックをシミュレートするために触知出力と関連して使用される、例示的な触覚音声出力パターン対時間を示す。
図4Kは、一部の実施形態に係る、触知出力パターン及び触覚音声出力パターン対時間の例示的な組み合わせを示す。図4L〜図4Qは、明確にするために、図4Kに示した組み合わせを拡大していうる。
図4Hでは、制御アクティブ化閾値における接触強度の変化率が、閾値変化率を上回る場合(例えば、接触が「通常の」強い/速い押圧となる場合)、トップ触覚音声パターン「クリックA1音声」は、図4K(第1のクリック列の第1の行)及び図4Lの上部に示すように、「通常の」第1のクリックにおける第1のダウンクリックをシミュレートするために、「クリックA」通常のミニタップ(230Hz)とともに再生される音声出力である。この例では、「クリックA1音声」は、「クリックA」通常のミニタップ(230Hz)触知出力の開始から2msだけオフセットされている。一部の場合では、同じ「クリックA1音声」及び「クリックA」通常のミニタップ(230Hz)が再生され、第1のダウンクリックに続く第1のアップクリックをシミュレートする。一部の場合では、「クリックA1音声」及び/又は「クリックA」通常のミニタップ(230Hz)の利得は、アップクリックにおいて、先行するダウンクリックに対して(例えば50%だけ)低減される。
制御アクティブ化閾値における接触強度の変化率が、閾値変化率を下回る場合(例えば、接触が「弱い」及び/又は遅い押圧となる場合)、トップ触覚音声パターン「クリックA1音声」はまた、図4K(第1のクリック列の第2の行)及び図4Lの下部に示すように、「弱い」第1のクリックにおける第1のダウンクリックをシミュレートするために、「クリックA」弱いミニタップ(230Hz)とともに再生される。「弱い」ダウンクリックをシミュレートするために、「クリックA1音声」及び「クリックA」弱いミニタップ(230Hz)の利得が、「弱い」ダウンクリックにおいて、「通常の」ダウンクリックに対して(例えば、50%だけ)低減される。この例では、「クリックA1音声」は、「クリックA」弱いミニタップ(230Hz)触知出力の開始から2msだけオフセットされている。一部の場合では、同じ「クリックA1音声」及び「クリックA」弱いミニタップ(230Hz)とが再生され、第1のダウンクリックに続く第1のアップクリックをシミュレートする。一部の場合では、「クリックA1音声」及び/又は「クリックA」弱いミニタップ(230Hz)の利得は、アップクリックにおいて、先行するダウンクリックに対して(例えば50%だけ)低減される。
図4Hでは、制御アクティブ化閾値における接触強度の変化率が、閾値変化率を上回る場合(例えば、第2のクリックにおける接触が「通常の」強い/速い押圧となる場合)、ボトム触覚音声パターン「クリックA2音声」は、図4K(第2のクリック列の第1の行)及び図4Mの上部に示すように、所定の時間期間内に(例えば、ダブルクリック入力における第2のクリックのように)第1のクリックに続く、「通常の」の第2のクリックにおける第2のダウンクリックをシミュレートするために、「クリックA」通常のミニタップ(230Hz)とともに再生される音声出力である。この例では、「クリックA2音声」は、「クリックA」通常のミニタップ(230Hz)触知出力の開始から2msだけオフセットされている。一部の場合では、同じ「クリックA2音声」及び「クリックA」通常のミニタップ(230Hz)とが再生され、第2のダウンクリックに続く第2のアップクリックをシミュレートする。一部の場合では、「クリックA2音声」及び/又は「クリックA」通常のミニタップ(230Hz)の利得は、第2のアップクリックにおいて、先行する第2のダウンクリックに対して(例えば50%だけ)低減される。
制御アクティブ化閾値における接触強度の変化率が、閾値変化率を下回る場合(例えば、接触が「弱い」及び/又は遅い押圧となる場合)、ボトム触覚音声パターン「クリックA2音声」はまた、図4K(第2のクリック列の第2の行)及び図4Mの下部に示すように、所定の時間期間内に(例えば、ダブルクリック入力における第2のクリックのように)第1のクリックに続く、「弱い」第2のクリックにおける第2のダウンクリックをシミュレートするために、「クリックA」弱いミニタップ(230Hz)とともに再生される。「弱い」ダウンクリックをシミュレートするために、「クリックA2音声」及び「クリックA」弱いミニタップ(230Hz)の利得が、「弱い」ダウンクリックにおいて、「通常の」ダウンクリックに対して(例えば、50%だけ)低減される。この例では、「クリックA2音声」は、「クリックA」弱いミニタップ(230Hz)触知出力の開始から2msだけオフセットされている。一部の場合では、同じ「クリックA2音声」及び「クリックA」弱いミニタップ(230Hz)とが再生され、第2のダウンクリックに続く第2のアップクリックをシミュレートする。一部の場合では、「クリックA2音声」及び/又は「クリックA」弱いミニタップ(230Hz)の利得は、第2のアップクリックにおいて、先行する第2のダウンクリックに対して(例えば50%だけ)低減される。
図4Iでは、制御アクティブ化閾値における接触強度の変化率が、閾値変化率を上回る場合(例えば、接触が「通常の」強い/速い押圧となる場合)、トップ触覚音声パターン「クリックB1音声」は、図4K(第1のクリック列の第3の行)及び図4Nの上部に示すように、「通常の」の第1のクリックにおける第1のダウンクリックをシミュレートするために、「クリックB」通常のミニタップ(270Hz)とともに再生される音声出力である。この例では、「クリックB1音声」は、「クリックB」通常のミニタップ(270Hz)触知出力の開始から2.8msだけオフセットされている。一部の場合では、同じ「クリックB1音声」及び「クリックB」通常のミニタップ(270Hz)とが再生され、第1のダウンクリックに続く第1のアップクリックをシミュレートする。一部の場合では、「クリックB1音声」及び/又は「クリックA」通常のミニタップ(270Hz)の利得は、先行するダウンクリックに対して、アップクリックにおいて(例えば50%だけ)低減される。
制御アクティブ化閾値における接触強度の変化率が、閾値変化率を下回る場合(例えば、接触が「弱い」及び/又は遅い押圧となる場合)、トップ触覚音声パターン「クリックB1音声」はまた、図4K(第1のクリック列の第4の行)及び図4Nの下部に示すように、「弱い」第1のクリックにおける第1のダウンクリックをシミュレートするために、「クリックB」弱いミニタップ(270Hz)とともに再生される。「弱い」ダウンクリックをシミュレートするために、「クリックB1音声」及び「クリックB」弱いミニタップ(270Hz)の利得は、「弱い」ダウンクリックにおいて、「通常の」ダウンクリックに対して低(例えば、50%だけ)減される。この例では、「クリックB1音声」は、「クリックB」弱いミニタップ(270Hz)触知出力の開始から2.8msだけオフセットされている。一部の場合では、同じ「クリックB1音声」及び「クリックB」弱いミニタップ(270Hz)とが再生され、第1のダウンクリックに続く第1のアップクリックをシミュレートする。一部の場合では、「クリックB1音声」及び/又は「クリックB」弱いミニタップ(230Hz)の利得は、アップクリックにおいて、先行するダウンクリックに対して(例えば50%だけ)低減される。
図4Iでは、制御アクティブ化閾値における接触強度の変化率が、閾値変化率を上回る場合(例えば、第2のクリックにおける接触が「通常の」強い/速い押圧となる場合)、ボトム触覚音声パターン「クリックB2音声」は、図4K(第2のクリック列の第3の行)及び図4Oの上部に示すように、所定の時間期間内に(例えば、ダブルクリック入力における第2のクリックのように)第1のクリックに続く、「通常の」の第2のクリックにおける第2のダウンクリックをシミュレートするために、「クリックB」通常のミニタップ(270Hz)とともに再生される音声出力である。この例では、「クリックB2音声」は、「クリックB」通常のミニタップ(270Hz)触知出力の開始から2.8msだけオフセットされている。一部の場合では、同じ「クリックB2音声」及び「クリックB」通常のミニタップ(230Hz)とが再生され、第2のダウンクリックに続く第2のアップクリックをシミュレートする。一部の場合では、「クリックB2音声」及び/又は「クリックB」通常のミニタップ(270Hz)の利得は、第2のアップクリックにおいて、先行する第2のダウンクリックに対して(例えば50%だけ)低減される。
制御アクティブ化閾値における接触強度の変化率が、閾値変化率を下回る場合(例えば、接触が「弱い」及び/又は遅い押圧となる場合)、ボトム触覚音声パターン「クリックB2音声」はまた、図4K(第2のクリック列の第4の行)及び図4Oの下部に示すように、所定の時間期間内に(例えば、ダブルクリック入力における第2のクリックのように)第1のクリックに続く、「弱い」第2のクリックにおける第2のダウンクリックをシミュレートするために、「クリックB」弱いミニタップ(270Hz)とともに再生される。「弱い」ダウンクリックをシミュレートするために、「クリックB2音声」及び「クリックB」弱いミニタップ(270Hz)の利得は、「弱い」ダウンクリックにおいて、「通常の」ダウンクリックに対して低(例えば、50%だけ)減される。この例では、「クリックB2音声」は、「クリックB」弱いミニタップ(270Hz)触知出力の開始から2.8msだけオフセットされている。一部の場合では、同じ「クリックB2音声」及び「クリックB」弱いミニタップ(270Hz)とが再生され、第2のダウンクリックに続く第2のアップクリックをシミュレートする。一部の場合では、「クリックB2音声」及び/又は「クリックB」弱いミニタップ(270Hz)の利得は、第2のアップクリックにおいて、先行する第2のダウンクリックに対して(例えば50%だけ)低減される。
図4Jでは、制御アクティブ化閾値における接触強度の変化率が、閾値変化率を上回る場合(例えば、接触が「通常の」強い/速い押圧となる場合)、トップ触覚音声パターン「クリックC1音声」は、図4K(第1のクリック列の第5の行)及び図4Pの上部に示すように、「通常の」の第1のクリックにおける第1のダウンクリックをシミュレートするために、「クリックC」通常のミニタップ(300Hz)とともに再生される音声出力である。この例では、「クリックC1音声」は、「クリックC」通常のミニタップ(300Hz)触知出力の開始から1.9msだけオフセットされている。一部の場合では、同じ「クリックC1音声」及び「クリックC」通常のミニタップ(300Hz)とが再生され、第1のダウンクリックに続く第1のアップクリックをシミュレートする。一部の場合では、「クリックC1音声」及び/又は「クリックC」通常のミニタップ(300Hz)の利得は、アップクリックにおいて、先行するダウンクリックに対して(例えば50%だけ)低減される。
制御アクティブ化閾値における接触強度の変化率が、閾値変化率を下回る場合(例えば、接触が「弱い」及び/又は遅い押圧となる場合)、トップ触覚音声パターン「クリックC1音声」はまた、図4K(第1のクリック列の第6の行)及び図4Pの下部に示すように、「弱い」第1のクリックにおける第1のダウンクリックをシミュレートするために、「クリックC」弱いミニタップ(300Hz)とともに再生される。「弱い」ダウンクリックをシミュレートするために、「クリックC1音声」及び「クリックC」弱いミニタップ(300Hz)の利得は、「弱い」ダウンクリックにおいて、「通常の」ダウンクリックに対して(例えば、50%だけ)低減される。この例では、「クリックC1音声」は、「クリックC」弱いミニタップ(300Hz)触知出力の開始から1.9msだけオフセットされている。一部の場合では、同じ「クリックC1音声」及び「クリックC」弱いミニタップ(270Hz)とが再生され、第1のダウンクリックに続く第1のアップクリックをシミュレートする。一部の場合では、「クリックC1音声」及び/又は「クリックC」弱いミニタップ(300Hz)の利得は、アップクリックにおいて、先行するダウンクリックに対して(例えば50%だけ)低減される。
図4Jでは、制御アクティブ化閾値における接触強度の変化率が、閾値変化率を上回る場合(例えば、第2のクリックにおける接触が「通常の」強い/速い押圧となる場合)、ボトム触覚音声パターン「クリックC2音声」は、図4K(第2のクリック列の第5の行)及び図4Qの上部に示すように、所定の時間期間内に(例えば、ダブルクリック入力における第2のクリックのように)第1のクリックに続く、「通常の」第2のクリックにおける第2のダウンクリックをシミュレートするために、「クリックC」通常のミニタップ(300Hz)とともに再生される音声出力である。この例では、「クリックC2音声」は、「クリックC」通常のミニタップ(300Hz)触知出力の開始から1.9msだけオフセットされている。一部の場合では、同じ「クリックC2音声」及び「クリックC」通常のミニタップ(300Hz)とが再生され、第2のダウンクリックに続く第2のアップクリックをシミュレートする。一部の場合では、「クリックC2音声」及び/又は「クリックC」通常のミニタップ(300Hz)の利得は、第2のアップクリックにおいて、先行する第2のダウンクリックに対して(例えば50%だけ)低減される。
制御アクティブ化閾値における接触強度の変化率が、閾値変化率を下回る場合(例えば、接触が「弱い」及び/又は遅い押圧となる場合)、ボトム触覚音声パターン「クリックC2音声」はまた、図4K(第2のクリック列の第6の行)及び図4Qの下部に示すように、所定の時間期間内に(例えば、ダブルクリック入力における第2のクリックのように)第1のクリックに続く、「弱い」第2のクリックにおける第2のダウンクリックをシミュレートするために、「クリックC」弱いミニタップ(300Hz)とともに再生される。「弱い」ダウンクリックをシミュレートするために、「クリックC2音声」及び「クリックC」弱いミニタップ(300Hz)の利得は、「弱い」ダウンクリックにおいて、「通常の」ダウンクリックに対して(例えば、50%だけ)低減される。この例では、「クリックC2音声」は、「クリックC」弱いミニタップ(300Hz)触知出力の開始から1.9msだけオフセットされている。一部の場合では、同じ「クリックC2音声」及び「クリックC」弱いミニタップ(300Hz)とが再生され、第2のダウンクリックに続く第2のアップクリックをシミュレートする。一部の場合では、「クリックC2音声」及び/又は「クリックC」弱いミニタップ(300Hz)の利得は、第2のアップクリックにおいて、先行する第2のダウンクリックに対して(例えば50%だけ)低減される。
デバイス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は任意選択で、ワールドワイドウェブ(World Wide Web)(WWW)とも称されるインターネット、イントラネット、並びに/又はセルラー電話ネットワーク、無線ローカルエリアネットワーク(LAN)及び/若しくはメトロポリタンエリアネットワーク(MAN)などの無線ネットワークなどのネットワークと、他のデバイスと無線通信によって通信する。無線通信は、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを、任意選択的に使用し、それらの通信規格、通信プロトコル、及び通信技術としては、移動通信用のグローバルシステム(Global System for Mobile Communications)(GSM)、拡張データGSM環境(Enhanced Data GSM Environment)(EDGE)、高速ダウンリンクパケット接続(high-speed downlink packet access)(HSDPA)、高速アップリンクパケット接続(high-speed uplink packet access)(HSUPA)、Evolution、Data−Only(EV−DO)、HSPA、HSPA+、2重セルHSPA(Dual-Cell HSPA)(DC−HSPDA)、ロングタームエボリューション(long term evolution)(LTE)、近距離無線通信(near field communication)(NFC)、広帯域符号分割多元接続(wideband code division multiple access)(W−CDMA)、符号分割多元接続(code division multiple access)(CDMA)、時分割多元接続(time division multiple access)(TDMA)、Bluetooth(登録商標)、Wireless Fidelity(Wi−Fi)(登録商標)(例えば、IEEE 802.11a、IEEE 802.11ac、IEEE 802.11ax、IEEE 802.11b、IEEE 802.11g、及び/又はIEEE 802.11n)、ボイスオーバーインターネットプロトコル(voice over Internet Protocol)(VoIP)、Wi−MAX、電子メール用のプロトコル(例えば、インターネットメッセージアクセスプロトコル(Internet message access protocol)(IMAP)及び/又はポストオフィスプロトコル(post office protocol)(POP))、インスタントメッセージング(例えば、拡張可能メッセージング及びプレゼンスプロトコル(extensible messaging and presence protocol)(XMPP)、インスタントメッセージング及びプレゼンス利用拡張向けセッション開始プロトコル(Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions)(SIMPLE)、インスタントメッセージング及びプレゼンスサービス(Instant Messaging and Presence Service)(IMPS))、及び/又はショートメッセージサービス(Short Message Service)(SMS)、あるいは本文書の出願日現在までにまだ開発されていない通信プロトコルを含めた任意の他の好適な通信プロトコルが挙げられるが、これらに限定されない。
音声回路110、スピーカ111、及びマイクロフォン113は、ユーザとデバイス100との間の音声インタフェースを提供する。音声回路110は、周辺機器インタフェース118から音声データを受信し、音声データを電気信号に変換し、電気信号をスピーカ111に送信する。スピーカ111は、電気信号を人間の可聴音波に変換する。音声回路110はまた、マイクロフォン113により音波から変換された電気信号を受信する。音声回路110は、電気信号を音声データに変換し、音声データを処理のために周辺機器インタフェース118に送信する。音声データは任意選択で、周辺機器インタフェース118によって、メモリ102及び/若しくはRF回路108から取得され、並びに/又はメモリ102及び/若しくはRF回路108へ送信される。一部の実施形態では、音声回路110はまた、ヘッドセットジャック(例えば、図2の212)を含む。ヘッドセットジャックは、音声回路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、図2A)は任意選択で、スピーカ111及び/又はマイクロフォン113のボリューム制御のためのアップ/ダウンボタンを含む。1つ以上のボタンは任意選択で、プッシュボタン(例えば、206、図2A)を含む。
タッチ感知ディスプレイシステム112は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ156は、タッチ感知ディスプレイシステム112から電気信号を受信し、及び/又はタッチ感知ディスプレイシステム112へ電気信号を送信する。タッチ感知ディスプレイシステム112は、ユーザに視覚出力を表示する。視覚出力は、任意選択的に、グラフィック、テキスト、アイコン、ビデオ、及びこれらの任意の組み合わせ(総称して「グラフィック」と称する)を含む。一部の実施形態では、視覚出力の一部又は全ては、ユーザインタフェースオブジェクトに対応する。本明細書で使用されるように、用語「アフォーダンス」は、ユーザ−対話形式のグラフィカルユーザインタフェースオブジェクト(例えば、グラフィカルユーザインタフェースオブジェクトに向かって方向付けられた入力に応答するように構成されたグラフィカルユーザインタフェースオブジェクト)を指す。ユーザ−対話形式のグラフィカルユーザインタフェースオブジェクトの例は、ボタン、スライダ、アイコン、選択可能メニュー項目、スイッチ、ハイパーリンク、又はその他のユーザインタフェース制御を含むが、それらに限定されない。
タッチ感知ディスプレイシステム112は、触覚及び/又は触知の接触に基づくユーザからの入力を受け付けるタッチ感知面、センサ、又はセンサのセットを有する。(メモリ102内の任意の関連するモジュール及び/又は命令セットとともに)タッチ感知ディスプレイシステム112及びディスプレイコントローラ156は、タッチ感知ディスプレイシステム112上の接触(及び、接触の任意の移動又は中断)を検出し、検出された接触をタッチ感知ディスプレイシステム112上で表示されるユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ、又は画像)との相互作用に変換する。ある例示的な実施形態では、タッチ感知ディスプレイシステム112とユーザとの間の接触点は、ユーザの指又はスタイラスに対応する。
タッチ感知ディスプレイシステム112は任意選択で、LCD(liquid crystal display)(液晶ディスプレイ)技術、LPD(light emitting polymer display)(発光ポリマーディスプレイ)技術、又はLED(light emitting diode)(発光ダイオード)技術を使用するが、他の実施形態では、他のディスプレイ技術が使用される。タッチ感知ディスプレイシステム112及びディスプレイコントローラ156は任意選択で、容量技術、抵抗性技術、赤外線技術、及び表面音響波技術、並びに、タッチ感知ディスプレイシステム112との1つ以上の接触点を判定するためのその他の近接センサアレイ又は他の要素を含むが、これらに限定されない、現在既知の又は後に開発される複数のタッチ感知技術のうちのいずれかを使用して、接触及びその任意の移動又は中断を検出する。例示的な実施形態では、Apple Inc.(Cupertino、California)からの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(例えば、ユニバーサルシリアルバス(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とのユーザ対話に応じて、デバイス100上の1つ以上の場所で触知出力を生成するために、触知出力生成器(単数又は複数)167によって使用される命令を生成するための、様々なソフトウェア構成要素を含む。
テキスト入力モジュール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、及び音楽プレーヤモジュール146と併せて、トレーニングサポートモジュール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は、ユーザの指示に従い、カレンダー及びカレンダーに関連付けられたデータ(例えば、カレンダー項目、すべきことのリストなど)を作成、表示、修正、及び記憶するための、実行可能命令を含む。
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は、ユーザの指示に従って、メモ、するべきことのリストなどを作成及び管理する実行可能命令を含む。
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、及び/若しくはマイクロフォン113(音声回路110を通じた)などのセンサから受信する情報を送信する。周辺機器インタフェース118がI/Oサブシステム106から受信する情報は、タッチ感知ディスプレイシステム112又はタッチ感知面からの情報を含む。
一部の実施形態では、イベントモニタ171は、予め定められた間隔で周辺機器インタフェース118に要求を送信する。それに応じて、周辺機器インタフェース118はイベント情報を送信する。他の実施形態では、周辺機器インタフェース118は、重要なイベント(例えば、予め定められたノイズ閾値を上回り、及び/又は予め定められた期間よりも長い入力を受信すること)が存在するときのみ、イベント情報を送信する。
一部の実施形態では、イベントソート部170はまた、ヒットビュー判定モジュール172及び/又はアクティブイベント認識部判定モジュール173も含む。
ヒットビュー判定モジュール172は、タッチ感知ディスプレイシステム112が2つ以上のビューを表示するとき、1つ以上のビュー内のどこにおいてサブイベントが発生したかを判定するためのソフトウェア手順を提供する。ビューは、制御及びユーザがディスプレイ上で見ることができる他の要素で構成されている。
アプリケーションと関連付けられたユーザインタフェースの別の態様は、本明細書でアプリケーションビュー又はユーザインタフェースウィンドウと呼ばれる場合があるビューのセットであり、それらの中で情報が表示され、タッチに基づくジェスチャが発生する。タッチが検出されるアプリケーションビュー(それぞれのアプリケーションの)は任意選択で、アプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応する。例えば、タッチが検出される最下位レベルのビューは任意選択で、ヒットビューと呼ばれ、また、適切な入力として認識されるイベントのセットは任意選択で、タッチに基づくジェスチャを開始する初期のタッチのヒットビューに少なくとも部分的に基づいて判定される。
ヒットビュー判定モジュール172は、タッチに基づくジェスチャのサブイベントに関連する情報を受信する。アプリケーションが階層において編成された複数のビューを有するとき、ヒットビュー判定モジュール172は、サブイベントを処理するべき階層内の最下位のビューとしてヒットビューを特定する。ほとんどの状況では、ヒットビューは、開始するサブイベント(すなわち、イベント又は潜在的なイベントを形成する一連のサブイベントにおける最初のサブイベント)が発生する最下位レベルのビューである。ヒットビューがヒットビュー判定モジュールによって特定されると、ヒットビューは典型的には、それがヒットビューとして特定された同一のタッチ又は入力元に関連する全てのサブイベントを受信する。
アクティブイベント認識部判定モジュール173は、ビュー階層内のどのビュー(単数又は複数)が特定の一連のサブイベントを受信するべきかを判定する。一部の実施形態では、アクティブイベント認識部判定モジュール173は、ヒットビューのみが特定の一連のサブイベントを受信するべきであると判定する。他の実施形態では、アクティブイベント認識部判定モジュール173は、サブイベントの物理的な位置を含む全てのビューがアクティブに関与しているビューであると判定し、したがって、全てのアクティブに関与しているビューが特定の一連のサブイベントを受信するべきであると判定する。他の実施形態では、タッチサブイベントが1つの特定のビューと関連付けられたエリアに完全に制限された場合でさえ、階層における上位ビューは、アクティブに関与しているビューのままである。
イベントディスパッチャモジュール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で使用される電話番号を更新、又はビデオプレーヤモジュール145で使用されるビデオファイルを記憶する。一部の実施形態において、オブジェクト更新部177は、アプリケーション136−1で使用されるオブジェクトを作成及び更新する。例えば、オブジェクト更新部177は、新たなユーザインタフェースオブジェクトを作成する、又はユーザインタフェースオブジェクトの位置を更新する。GUI更新部178は、GUIを更新する。例えば、GUI更新部178は、表示情報を準備し、タッチ感知ディスプレイ上に表示するために表示情報をグラフィックモジュール132に送る。
一部の実施形態では、イベントハンドラ(単数又は複数)190は、データ更新部176、オブジェクト更新部177、及びGUI更新部178を含み、又はそれらへのアクセスを有する。一部の実施形態では、データ更新部176、オブジェクト更新部177、及びGUI更新部178は、それぞれのアプリケーション136−1又はアプリケーションビュー191の単一モジュールに含まれる。他の実施形態では、それらは、2つ以上のソフトウェアモジュールに含まれる。
タッチ感知ディスプレイ上のユーザのタッチのイベント処理に関する前述の説明はまた、入力デバイスを用いて多機能デバイス100を操作させるための他の形態のユーザ入力にも適用されるが、その全てがタッチスクリーン上で開始されるわけではないことを理解されたい。例えば、単一若しくは複数のキーボードの押圧若しくは保持に任意選択で合わせたマウスの移動及びマウスボタンの押圧、タッチパッド上のタップ、ドラッグ、スクロールなどの接触の移動、ペンスタイラス入力、デバイスの移動、口頭による指示検出された眼球運動、生体入力、並びに/又はそれらの任意の組み合わせは任意選択で、認識されることになるイベントを定義するサブイベントに対応する入力として利用される。
図1Cは、一部の実施形態に係る、触知出力モジュールを示すブロック図である。一部の実施形態では、I/Oサブシステム106(例えば、触覚フィードバックコントローラ161(図1A)及び/又は他の入力コントローラ(単数又は複数)160(図1A)は、図1Cに示す例たる構成要素の少なくともいくつかを含む。一部の実施形態では、周辺機器インタフェース118は、図1Cに示す例たる構成要素のうちの少なくともいくつかを含む。
一部の実施形態では、触知出力モジュールは、触覚フィードバックモジュール133を含む。一部の実施形態では、触覚フィードバックモジュール133は、電子デバイス上のソフトウェアアプリケーションからのユーザインタフェースフィードバックに対する触知出力(例えば、表示されたユーザインタフェースに対応するユーザ入力に応答するフィードバック、及び、電子デバイスのユーザインタフェースにおける動作の実行又はイベントの発生を示す警告)を集めて組み合わせる。触覚フィードバックモジュール133は、(触知出力を生成するために使用される波形を提供するための)波形モジュール123、(異なるチャネルの波形などの波形を混合するための)ミキサ125、(波形のダイナミックレンジを低減又は圧縮するための)圧縮器127、(波形中の高周波信号成分をフィルタリングアウトするための)ローパスフィルタ129、及び(熱条件に従って波形を調整するための)熱コントローラ131、のうちの1つ以上を含む。一部の実施形態では、触覚フィードバックコントローラ161(図1A)には、触覚フィードバックモジュール133が含まれる。一部の実施形態では、触覚フィードバックモジュール133の別々のユニット(又は触覚フィードバックモジュール133の別個の実装)はまた、音声コントローラ(例えば、図1Aの音声回路110)に含まれ、音声信号を生成するために使用される。一部の実施形態では、単一の触覚フィードバックモジュール133が、音声信号を生成し、触知出力の波形を生成するために使用される。
一部の実施形態では、触覚フィードバックモジュール133はまた、トリガモジュール121(例えば、ソフトウェアアプリケーション、オペレーティングシステム、又は触知出力を生成することを決定し、対応する触知出力を生成する処理を開始する他のソフトウェアモジュール)を含む。一部の実施形態では、トリガモジュール121は、(例えば、波形モジュール123により)波形の生成を開始するためのトリガ信号を生成する。例えば、トリガモジュール121は、プリセットされたタイミング基準に基づいてトリガ信号を生成する。一部の実施形態では、トリガモジュール121は、外部触覚フィードバックモジュール133からトリガ信号を受信し(例えば、一部の実施形態では、触覚フィードバックモジュール133は、触覚フィードバックモジュール133の外部に位置するハードウェア入力処理モジュール146からトリガ信号を受信し)、トリガ信号を、触覚フィードバックモジュール133(例えば、波形モジュール123)内の他の構成要素、又はハードウェア入力デバイス(例えば、ホームボタン)のアクティブ化に基づいて(例えば、トリガモジュール121を用いて)動作をトリガするソフトウェアアプリケーションに中継する。一部の実施形態では、トリガモジュール121はまた、触知フィードバック生成命令(例えば、触覚フィードバックモジュール133から、図1A及び3)を受信する。一部の実施形態では、トリガモジュール121は、触知フィードバック命令を(例えば、図1A及び3の触覚フィードバックモジュール133から)受信する触知フィードバックモジュール133(又は触覚フィードバックモジュール133内のトリガモジュール121)に応じてトリガ信号を生成する。
波形モジュール123は、入力としてトリガ信号(例えば、トリガモジュール121から)を受信し、受信トリガ信号に応じて、1つ以上の触知出力の生成のための波形(例えば、図4F1〜4G1を参照して以下でより詳細に説明される波形などの、波形モジュール123によって使用するために設計された所定のセットの波形から選択された波形)を提供する。
ミキサ125は、波形(例えば波形モジュール123)を入力として受信し、波形を合成する。例えば、ミキサ125が2つ以上の波形(例えば、第1のチャネルの第1の波形と、第2のチャネルの第1の波形と少なくとも部分的に重なる第2の波形)を受信すると、ミキサ125は、2つ以上の波形の総和に対応する合成波形を出力する。一部の実施形態では、ミキサ125はまた、(例えば、特定の波形(単数又は複数)のスケールを増大させ、及び/又は波形の残部のスケールを減少させることによって)2つ以上の波形のうちの1つ以上の波形を変更して、2つ以上の波形の残部にわたって特定の波形(単数又は複数)を強調する。一部の状況では、ミキサ125は、合成波形から除去する1つ以上の波形を選択する(例えば、触知出力生成器167によって同時に出力するよう要求されている3つを超えるソースからの波形が存在する場合、最も古いソースからの波形を除外する)。
圧縮器127は、波形(例えば、ミキサ125からの合成波形)を入力として受信し、波形を変更する。一部の実施形態では、圧縮器127は、波形に対応する触知出力が減少するように、(例えば、触知出力生成器167(図1A)又は357(図3)の物理的な仕様に従って)波形を低減する。一部の実施形態では、圧縮器127は、波形に対して予め定義された最大振幅を強制するによってなどで、波形を制限する。例えば、圧縮器127は、波形部分の振幅が所定の振幅しきい値を超えないように維持しつつ、所定の振幅しきい値を超える波形部分の振幅を低減する。一部の実施形態では、圧縮器127は、波形のダイナミックレンジを低減する。一部の実施形態では、圧縮機127は、合成波形が触知出力生成器167の性能仕様(例えば、力及び/又は移動可能な質量変位限界)内にとどまるように、波形のダイナミックレンジを動的に低減する。
ローパスフィルタ129は、波形(例えば、圧縮器127からの圧縮波形)を入力として受信し、波形をフィルタリング(例えば、平滑化)する(例えば、波形の高周波信号成分を除去又は低減する。例えば、一部の例では、圧縮器127は、圧縮波形に、圧縮された波形に従って、触知出力の生成を妨害する、及び/又は触知出力が生成されたときに触知出力生成器167の性能仕様を超える、外来信号(例えば、高周波信号成分)を含む。ローパスフィルタ129は、波形内のこのような外来信号を低減又は除去する。
熱制御器131は、入力として波形(例えば、ローパスフィルタ129からのフィルタリングされた波形)を受信し、(例えば、触覚フィードバックコントローラ161の温度、及び/又はデバイス100によって検出された外部温度などの、デバイス100内で検出された内部温度に基づいて)デバイス100の熱条件に従って波形を調整する。例えば、一部の場合では、触覚フィードバックコントローラ161の出力は、温度によって変化する(例えば、触覚フィードバックコントローラ161は、同じ波形を受信したことに応じて、触覚フィードバックコントローラ161が第1の温度にあるときには第1の触知出力を生成し、触覚フィードバックコントローラ161が第1の温度とは別個の第2の温度にあるときには第2の触知出力を生成する)。例えば、触知出力の大きさ(又は振幅)は、温度によって変化してもよい。温度変化の影響を低減するために、波形を変更する(例えば、温度に基づいて波形の振幅を増減する)。
一部の実施形態において、触覚フィードバックモジュール133(例えば、トリガモジュール121)は、ハードウェア入力処理モジュール146に結合される。一部の実施形態では、図1Aの他の入力コントローラ(単数又は複数)160は、ハードウェア入力処理モジュール146を含む。一部の実施形態では、ハードウェア入力処理モジュール146は、ハードウェア入力デバイス145(例えば、ホームボタンなどの、図1の他の入力又は制御デバイス116)からの入力を受信する。一部の実施形態では、ハードウェア入力デバイス145は、タッチ感知表示システム112(図1A)、キーボード/マウス350(図3)、タッチパッド355(図3)、他の入力又は制御デバイス116(図1A)のうちの1つ、又は強度感知ホームボタン(例えば、図2Bに示すような、又は図2Cに示すような機械式アクチュエータを有するホームボタン)などの入力デバイスのいずれかである。一部の実施形態では、ハードウェア入力デバイス145は、強度感知ホームボタン(例えば、図2Bに示すような、又は図2Cに示すような機械式アクチュエータを有するホームボタン)、及びタッチ感知表示システム112(図1A)、キーボード/マウス350(図3)、又はタッチパッド355(図3)からなる。一部の実施形態では、ハードウェア入力処理モジュール145からの入力に応じて、ハードウェア入力処理モジュール146は、1つ以上のトリガ信号を触知フィードバックモジュール133に提供して、ホームボタンの「クリック」(例えば、「ダウンクリック」又は「アップクリック」)に対応する入力などの、所定の入力基準を満たすユーザ入力が検出されたことを示す。一部の実施形態では、触覚フィードバックモジュール133は、ホームボタンの「クリック」に対応する入力に応じて、ホームボタンの「クリック」に対応する波形を提供し、物理ホームボタンを押圧する触覚フィードバックをシミュレートする。
一部の実施形態では、触知出力モジュールは、触知出力の生成を制御する触知フィードバック制御器161(図1Aの触覚フィードバック制御器161)を含む。一部の実施形態では、触覚フィードバックコントローラ161は、複数の触知出力生成器に結合され、複数の触知出力生成器のうちの1つ以上の触知出力生成器を選択し、選択された1つ以上の触知出力生成器に波形を送信して、触知出力を生成する。一部の実施形態では、触覚フィードバック制御器161は、(例えば、特定の波形(単数又は複数)のスケールを増大させ、及び/又は波形の残余のスケールを減少させることによって、例えば、ソフトウェアイベントに対応する触知出力にわたって、ハードウェア入力デバイス145のアクティブ化に対応する触知出力を優先させるために)ハードウェア入力デバイス145のアクティブ化に対応する触知出力要求と、ソフトウェアイベント(例えば、触覚フィードバックモジュール133からの触知出力要求)に対応する触知出力要求とを整合して、2つ以上の波形うちの1つ以上の波形を変更して、2つ以上の波形の残余にわたって特定の波形(単数又は複数)を強調する。
一部の実施形態では、触覚フィードバックコントローラ161の出力は、デバイス100の音声回路(例えば、音声回路110、図11A)に結合され、音声信号をデバイス100の音声回路に提供する。一部の実施形態では、触覚フィードバックコントローラ161は、触知出力を生成するために使用される波形と、触知出力の生成に関連して音声出力を提供するために使用される音声信号の両方を提供する。一部の実施形態では、触覚フィードバックコントローラ161は、(例えば、音声信号及び/又は波形を遅延させることによって)音声出力及び触知出力が同期するように、(触知出力を生成するために使用される)音声信号及び/又は波形を変更する。一部の実施形態では、触覚フィードバックコントローラ161は、デジタル波形をアナログ信号に変換するために使用されるDAコンバータを含み、アナログ信号は、増幅器163及び/又は触知出力生成器167によって受信される。
一部の実施形態では、触知出力モジュールは、増幅器163を含む。一部の実施形態では、増幅器163は、波形を(例えば、触覚フィードバック制御器161から)受信し、増幅波形を触知出力生成器167(例えば、触知出力生成器167(図1A)又は357(図3)のうちのいずれか)に送信する前に波形を増幅する。例えば、増幅器163は、受信した波形を、触知出力生成器167の物理的仕様(例えば、触知出力生成器167に送信された信号が触覚フィードバックコントローラ161から受信した波形に対応する触知出力を生成するように、触知出力を生成するために触知出力生成器167によって必要とされる電圧及び/又は電流)に従って信号レベルに増幅し、増幅した波形を触知出力生成器167に送信する。これに応じて、触知出力生成器167は、(例えば、可動質量の中立位置に対して1つ以上の距離で移動可能質量を往復移動させることによって)触知出力を生成する。
一部の実施形態では、触知出力モジュールは、触知出力生成器169に結合されたセンサ167を含む。センサ169は、触知出力生成器167又は触知出力生成器167の1つ以上の構成要素(例えば、触知出力を生成するために使用されるメンブレンなどの1つ以上の移動部)の、状態又は状態変化(例えば、機械的位置、物理的変位、及び/又は移動)を検出する。一部の実施形態では、センサ169は、磁界センサ(例えば、ホール効果センサ)又は他の変位及び/又は移動センサである。一部の実施形態では、センサ169は、触覚フィードバックコントローラ161へ情報(例えば、触知出力生成器167における1つ以上の部分の位置、変位、及び/又は移動)を提供し、センサ169によって提供される触知出力生成器167の状態についての情報に従って、触覚フィードバックコントローラ161は、触覚フィードバックコントローラ161から出力された波形(例えば、任意選択的に増幅器163を介した、触知出力生成器167に送信された波形)を調整する。
図2は、一部の実施形態に係る、タッチスクリーン(例えば、タッチ感知ディスプレイシステム112、図1A)を有するポータブル多機能デバイス100を示す。タッチスクリーンは任意選択で、ユーザインタフェース(UI)200内で1つ以上のグラフィックを表示する。本実施形態、並びに後述する実施形態において、ユーザは、例えば、1本以上の指202(図には、正確な縮尺率では描かれていない)又は1つ以上のスタイラス203(図には、正確な縮尺率では描かれていない)を用いて、グラフィック上でジェスチャを行うことにより、グラフィックのうちの1つ以上を選択することができる。一部の実施形態では、ユーザが1つ以上のグラフィックとの接触を断った際に、その1つ以上のグラフィックの選択が生じる。一部の実施形態では、ジェスチャは、1回以上のタップ、1回以上のスワイプ(左から右へ、右から左へ、上方向へ及び/若しくは下方向へ)、並びに/又は、デバイス100と接触した指のローリング(右から左へ、左から右へ、上方向へ及び/若しくは下方向へ)を、任意選択的に含む。一部の実装又は状況では、グラフィックとの不測の接触は、グラフィックを選択しない。例えば、選択に対応するジェスチャがタップであるとき、アプリケーションアイコンの上をスイープするスワイプジェスチャは任意選択で、対応するアプリケーションを選択しない。
デバイス100はまた任意選択で、「ホーム」又はメニューボタン204などの1つ以上の物理ボタンを含む。前で説明されたように、メニューボタン204は任意選択で、デバイス100上で任意選択で実行される、アプリケーションのセットにおける任意のアプリケーション136にナビゲートするために使用される。代わりに、一部の実施形態では、メニューボタンは、タッチスクリーンディスプレイ上で表示されるGUI内のソフトキーとして実装される。
一部の実施形態では、デバイス100は、タッチスクリーンディスプレイと、メニューボタン204と、デバイスへの電源供給のオン/オフ及びデバイスのロックのためのプッシュボタン206と、ボリューム調節ボタン(単数又は複数)208と、加入者識別モジュール(SIM)カードスロット210と、ヘッドセットジャック212と、ドッキング/充電用外部ポート124と、を含む。プッシュボタン206は任意選択的に、ボタンを押し下げ、所定の時間間隔の間ボタンを押し下げた状態で保持することによってデバイス上の電源をオン/オフする、ボタンを押し下げ所定の時間間隔が経過する前にボタンを解放することによってデバイスをロックする、及び/又は、デバイスのロックを解除する若しくはロック解除処理を開始するために、使用される。一部の実施形態では、デバイス100はまた、マイクロフォン113を通して、一部の機能をアクティブ化又は非アクティブ化するための口頭入力を受け付ける。デバイス100はまた任意選択で、タッチ感知ディスプレイシステム112上の接触の強度を検出するための1つ以上の接触強度センサ165、及び/又はデバイス100のユーザに対する触知出力を生成するための1つ以上の触知出力生成器167を含む。
図2B〜2Cは、図1A、2A、3及び/又は4A(例えばホームボタン204)に示す電子デバイスで使用するのに適した第1の入力デバイスの分解図である。図2Bは、強度感知ホームボタンに加えられる力に対応する強度値の範囲を判定するために使用される容量性センサを有する強度感知ホームボタンの一例を示す。図2Cは機械式スイッチ要素を有するホームボタンの一例を示す。図2Bを参照すると、入力デバイススタック220は、カバー要素222とトリム224とを含む。図示された実施形態では、トリム224は、カバー要素222の側面及びカバー要素222の上面の周囲を完全に取り囲む。他の実施形態は、この構成に限定されるものではない。例えば、一実施形態では、カバー要素222の側面及び/又は上面は、トリム224によって部分的に囲まれ得る。代替的に、他の実施形態ではトリム224を省略することができる。
カバー要素222及びトリム224の両方は、適切な不透明、透明、及び/又は半透明の材料で形成することができる。例えば、カバー要素222は、ガラス、プラスチック、又はサファイア製であってもよく、トリム224は、金属又はプラスチック製であってもよい。一部の実施形態では、1つ以上の追加の層(図示せず)を、カバー要素222の下に配置することができる。例えば、カバー要素222が透明な材料で作られている場合には、カバー要素222の下に不透明なインク層を配置することができる。不透明なインク層は、他の構成要素が透明なカバー要素222を通して視認されないように、入力デバイススタック220内の他の構成要素を覆い隠すことができる。
第1の回路層226を、カバー要素222の下に配置することができる。任意の好適な回路層を使用してもよい。例えば、第1の回路層226は、回路基板又はフレキシブル回路でもよい。第1の回路層226は、1つ以上の回路、信号ライン、及び/又は集積回路を含むことができる。一実施形態では、第1の回路層226は、生体センサ228を含む。任意の適切なタイプの生体センサを用いることができる。例えば、一実施形態では、生体センサは、ユーザの指(単数又は複数)がカバー要素222に接近及び/又は接触したときに、少なくとも1つの指紋を捕捉する容量性指紋センサである。
第1の回路層226は、カバー要素222の底面に接着剤層230を介して取り付けられていてもよい。接着剤層として、任意の好適な接着剤を用いることができる。例えば、接着層230として、感圧接着剤層を使用してもよい。
従順性層232は、第1の回路層226の下に配置される。一実施形態では、従順性層232は、従順性層232に形成された開口部234を含む。開口部234は、デバイススタック220の組み立て時に、第1の回路層226及び/又は生体センサ228の上面を露出させる。例示的な実施形態では、従順性層232は、トリム224の内周及び/又はカバー要素222の周縁の周りに配置される。従順性層232は、円形に描かれているが、正方形又は楕円などの任意の所与の形状及び/又は寸法を有することができる。従順性層232は、図2B及び2Cにおいて連続した従順性層として示しているが、他の実施形態はこの構成に限定されない。一部の実施形態では、デバイススタック220内に複数の離散的な従順性層が用いられてもよい。加えて、一部の実施形態では、従順性層232は開口部234を含まず、かつ、従順性層232は入力デバイススタック220の少なくとも一部分にわたって延在する。例えば、従順性層232は、カバー要素222の底面及び第1の回路層226の底面にわたって、あるいは(例えば、カバー要素の周縁を囲んでいる)カバー要素222の底面の一部分及び第1の回路層226の底面にわたって延在することができる。
第2の回路層238は、第1の回路層226の下方に位置している。フレキシブル回路及び回路基板は、第2の回路層238で使用できる回路層の一例である。一部の実施形態では、第2の回路層238は、第1の回路部分240、及び第2の回路部分242を含むことができる。第1及び第2の回路部240、242は、互いに電気的に接続され得る。
第1の回路部分240は、強度センサに含まれる1つ以上の強度センサ構成要素の第1のセットを含むことができる。一部の実施形態では、第1の回路部分240は、第1の回路層226に電気的に接続され得る。例えば、第1の回路層226が生体センサ228を含む場合には、生体センサ228を第2の回路層238の第1の回路部分240に電気的に接続してもよい。
第2の回路部242は、信号ライン、回路構成要素、集積回路などの付加回路を含むことができる。一実施形態では、第2の回路部分242は、第2の回路層238を電子デバイス内の他の回路に電気的に接続する基板対基板コネクタ244を含むことができる。例えば、第2の回路層238は、基板対基板コネクタ244を用いた処理デバイスに動作可能に接続することができる。追加的に又は代替的に、第2の回路層238は、第1の回路部分240内の強度センサ構成要素(単数又は複数)から受信した信号(例えば、センス信号)を処理デバイスに伝送する回路に、動作可能に接続されてもよい。追加的又は代替的に、第2の回路層238は、第1の回路部分240内の1つ以上の強度センサ構成要素に信号(例えば、駆動信号、基準信号)を提供する回路に動作可能に接続されてもよい。
一部の実施形態では、第2の回路層238の第1の回路部分240は、接着剤層236を使用して第1の回路層226の底面に取り付けられていてもよい。非限定的な例では、第1の回路部分240を第1の回路層226の底面に取り付けるために、ダイアタッチフィルムを用いてもよい。
第3の回路層246は、第2の回路層238の第1の回路部分240の下方に配置されている。第3の回路層246は、強度センサに含まれる1つ以上の強度センサ構成要素の第2のセットを含んでもよい。第3の回路層246は、支持要素248によって支持される、及び/又は支持要素248に取り付けられる。一実施形態では、支持要素248は、デバイススタック220内の他の構成要素のためのエンクロージャを構成するためにトリム224に取り付けられる。支持要素248は、好適な取り付け機構を使用してトリム224に取り付けられてもよい。
第1の回路部分240における1つ以上の強度センサ構成要素の第1のセットと、第3の回路層246における1つ以上の強度センサ構成要素の第2のセットとは一緒に強度センサを形成する。強度センサは、任意の好適な強度感知技術を使用することができる。例示的な感知技術は、容量性、圧電性、ピエゾ抵抗性、超音波、及び磁気的なものを含むが、これらに限定されるものではない。
図2B及び2Cに示す例では、強度センサは容量性力センサである。容量性力センサについては、1つ以上の強度センサ構成要素の第1のセットは、1つ以上の電極250の第1のセットを含み、1つ以上の力センサ構成要素の第2のセットは、1つ以上の電極252の第2のセットを含む。図2B及び2Cでは正方形状に示されているが、1つ以上の電極の第1及び第2のセット250、252におけるそれぞれの電極は、任意の所与の形状(例えば、矩形、円)を有することができる。加えて、第1及び第2のセット250、252における1つ以上の電極は、任意の所与のパターン(例えば、1つ以上の行及び1つ以上の列)で配置されてもよい。
図2B、2Cは、1つ以上の電極250、252の第1及び第2のセットにおける2つの電極を示す。ただし、他の実施形態は、この構成に限定されるものではない。1つ以上の電極の第1及び第2のセット250、252は、それぞれ単一の電極又は複数の個別電極であってもよい。例えば、1つ以上の電極の第1のセットが単一電極である場合、1つ以上の電極の第2のセットは、複数の個別電極を備える。一部の実施形態では、1つ以上の電極の第2のセットは単一電極であってもよく、第1のセットは複数の個別電極を含む。あるいは、1つ以上の電極の第1及び第2のセットの両方は、それぞれ、複数の個別電極を含むことができる。
1つ以上の電極250の第1のセットのそれぞれの電極は、1つ以上の電極252の第2のセットのそれぞれの電極と少なくとも1つの方向(例えば、垂直方向)に整列されて、1つ以上のコンデンサを構成する。カバー要素222(例えば入力デバイスの入力面)に力入力が加えられると、第1のセット250内の少なくとも1つの電極が、第2のセット252内のそれぞれの電極に接近して移動し、コンデンサ(単数又は複数)の容量を変化させる。それぞれのコンデンサから感知される容量信号は、そのコンデンサの容量測定値を表す。処理デバイス(図示せず)は、容量信号(単数又は複数)を受信し、容量信号(単数又は複数)をカバー要素222に印加される強度量に相関させるように構成されている。一部の実施形態では、力センサは、スイッチ要素と置換することができ、異なる強度閾値を使用して、アクティブ化イベントを判定することができる。
図2Cに示す実施形態などの一部の実施形態では、スイッチ要素54は、支持要素248の下方に配置することができる。スイッチ要素254は、カバー要素222に加えられた力入力が所定量の力(例えば、第1の回路部分240と第3の回路層246との間の距離の接近に関連する力閾値)を超えると、ユーザ入力を登録する。任意の好適なスイッチ要素を使用することができる。例えば、スイッチ要素254は、カバー要素222に加えられる力の入力が力閾値を超えたときにへこむドームスイッチであってもよい。へこんだ場合、ドームスイッチは、処理デバイスによって検出され、かつ、ユーザ入力(例えば、アイコン、機能又はアプリケーションの選択)として認識される回路を終了する。一実施形態では、ドームスイッチは、圧潰可能なドームの頂部が支持プレート248の底面に近接するように配置される。別の実施形態では、圧潰可能なドームのベースは、支持プレート248の底面に近接することができる。
図3は、一部の実施形態に係る、ディスプレイ及びタッチ感知面を有する例示的な多機能デバイスのブロック図である。デバイス300は、ポータブル型である必要はない。一部の実施形態では、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディア再生デバイス、ナビゲーションデバイス、教育的デバイス(子供の学習玩具など)、ゲームシステム、又は制御デバイス(例えば、家庭用又は業務用コントローラ)である。デバイス300は、典型的には、1つ以上の処理ユニット(CPU)310と、1つ以上のネットワーク又は他の通信インタフェース360と、メモリ370と、及びこれらの構成要素を相互接続するための1つ以上の通信バス320とを含む。通信バス320は任意選択で、システム構成要素間の通信を相互接続及び制御する回路(チップセットと呼ばれる場合がある)を含む。デバイス300は典型的にはタッチスクリーンディスプレイであるディスプレイ340を含む、入出力(I/O)インタフェース330を含む。I/Oインタフェース330はまた任意選択で、キーボード及び/又はマウス(又は、他のポインティングデバイス)350、並びにタッチパッド355、(例えば、図1Aを参照して上記説明された触知出力生成器(単数又は複数)167と同様の)デバイス300上で触知出力を生成するための触知出力生成器357、センサ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信号などの無線通信(単数又は複数)のための信号強度標識(単数又は複数)402、
●時刻404、
●Bluetooth(登録商標)インジケータ、
●バッテリ状態インジケータ406、
●下記などの、頻繁に利用されるアプリケーション用のアイコンを含むトレー408、
○不在着信又はボイスメールメッセージの数のインジケータ414を任意選択的に含む、「Phone(電話)」とラベル付けされる、電話モジュール138用のアイコン416、
○未読電子メールの数のインジケータ410を任意選択的に含む、「Mail(メール)」とラベル付けされる、電子メールクライアントモジュール140用のアイコン418、
○「Browser(ブラウザ)」とラベル付けされるブラウザモジュール147のためのアイコン420、及び
○「iPod」とラベル付けされる、iPod(Apple Inc.の商標)モジュール152とも称されるビデオ及びミュージックプレーヤモジュール152用のアイコン422、並びに
●下記などの、その他のアプリケーション用のアイコン、
○「Messages(メッセージ)」とラベル付けされるIMモジュール141のためのアイコン424、
○「Calendar(カレンダー)」とラベル付けされる、カレンダーモジュール148用のアイコン426、
○「Photos(写真)」とラベル付けされる、画像管理モジュール144用のアイコン428、
○「Camera(カメラ)」とラベル付けされる、カメラモジュール143用のアイコン430、
○「Online Video(オンラインビデオ)」とラベル付けされる、オンラインビデオモジュール155用のアイコン432、
○「Stocks(株価)」とラベル付けされる、株価ウィジェット149−2用のアイコン434、
○「Maps(地図)」とラベル付けされる、地図モジュール154用のアイコン436、
○「Weather(天気)」とラベル付けされる、天気ウィジェット149−1用のアイコン438、
○「Clock(時計)」とラベル付けされる、アラーム時計ウィジェット149−4用のアイコン440、
○「Workout Suppor(トレーニングサポート)」とラベル付けされる、トレーニングサポートモジュール142用のアイコン442、
○「Notes(メモ)」とラベル付けされる、メモモジュール153用のアイコン444、及び
○デバイス100及びその様々なアプリケーション136に関する設定へのアクセスを提供する、設定アプリケーション若しくはモジュール用のアイコン446。
図4Aに示されたアイコンのラベルは単なる例に過ぎないことに留意されたい。例えば、一部の実施形態では、ビデオ及び音楽プレーヤモジュール152用のアイコン422は、「Music(音楽)」又は「Music Player(音楽プレーヤ)」とラベル付けされる。他のラベルが、様々なアプリケーションアイコンのために、任意選択的に使用される。一部の実施形態では、それぞれのアプリケーションアイコンに関するラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。一部の実施形態では、特定のアプリケーションアイコンのラベルは、特定のアプリケーションアイコンに対応するアプリケーションの名前とは別個である。
図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つ以上の他の強度閾値(例えば、TILよりも低い強度閾値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号に記載されており、それらの全体が参照により本明細書に組み込まれている。
例えば、図4Cは、経時的なタッチ入力476の強度に部分的に基づいて経時的に変化する動的強度閾値480を示す。動的強度閾値480は、2つの成分、タッチ入力476が最初に検出されるときから予め定義された遅延時間p1の後に経時的に減衰する第1の成分474、及び経時的にタッチ入力476の強度を追跡する第2の成分478の合計である。第1の成分474の初期の高強度閾値は、「深い押圧」応答を偶発的にトリガすることを削減すると共に、タッチ入力476が十分な強度を提供する場合に即時的な「深い押圧」応答をなおも可能にする。第2の成分478は、タッチ入力における段階的な強度変動によって「深い押圧」応答を意図せずにトリガすることを削減する。一部の実施形態では、タッチ入力476が動的強度閾値480を満たすとき(例えば、図4Cにおけるポイント481において)、「深い押圧」応答がトリガされる。
図4Dは、別の動的強度閾値486(例えば、強度閾値ID)を示す。図4Dはまた、2つの他の強度閾値、第1の強度閾値ITH及び第2の強度閾値ILを示す。図4Dにおいて、タッチ入力484が時間p2の前に第1の強度閾値ITH及び第2の強度閾値ITLを満たすが、時間482において遅延時間p2が経過するまでは応答が提供されない。また、図4Dでは、動的強度閾値486は、予め定義された遅延時間p1が時間482から経過した後(第2の強度閾値ITLに関連する応答がトリガされたとき)の時間488に開始する減衰で、経時的に減衰する。このタイプの動的強度閾値は、第1の強度閾値ITH又は第2の強度閾値ILなどの、より低い強度閾値と関連する応答をトリガした直後、又はそれと同時に、動的強度閾値ITDと関連する応答を偶発的にトリガすることを削減する。
図4Eは、更なる別の動的強度閾値492(例えば、強度閾値ID)を示す。図4Eにおいて、強度閾値ITLと関連付けられた応答は、タッチ入力490が最初に検出されるときから遅延時間p2が経過した後にトリガされる。同時に、動的強度閾値492は、タッチ入力490が最初に検出されるときから予め定義された遅延時間p1が経過した後に減衰する。よって、タッチ入力490を解除することなしに、強度閾値ILに関連する応答をトリガした後の、タッチ入力490の強度の増大がその後に続くタッチ入力490の強度の減少は、タッチ入力490の強度が別の強度閾値、例えば、強度閾値ILを下回るときでさえも、(例えば、時間494において)強度閾値ITDに関連する応答をトリガすることができる。
浅い押圧強度閾値ITLを下回る強度から、浅い押圧強度閾値ITLと深い押圧強度閾値ITDとの間の強度への接触の特性強度の増大は、「浅い押圧」入力と称される場合がある。深い押圧強度閾値ITDを下回る強度から深い押圧強度閾値ITDを上回る強度への接触の特性強度の増大は、「深い押圧」入力と称される場合がある。接触検出強度閾値IT0を下回る強度から接触検出強度閾値IT0と浅い押圧強度閾値ITLとの間の強度への接触の特性強度の増大は、タッチ面上の接触の検出と称される場合がある。接触検出強度閾値IT0を上回る強度から接触検出強度閾値IT0を下回る強度への接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と称される場合がある。一部の実施形態では、IT0はゼロである。一部の実施形態では、IT0はゼロよりも大きい。一部の図では、タッチ感知面上の接触の強度を表すために、影付きの円又は楕円が使用される。一部の図では、それぞれの接触の強度を指定することなく、タッチ感知面上のそれぞれの接触を表すために、影なしの円又は楕円が使用される。
本明細書で説明する一部の実施形態では、1つ以上の操作は、それぞれの押圧入力を含むジェスチャを検出したことに応じて、又はそれぞれの接触(又は、複数の接触)で実行されるそれぞれの押圧入力を検出したことに応じて実行され、それぞれの押圧入力は、押圧入力強度閾値を上回る接触(又は、複数の接触)の強度の増大を検出したことに少なくとも部分的に基づいて検出される。一部の実施形態では、それぞれの操作は、押圧入力強度閾値を上回るそれぞれの接触の強度における増大を検出したことに応じて実行される(例えば、それぞれの操作は、それぞれの押圧入力の「ダウンストローク」上で実行される)。一部の実施形態では、押圧入力は、押圧入力強度閾値を上回るそれぞれの接触の強度における増大、及び押圧入力強度閾値を下回る接触の強度におけるその後の減少を含み、それぞれの操作は、押圧入力閾値を下回るそれぞれの接触の強度におけるその後の減少を検出したことに応じて実行される(例えば、それぞれの操作は、それぞれの押圧入力の「アップストローク」上で実行される)。
一部の実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある偶発的な入力を回避するために強度ヒステリシスを採用し、デバイスは、押圧入力強度閾値との予め定義された関係を有するヒステリシス強度閾値を定義又は選択する(例えば、ヒステリシス強度閾値は、押圧入力強度閾値よりも低いX強度単位であり、又はヒステリシス強度閾値は、押圧入力強度閾値の75%、90%、若しくは何らかの妥当な比率である)。よって、一部の実施形態では、押圧入力は、押圧入力強度閾値を上回るそれぞれの接触の強度における増大、及び押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度におけるその後の減少を含み、それぞれの操作は、ヒステリシス強度閾値を下回るそれぞれの接触の強度におけるその後の減少を検出したことに応じて実行される(例えば、それぞれの操作は、それぞれの押圧入力の「アップストローク」上で実行される)。同様に、一部の実施形態では、押圧入力は、デバイスがヒステリシス強度閾値以下の強度から押圧入力強度閾値以上の強度への接触の強度における増大、及び任意選択で、ヒステリシス強度以下の強度への接触の強度におけるその後の減少を検出するときのみ検出され、それぞれの操作は、押圧入力(例えば、状況に依存する、接触の強度における増大、又は接触の強度における減少)を検出したことに応じて実行される。
説明を容易にするために、押圧入力強度閾値と関連付けられた押圧入力に応じて、又は押圧入力を含むジェスチャに応じて実行される操作の説明は任意選択で、押圧入力強度閾値を上回る接触の強度における増大、ヒステリシス強度閾値を下回る強度から押圧入力強度閾値を上回る強度への接触の強度における増大、押圧入力強度閾値を下回る接触の強度における減少、又は押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度における減少を検出したことに応じてトリガされる。加えて、押圧入力強度閾値を下回る接触の強度における減少を検出したことに応じて操作が実行されるとして説明される実施例では、操作は任意選択で、押圧入力強度閾値に対応し、及びそれよりも低いヒステリシス強度閾値を下回る接触の強度における減少を検出したことに応じて実行される。上記説明されたように、一部の実施形態では、それらの応答のトリガはまた、満たされる時間に基づく基準に依存する(例えば、遅延時間は、第1の強度閾値が満たされることと第2の強度閾値が満たされることとの間で経過している)。
ユーザインタフェース及び関連する処理
ここで、ディスプレイ、タッチ感知面、触知出力を生成するための1つ以上の触知出力生成器、デバイスのボタン(例えば、仮想又は物理ホームボタン)との接触強度を検出する1つ以上のセンサ、及び(任意選択的に)タッチ感知面との接触強度を検出する1つ以上のセンサを備える、ポータブル多機能デバイス100又はデバイス300などの電子デバイス上に実装され得る、ユーザインタフェース(「UI」)及び関連する処理の実施形態に着目する。
図5A1〜5C19は、一部の実施形態に係る、デバイスのボタン(例えば、物理ホームボタン又は仮想ホームボタン)上の複数のタイプの入力に応じて触知出力及び視覚フィードバックを提供するための例示的なユーザインタフェースを示す。これらの図におけるユーザインタフェースは、図7A〜7G、図9A〜9D、11A〜11E、13A〜13D、15A〜15E、17A〜17D、及び19A〜19Cにおける処理を含む、以下に説明する処理を例示するために用いられる。説明の便宜上、実施形態のいくつかは、タッチ感知ディスプレイシステム112を有するデバイス上で実行される操作を参照して議論される。そのような実施形態では、フォーカスセレクタは任意選択で、それぞれの指若しくはスタイラスの接触、指若しくはスタイラスの接触に対応する代表的な点(例えば、それぞれの接触の面心若しくはそれぞれの接触と関連付けられた点)、又はタッチ感知ディスプレイシステム112上で検出された2つ以上の接触の面心である。しかしながら、同様の操作は任意選択で、フォーカスセレクタとともに、ディスプレイ450上の図に示すユーザインタフェースを表示している間に、タッチ感知面451上の接触を検出したことに応じて、ディスプレイ450及び別のタッチ感知面451を有するデバイス上で実行される。
図5A1〜5A18は、一部の実施形態に係る、ボタンとの対話に対する触覚フィードバック及び視覚フィードバックを提供するための、例示的なユーザインタフェースを示す。図5A1〜5A18はホーム画面からアプリケーションを開き、ホームボタン(例えばボタン204)上の複数のタイプの入力に応じて視覚フィードバック及び触知出力を提供することを示す。
図5A1は、一部の実施形態に係る、デバイス100上のアプリケーションのメニュー(例えば、マルチページホーム画面の1次ページ)に対するユーザインタフェース510を示す。ユーザインタフェース510は、図4Aに関して上述したユーザインタフェース400と同様の要素を含むが、簡潔にするために、ユーザインタフェース510の要素の包括的な説明はここでは提供しない。
図5A2〜5A3は、Clock(時計)アイコン上の入力(例えば、図5A2の接触502によるタップジェスチャ)を検出し、Clock(時計)アプリケーションのユーザインタフェース512(図5A3)を表示する例を示す。
図5A4〜5A8はホームボタン(例えば、ボタン204)上の接触(例えば接触504)の強度の変化を検出し、その強度に従ってホームボタンのアクティブ化に関する視覚フィードバックを提供する例である(例えば、ユーザインタフェース512からユーザインタフェース510へ戻る遷移の開始を表示する)。図5A4では、接触504−aの強度はまだ「ヒント」強度閾値ITHに達していないので、視覚フィードバックは表示されない。図5A5〜5A7では、接触504の強度がヒント強度閾値ITHを上回って増大すると、視覚フィードバックは接触の強度に従って動的に変化する。例えば、図5A5から図5A6へと接触の強度が増大するにつれて、ユーザインタフェース512からユーザインタフェース510への(例えば、ユーザインタフェース513−1からユーザインタフェース513−2への)遷移が進み、図5A6から5A7へと接触の強度が減少するにつれて、ユーザインタフェース512からユーザインタフェース510への遷移は、(例えば、ユーザインタフェース513−2からユーザインタフェース513−1へと)逆行させる。接触504の強度は浅い押圧強度閾値ITLを上回って増大しないので、接触504による入力の終了が検出されると、Clock(時計)アプリケーションのユーザインタフェース512がディスプレイ上に再表示される(図5A8)。
図5A9〜5A14はホームボタン(例えば、ボタン204)上の接触(例えば接触508)の強度の変化を検出し、その強度に従ってホームボタンのアクティブ化に関する視覚フィードバック(例えば、ユーザインタフェース512からユーザインタフェース510へ戻る遷移の開始を表示する)を提供し、ホームボタン(例えば、ボタン204)上の入力に応じて、触知出力を提供する例である。図5A9〜5A11では、(例えば、接触508−aから接触508−bへ、接触508−cへと)接触の強さが増大するにつれて、ユーザインタフェース512からユーザインタフェース510への(例えば、ユーザインタフェース513−1からユーザインタフェース513−2へ、ユーザインタフェース513−3への)遷移が進行する。図5A11では、接触508−cの強度がホームボタン上の「浅い押圧」強度閾値ITL(例えば、ボタン204のダウンクリック、又は「押圧イベント」と呼ばれることもある)まで増大すると、デバイス100は、触知出力503(例えば、利得0.5のミニタップ270Hz)を提供する。図5A13では、接触508−eの強度が、「浅い押圧解除」強度閾値ITLR(例えば、ボタン204のアップクリック、又は「解除イベント」と呼ばれることもある)まで減少すると、デバイス100は、触知出力505などの異なる触知出力(例えば、利得0.3のミニタップ270Hz)を提供する。接触508の強度が浅い押圧強度閾値ITL(例えば図5A11)まで増大し、接触508による入力の終了が例えば、図5A13の解除イベントにより)検出されてから(、ユーザインタフェース512からユーザインタフェース510への(例えば、図5A11のユーザインタフェース513−3から図5A12のユーザインタフェース513−4への、図5A13のユーザインタフェース513−5への、図5A14のユーザインタフェース510への)遷移は、図5A11〜5A14に示すように完了まで続く。図5A11及び図5A13に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリック(例えば、「弱い」強度)の値の第1の範囲に対応する。
図5A15〜5A16は、接触508による押圧入力が閾値時間(例えば、長い押圧時間TLP)を超えて経過するまでリフトオフしない場合の、図5A12からの代替シーケンスを示す。この場合、ユーザインタフェース512からユーザインタフェース510へのアニメーション遷移は(例えば、図5A16のユーザインタフェース513−6において)中断され、ユーザインタフェース515(例えば、自動アシスタントユーザインタフェース)が表示される。一部の実施形態では、ユーザインタフェース512からユーザインタフェース510へのアニメーション遷移が中断されると、図5A17のユーザインタフェース514−1に示すように、(例えば、中断ポイントからユーザインタフェース515への)別のアニメーション遷移が表示される。一部の実施形態では、図5A16に示すように、接触508−fの強度が閾値時間(例えば、TLP)の間、浅い押圧強度閾値ITLを上回って維持されている場合、デバイス100は、触知出力507(例えば、利得0.9のダブルミニタップ270Hz又はマイクロタップ270Hz)を提供する。一部の実施形態では、図5A18に示すように、自動アシスタントユーザインタフェース(例えば、図5A18のユーザインタフェース515)への遷移が完了すると、デバイス100は、触知出力509(例えば、利得0.9のダブルミニタップ270Hz又はマイクロタップ270Hz)を提供する。一部の実施形態では、デバイス100は、接触がTLP閾値時間に対する浅い押圧強度閾値ITLを上回って保持されたときに触知出力(例えば、図5A16の触知出力507)を提供するか、自動支援ユーザインタフェースが完了したときに触知出力(例えば、図5A18の触知出力509)を提供するかのいずれかであるが、両方ではない。
図5A1〜5A18の例では、ホームボタン(例えば、ボタン204)上の押圧イベント(例えば、接触強度が浅い押圧強度閾値ITLまで増大したとき)及び解除イベント(例えば、接触強度が浅い押圧リリース強度ITLRまで減少したとき)に対する触知出力は、(例えば、図5C1〜5C9を参照して以下説明するように、第2の触知出力設定が選択される場合)270Hzのミニタップとして示される。一部の実施形態では、(例えば、図5C13〜5C19に関して以下で説明するように)第1の触知出力設定が選択される場合、これらの例における触知出力は、230Hzのミニタップになり得る。一部の実施形態では、(例えば、図5C10〜5C12に関して以下で説明するように)第3の触知出力設定が選択される場合、これらの例における触知出力は、300Hzのミニタップになり得る。同様に、図5B1〜5B75において、押圧イベント及び解除イベントの触知出力は、(例えば、第2の触知出力設定が選択される場合)270Hzのミニタップとして示しているが、第1の触知出力設定又は第3の触知出力設定が選択されると、触知出力はそれぞれ230Hz又は300Hzのミニタップになり得る。
図5B1〜5B75は、一部の実施形態に係る、ボタンとの対話のための触覚及び視覚フィードバックを提供するための例示的なユーザインタフェースを示す。図5B1〜5B75は、マルチページホーム画面の2次ページのフォルダからからアプリケーションを開き、ホームボタン(例えばボタン204)上の複数のタイプの入力に応じて視覚フィードバック及び触知出力を提供することを示す。
図5B1は、一部の実施形態に係る、デバイス100上のアプリケーションのメニュー(例えば、マルチページホーム画面の2次ページ)に対するユーザインタフェース520を示す。ユーザインタフェース520は、図4Aに関して上述したユーザインタフェース400と同様の要素を含むが、簡潔にするために、ユーザインタフェース520の要素の包括的な説明はここでは提供しない。
図5B2〜5B3は、写真フォルダ上の入力(例えば、図5B2の接触530によるタップジェスチャ)を検出し、写真フォルダのユーザインタフェース522(図5B3)を表示する例を示す。
図5B4〜5B5は、(例えば、カリフォルニア州クパチーノのアップル社によるPagesアプリケーションなどのワードプロセッサアプリケーション用の)ユーザインタフェース522のPagesアイコン上の入力(例えば、図5B4の接触531によるタップジェスチャ)を検出し、Pagesアプリケーション(例えば、図5B5)のユーザインタフェース524を表示する例を示す。
図5B6〜5B14は、(例えば、第1の押圧イベント、それに続く第1の解除イベント、更に続く第2の押圧イベントであって、第1及び第2の押圧イベントが、ダブルクリック時間閾値TDCなどの互いの閾値時間量内に検出される)時間的に近いダブルクリックを検出する例を示し、第1及び第2の押圧イベントの両方が、割込み時間閾値TIなどの閾値時間量の前に生じる。第1及び第2の押圧イベントの両方が割り込み時間閾値TIの前に発生するので、(例えば、図5B10に示すように、第2の押圧イベントが検出された第1のポイントで)ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェースインタフェース522(例えば、写真フォルダ)へのアニメーション遷移が中断する。
図5B6〜5B10は、ユーザインタフェース524(例えば、ページアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移の開始を示す。図5B6では、接触532−aの強度がホームボタン上の浅い押圧強度閾値ITL(例えば、ボタン204の第1のダウンクリック、又は「第1の押圧イベント」と呼ばれることもある)まで増大すると、デバイス100は、触知出力571(例えば、利得1のミニタップ270Hz)を提供する。図5B8では、接触532−cの強度が、浅い押圧解除強度閾値ITLR(例えば、ボタン204の第1のアップクリック、又は「第1の解除イベント」と呼ばれることもある)まで減少すると、デバイス100は、触知出力572などの異なる触知出力(例えば、利得0.5のミニタップ270Hz)を提供する。図5B10では、接触532−eの強度がダブルクリック時間閾値TDC内の第2の時間の間、ホームボタン上の浅い押圧強度閾値ITL(例えば、ボタン204の第2のダウンクリック、又は「第2の押圧イベント」と呼ばれることもある)まで増大すると、デバイス100は、触知出力573などの別の触知出力(例えば、利得0.8のミニタップ270Hz)を提供する。図5B6、図5B8、及び図5B10に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリックの値の第2の範囲(例えば、「通常の」強度)に対応する。
図5B10では、第2の押圧イベントが検出されると、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移は、第1のポイントで(例えば、ユーザインタフェース525−5で)で中断し、ユーザインタフェース528(例えば、マルチタスクユーザインタフェース)へのアニメーション遷移は、中断ポイントから始まる。図5B11〜5B13は、中断ポイントからユーザインタフェース528への(例えば、図5B11のユーザインタフェース526−1から図5B12のユーザインタフェース526−2への、図5B13のユーザインタフェース526−3への)アニメーション遷移を示す。図5B14は、Pagesアプリ(例えば、ユーザインタフェース524)を最上部にしたユーザインタフェース528(例えば、マルチタスキングユーザインタフェース)を示す。
図5B15〜5B16は、ホームボタン(例えば、ボタン204)上の入力(例えば、図5B15の接触533による押圧入力)を検出し、Pagesアプリケーション(図5B16)のユーザインタフェース524を表示する例を示す。図5B16は、図5B5と同じの開始ポイントを示す。図5B15に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリックの値の第1の範囲(例えば、「弱い」強度)に対応する。
図5B17〜5B25は、図5B5に示すPagesアプリケーションのユーザインタフェース524から始まる、図5B6〜5B14の代替のシーケンスを示す。図5B17〜5B25は、更に(図5B5〜5B14と比較して)時間的に離れたダブルクリック(例えば、第1の押圧イベント、それに続く第1の解除イベント、更に続く第2の押圧イベントであって、第1及び第2の押圧イベントが、ダブルクリック時間閾値TDCなどの、互いの閾値時間量内に検出される)を検出する例を示し、第1及び第2の押圧イベントの両方が、割込み時間閾値TIなどの閾値時間量の前に生じる。第1及び第2の押圧イベントの両方が割り込み時間閾値TIの前に発生するので、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェースインタフェース522(例えば、写真フォルダ)へのアニメーション遷移が(例えば、図5B21に示すように、第2の押圧イベントが検出された第2のポイントで)中断する。
図5B17〜5B21は、ユーザインタフェース524(例えば、ページアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移の開始を示す。図5B17では、接触534−aの強度がホームボタン上の浅い押圧強度閾値ITL(例えば、ボタン204の第1のダウンクリック、又は「第1の押圧イベント」)まで増大すると、デバイス100は、触知出力575(例えば、利得1のミニタップ270Hz)を提供する。図5B19では、接触534−cの強度が、浅い押圧解除強度閾値ITLR(例えば、ボタン204の第1のアップクリック、又は「第1の解除イベント」)まで減少すると、デバイス100は、触知出力576などの異なる触知出力(例えば、利得0.5のミニタップ270Hz)を提供する。図5B21では、ホームボタン上の接触534−eの強度がダブルクリック時間閾値TDC内の第2の時間の間(例えば、ボタン204の第2のダウンクリック、又は第2の押圧イベント)であると、デバイス100は、触知出力577などの別の触知出力(例えば、利得0.8のミニタップ270Hz)を提供する。図5B17、図5B19、及び図5B21に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリックの値の第2の範囲(例えば、「通常の」強度)に対応する。
図5B21において、第2の押圧イベントが検出されると、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移は、第1のポイント(例えば、図5B10のユーザインタフェース525−5で)よりも遅い第2のポイントで(例えば、ユーザインタフェース525−6で)中断し、ユーザインタフェース528(例えば、マルチタスクユーザインタフェース)へのアニメーション遷移は、第2の中断ポイントから始まる。図5B22〜5B24は、第2の中断ポイントからユーザインタフェース528への(例えば、図5B22のユーザインタフェース527−1から、図5B23のユーザインタフェース527−2への、図5B24のユーザインタフェース527−3への)アニメーション遷移を示す。図5B25は、Pagesアプリケーション(例えば、ユーザインタフェース524)を最上部にしたユーザインタフェース528(例えば、マルチタスキングユーザインタフェース)を示す。
図5B26〜5B27は、ホームボタン(例えば、ボタン204)上の入力(例えば、図5B26の接触535による押圧入力)を検出し、Pagesアプリケーション(図5B27)のユーザインタフェース524を表示する例を示す。図5B27は、図5B5と同じ開始ポイントを示す。図5B26に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリックの値の第1の範囲(例えば、「弱い」強度)に対応する。
図5B28〜5B38は、図5B5に示すページアプリケーションのユーザインタフェース524から始まる、図5B6〜5B14、図5B17〜5B25の代替のシーケンスを示す。図5B28〜5B38は、更に時間的に離れた(図5B5〜5B14及び5B16〜5B25と比較して)ダブルクリックを検出する例(例えば、第1の押圧イベント、それに続く第1の解除イベント、それに続く第2の押圧イベントであって、第1及び第2の押圧イベントが、ダブルクリック時間閾値TDCなどの、互いの閾値時間量内に検出される)を示し、第1の押圧イベントは、割込み時間閾値TIなどの閾値時間量の前に発生し、第2の押圧イベントは、割込み時間閾値TIの後に生じる。第2の押圧イベントは割り込み時間閾値TIの後に発生するので、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移は、マルチタスクユーザインタフェース(例えば、ユーザインタフェース529、図5B38)へのアニメーション遷移の前には中断しない。
図5B28〜5B34は、ユーザインタフェース524(例えば、ページアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移を示す。図5B28において、接触536−aの強度がホームボタン上の浅い押圧強度閾値ITL(例えば、ボタン204の第1のダウンクリック、又は第1の押圧イベント)まで増大すると、デバイス100は、触知出力579(例えば、利得1のミニタップ270Hz)を提供する。図5B30において、接触536−cの強度が、浅い押圧解除強度閾値ITLR(例えば、ボタン204の第1のアップクリック、又は第1の解除イベント)まで減少すると、デバイス100は、触知出力580などの異なる触知出力(例えば、利得0.5のミニタップ270Hz)を提供する。図5B32では、接触536−eの強度がダブルクリック時間閾値TDC内の第2の時間の間、ホームボタン上の浅い押圧強度閾値ITL(例えば、ボタン204の第2のダウンクリック、又は第2の押圧イベント)まで増大すると、デバイス100は、触知出力581などの別の触知出力(例えば、利得0.8のミニタップ270Hz)を提供する。図5B28、図5B30、及び図5B32に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリックの値の第2の範囲(例えば、「通常の」強度)に対応する。
図5B32では、第2の押圧イベントが検出されると、第2の押圧イベントが割り込み時間閾値TI後に生じるので、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移は中断しない。図5B33〜5B34は、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移の継続を示し、図5B35はユーザインタフェース522を示す。図5B36〜5B37は、ユーザインタフェース522(例えば、写真フォルダ)からユーザインタフェース529へのアニメーション遷移を示す。図5B38は、写真フォルダ(例えば、ユーザインタフェース522)を最上部にしたユーザインタフェース529(例えば、マルチタスキングユーザインタフェース)を示す。
図5B40〜5B48は、図5B5に示すページアプリケーションのユーザインタフェース524から始まる、図5B6〜5B14、図5B17〜5B25、図5B28〜5B38の代替シーケンスである。図5B40〜5B48は、ダブルクリック時間閾値Tdc後に、第2の押圧イベントが発生した場合に、2つのシングルクリックを検出する例である。第2の押圧イベントはダブルクリック時間閾値TDCの後に生じるので、2つの押圧イベントは(ダブルクリックとは対照的に)2回のシングルクリックとして扱われる。
図5B40〜5B46は、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移を示す。図5B40において、接触537−aの強度がホームボタン上の浅い押圧強度閾値ITL(例えば、ボタン204のダウンクリック、又は第1の押圧イベント)まで増大すると、デバイス100は、触知出力582(例えば、利得1のミニタップ270Hz)を提供する。図5B42では、接触537−cの強度が、浅い押圧解除強度閾値ITLR(例えば、ボタン204のアップクリック、又は第1の解除イベント)まで減少すると、デバイス100は、触知出力583などの異なる触知出力(例えば、利得0.5のミニタップ270Hz)を提供する。図5B45において、接触538−aの強度が、ダブルクリック時間閾値TDCが経過した後にホームボタン上の浅い押圧強度閾値ITL(例えば、ボタン204のダウンクリック、又は第2の押圧イベント)まで増大すると、デバイス100は、触知出力584(例えば、利得1のミニタップ270Hz)を提供する。一部の実施形態では、触知出力584(図5B45)は、いずれもシングルクリック入力のダウンクリックであるので、触知出力582(図5B50)と同じ特性(例えば、利得1のミニタップ270Hz)を有する。図5B40、図5B42、及び図5B45に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリックの値の第2の範囲(例えば、「通常の」強度)に対応する。
図5B45では、第2の押圧イベントが検出されると、第2の押圧イベントは別個のシングルクリックであるので、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移は中断されない。図5B46は、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移の継続を示し、図5B47はユーザインタフェース522を示す。図示していないが、一部の実施形態では、デバイス100は、ユーザインタフェース522(図5B47)からユーザインタフェース520(図5B48)へのアニメーション遷移を表示する。
図5B49は、上記で詳述したように、ユーザインタフェース524(例えば、Pagesアプリケーション)からの代替シーケンスの比較を示す。図5B49の先頭行は、時間的に近いダブルクリックがあり、第1及び第2の押圧イベントの両方がTIの前に発生する、図5B5〜5B14のシーケンスを示す。図5B49の第2の行は、第1の押圧イベントと第2の押圧イベントとが時間的に更に離れたダブルクリックがあるが、第1及び第2の押圧イベントの両方がTIの前に生じる、図5B16〜5B25のシーケンスを示す。図5B49の第3の行は、第1の押圧イベントと第2の押圧イベントとが時間的に更に離れたダブルクリックがあり、第1の押圧イベントはTIの前に発生し、第2の押圧イベントはTIの後に発生する、図5B27〜5B38のシーケンスを示す。図5B49の第4の行は、2つのシングルクリックがあり、第1の押圧イベントはTIの前に発生し、第2の押圧イベントはTDCの後に発生する、図5B39〜5B48のシーケンスを示す。
図5B50〜5B59は、図5B5〜5B15の更に別の代替シーケンスを示す。図5B50〜5B59では、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移は、第1の解除イベントの後まで(例えば、図5B53)開始されない。図示していないが、一部の実施形態では、図5B16〜5B25、図5B27〜5B38、及び/又は図5B39〜5B48のシーケンスは、ユーザインタフェース524(例えば、Pagesアプリケーション)からユーザインタフェース522(例えば、写真フォルダ)へのアニメーション遷移が、第1の解除イベント後まで開始されない、代替えシーケンス(例えば、それぞれ図5B19、図5B30、図5B42)を有する。
図5B60〜5B61は、ホームボタン(例えば、ボタン204)上の入力(例えば、図5B60の接触540による押圧入力)を検出し、Pagesアプリケーション(図5B61)のユーザインタフェース524を表示する例を示す。図5B60に示す触知出力は、方法1500に関して以下で説明するように、強度変化メトリックの値の第1の範囲(例えば、「弱い」強度)に対応する。
図5B62〜5B65は、「弱い」強度ダウンクリック及び「弱い」強度アップクリックを示す。図5B63では、「弱い」強度により、接触541−bの強度がホームボタン上の浅い押圧強度閾値ITLまで増大すると(例えば、1秒あたり1250グラムなどの、1秒あたり強度の所定単位数までの強度変化メトリック値範囲に対して)、デバイス100は、触知出力590(例えば、利得0.5のミニタップ270Hz)を提供する。図5B65では、「弱い」強度により、接触541−dの強度が浅い押圧解除強度閾値ITLRまで減少すると(例えば、1秒あたり1250グラムなどの、1秒あたり強度の所定単位数までの強度変化メトリック値範囲に対して)、デバイス100は、触知出力591(例えば、利得0.25のミニタップ270Hz)を提供する。一部の実施形態では、「弱い」アップクリックイベントの触知出力は、「弱い」ダウンクリックイベントの触知出力の50%である。一部の実施形態では、「弱い」アップクリックイベントの音声出力は、「弱い」ダウンクリックイベントの音声出力の50%である。
図5B66〜5B69は、「通常の」強度ダウンクリック及び「通常の」強度アップクリックを示す。図5B66では、「通常の」強度により、接触542−bの強度がホームボタン上の浅い押圧強度閾値ITLまで増大すると(例えば、1秒あたり1250グラムなどの、1秒あたり強度の所定単位数よりも大きい強度変化メトリック値範囲に対して)、デバイス100は、触知出力592(例えば、利得1のミニタップ270Hz)を提供する。図5B69では、「通常の」強度により、接触542−dの強度が浅い押圧解除強度閾値ITLRまで減少すると(例えば、1秒あたり1250グラムなどの、1秒あたり強度の所定単位数よりも大きい強度変化メトリック値範囲に対して)、デバイス100は、触知出力593(例えば、利得0.5のミニタップ270Hz)を提供する。一部の実施形態では、「通常の」アップクリックイベントの触知出力は、「通常の」ダウンクリックイベントの触知出力の50%である。一部の実施形態では、「通常の」アップクリックイベントの音声出力は、「通常の」ダウンクリックイベントの音声出力の50%である。
図5B70〜5B75は、「バック」ボタンとしてホームボタン(例えば、ボタン204)を用いる例を示す。図5B71〜5B72は、ユーザインタフェース522(例えば、写真フォルダ)を表示している間に、ホームボタン(例えばボタン204)上の入力(例えば、図5B71の接触543による押圧入力)を検出し、それに応じて、ユーザインタフェース520(例えば、写真フォルダを有するマルチページホーム画面の2次ページ)を表示する例を示す。図5B73〜5B74は、ユーザインタフェース520(例えば、マルチページホーム画面の2次ページ)を表示している間に、ホームボタン(例えばボタン204)上の入力(例えば、図5B73の接触544による押圧入力)を検出し、それに応じて、ユーザインタフェース510(例えば、マルチページホーム画面の1次ページ)を表示する例を示す。一部の実施形態では、図5B75に示すように、マルチページのホーム画面の1次ページ(例えば、ユーザインタフェース510)を表示している間に、ホームボタン上の入力(例えば、接触545による押圧入力)を検出すると、デバイス100は、触知出力596(例えば、利得1のミニタップ270Hz)を提供するが、表示されたユーザインタフェースは変更しない。
図5C1〜5C19は、一部の実施形態に係る、ホームボタン構成プロセスのための例示的なユーザインタフェースを示す。図5C1〜5C19は、ユーザが、デバイス上のホームボタンに対する触知出力設定を選択する前に、ホームボタンに対する複数の触知出力設定を選択して試行する間の、ホームボタン構成処理の例を示す。
図5C1〜5C5は、「Settings(設定)」、次いで「General(一般)」、更に「ホームボタン」と選択する例を示す。図5C6〜5C7は、ユーザインタフェース564(例えば、オプション2が選択されたホームボタン構成ユーザインタフェース)へのアニメーション遷移の例を示す。図5C8では、オプション2として現在、触知出力設定が選択されている。一部の実施形態では、デフォルト触知出力設定としてオプション2が選択される。一部の実施形態では、オプション2は、ミニタップ270Hzなどの第2の触知出力パターンに対応する。図5C9では、ホームボタン上の接触553の強度が浅い押圧強度閾値ITLまで増大すると、デバイス100は、選択された触知出力設定(例えば、オプション2)に対応する触知出力561(例えば、ミニタップ270Hz)を提供する。
図5C10〜5C11は、オプション3を選択し(例えば、オプション3上の接触554による押圧入力により、図5C10)、ユーザインタフェース566(例えば、オプション3が選択されたホームボタン構成ユーザインタフェース)を表示する例を示す。図示していないが、一部の実施形態では、オプション2が元の場所に戻り、オプション3がホームボタン(例えば、ボタン204)に向かって移動する場合、ユーザインタフェース564(図5C10)とユーザインタフェース566(図5C11)との間にアニメーション遷移が表示される。
図5C11では、オプション3として現在、触知出力設定が選択されている。一部の実施形態では、オプション3は、ミニタップ300Hzなどの第3の触知出力パターンに対応する。図5C12では、ホームボタン上の接触555の強度が浅い押圧強度閾値ITLまで増大すると、デバイス100は、選択された触知出力設定(例えば、オプション3)に対応する触知出力565(例えば、ミニタップ300Hz)を提供する。
図5C13〜5C14は、オプション1を選択し(例えば、オプション1上の接触556による押圧入力により、図5C13)、ユーザインタフェース568(例えば、オプション1が選択されたホームボタン構成ユーザインタフェース)を表示する例を示す。図示していないが、一部の実施形態では、オプション3が元の場所に戻り、オプション1がホームボタン(例えば、ボタン204)に向かって移動する場合、ユーザインタフェース566(図5C13)とユーザインタフェース568(図5C14)との間にアニメーション遷移が表示される。
図5C14では、触知出力設定としてオプション1が現在選択されている。一部の実施形態では、オプション1は、ミニタップ230Hzなどの第1の触知出力パターンに対応する。図5C15では、ホームボタン(例えば、ボタン204)上の接触557の強度が浅い押圧強度閾値ITLまで増大すると、デバイス100は、選択された触知出力設定(例えば、オプション1)に対応する触知出力567(例えば、ミニタップ230Hz)を提供する。
図5C16〜5C17は、オプション1とともに「完了」を選択し(例えば、「完了」アイコン上の接触558による押圧入力を用いて、図5C16)、それに応じて、ユーザインタフェース562(例えば、General Settings(一般設定)ユーザインタフェース、図5C17)を表示する例である。
図5C18では、ホームボタン(例えば、ボタン204)上の接触559の強度が浅い押圧強度閾値ITLまで増大すると、デバイス100は、選択された触知出力設定(例えば、オプション1)に対応する触知出力569(例えば、ミニタップ230Hz)を提供する。ホームボタン(例えば、ボタン204)上の入力に応じて、ユーザインタフェース510(例えば、マルチページホーム画面の1次ページ)が表示される(図5C19)。図5A1〜5A18及び5B1〜5B75は、オプション2上の触知出力設定で示したので、これらの図の触知出力は、オプション2の選択された触知出力設定(例えば、ミニタップ270Hz)に対応することに留意されたい。(例えば、図5C16に示すように)ユーザが触知出力設定に対してオプション1を選択した場合、図5A1〜5A18及び5B1〜5B75の触知出力は、オプション1の選択された触知出力設定(例えば、ミニタップ230Hz)に対応する。同様に、ユーザが触知出力設定に対してオプション3を選択した場合、図5A1〜5A18及び5B1〜5B75の触知出力は、オプション3の選択された触知出力設定(例えば、ミニタップ300Hz)に対応することになる。
図6A1〜6B26は、一部の実施形態に係る、ユーザインタフェース触覚フィードバックの生成及びホームボタン触覚フィードバックの生成を制御するための例示的なユーザインタフェースを示す。それらの図におけるユーザインタフェースは、図13A〜13Dにおける処理を含む、以下で説明される処理を示すために使用される。以下の実施例のうちのいくつかは、(タッチ感知面とディスプレイとを組み合わせた)タッチスクリーンディスプレイ上での入力を参照して説明されるが、一部の実施形態では、デバイスは、図4Bに示すように、ディスプレイ450とは別個のタッチ感知面451上で入力を検出する。
一部の実施形態では、デバイスは、ユーザがデバイスにおけるユーザインタフェース触知出力生成をオン及びオフすることを可能にする、触知出力制御設定(例えば、音及び触覚設定)を提供する。
一般に、デバイスは、ユーザインタフェース要素との直接的な相互作用、例えば、ユーザ入力が検出されたときに、ユーザインタフェース要素に近接して配置されるフォーカスセレクタ(例えば、ポインタ又は接触)を介したユーザインタフェース要素の選択、操作、ドラッグ/ドロップ、及び/又はアクティブ化、に応じて、様々なタイプのユーザインタフェース触知出力を生成する。ユーザインタフェースの触知出力は、一般に、ユーザインタフェースにおける視覚的変化を伴う。例えば、一部の実施形態では、デバイスは、ユーザインタフェース内のアイテムをピックアップする入力(例えば、アイテムに対応する場所での接触の持続による長い押圧入力)に応じて、触知出力(例えば、マイクロタップ(150Hz))を提供し、ユーザインタフェースは、ディスプレイの表面に向かってリフトアップする物体を示し、触知出力は、オブジェクトの移動の終わりと一致するようにタイミングがとられる。ユーザインタフェース触知出力に加えて、デバイスはまた、デバイス上の永続的ボタン(例えば、仮想ホームボタン又は非機械式ホーム若しくはバックボタン)のアクティブ化に応じて触知出力を生成する。ボタンのアクティブ化は、ユーザインタフェースの対応する視覚的変化を伴うことがあるし、伴わないこともある。例えば、ホームボタン上の押圧入力に応じて、デバイスは、触知出力を生成し、現在表示されているユーザインタフェースを破棄し、ホーム画面を表示する。ホームボタン上の別の押圧入力に応じて、デバイスは、ボタン押圧に対する触知出力を生成するが、(例えば、現在表示されているホーム画面が、唯一のホーム画面又はマルチページホーム画面の1次ページである場合)ホーム画面を表示し続ける。したがって、一部のコンテキストでは、ユーザに、ユーザインタフェース触知出力をオフにする、例えば、電力を節約する、又は不信感を低減することを可能にする。しかし、ユーザがユーザインタフェース触知出力をオフしたいだけである場合には、ユーザが誤って永続的ボタンに対して触知出力生成をオフしてしまうことを防止する。
一部の実施形態では、デバイスは、音声出力構成要素及び触知出力構成要素の両方を含む非視覚フィードバックを提供する。あるタイプの音声出力は、ユーザインタフェースにおける視覚的変化と対になるか、又はユーザインタフェースにおける視覚的変化とは独立して存在する。例えば、音声警報、着信音、音楽クリップは、触知出力に依拠せずに再生され、ユーザインタフェースの一部の変化又はデバイスの状態をユーザに警告するように機能することができる。一部の実施形態では、デバイスは、触知出力に特に結び付けられ、触知出力を強化又は補足する特定の音声出力を生成する。これらのタイプの音声出力は、ここでは「触覚音声出力」と呼ばれる。一部の実施形態では、非視覚フィードバックプロファイルは、触知出力のための触知出力パターン、及び、触知出力に付随してユーザのある触覚感覚を呼び出す触知音声出力のための音声出力パターンを含む。触覚音声出力の周波数、振幅、波形、及び/又はタイミングと、対応する触知出力との間の相互作用は、ユーザにより豊かで微妙な触覚感覚を生成し、非視覚フィードバックをユーザにより顕著に感じさせる。一部の状況では、デバイスは、ユーザが、一般ボリューム制御及び/又はミュート制御を使用して、触覚音声出力(例えば、ユーザインタフェース触知出力に対応する触覚音声出力、及び/又はデバイス/システム触知出力(例えば、ホームボタン触知出力)に対応する触覚音声出力)の生成を制御することができ、例えば電力を節約し、及び/又は不信感を軽減する。しかし、デバイスはまた、デバイス/システム触知出力に対する触覚音声(例えば、永続的ボタンのアクティブ化のために触知出力に付随する音声)を、ユーザが誤ってオフすることを防止する。
図6A1〜6A26は、ユーザインタフェースの触知出力がデバイス上でオンにされたときの触知出力の生成を示す。図6A1〜6A26は、ユーザインタフェース触知出力がデバイスでオンにされると、デバイスはユーザインタフェース触知出力とシステム触知出力(例えば、ハードウェア又はデバイス上の永続的ボタンのアクティブ化のための触知出力)の両方を生成することを示す。図6B1〜6B26は、ユーザインタフェースの触知出力がデバイスでオフにされると、デバイスはシステム触知出力(例えば、デバイス上のハードウェア又は永続的ボタンのアクティブ化のための触知出力)を生成するが、ユーザインタフェース触知出力の少なくとも一部分の生成をやめる。
図6A1に示すように、制御ユーザインタフェース(例えば、サウンド及び触覚制御ユーザインタフェース680)は、デバイスにおける音及び触覚出力を制御するためのいくつかのトグル設定を含む。例えば、トグル制御671を介してリング設定670の振動を「OFF」に設定する。無音設定672での振動は、トグル制御673を介して「オフ」に設定され、ユーザインタフェース触知出力設定674は、トグル制御675を介して「オン」に設定される。音及び触覚制御インタフェース680は、(例えば、ボリューム表示器677をボリューム制御器676に沿って移動させることによって)リンガー及び警報音出力に対する現在のボリュームを設定するためのボリューム制御器676を更に含む。更に、ボタン設定678による変更が、トグル制御679を介して「OFF」に設定される。
ユーザインタフェース触覚出力がデバイス100においてトグル制御675を介してオンにされている間は、ユーザインタフェース触知出力及びシステム触知出力が生成される。図6A2〜6A4では、接触(例えば、接触604)による入力が、ホーム画面ユーザインタフェース(例えば、ホーム画面602)上のアプリケーション起動アイコン(例えば、Mail(メール)アプリケーションを起動するためのアイコン606)に対応する場所において、タッチスクリーン112上で検出される。図6A3〜6A4に示すように、接触604の特性強度が浅い押圧強度閾値ITLを上回って増大すると、(図6A4の強度メータ610によって示されるように)ホーム画面602(アイコン606を除く)がぼやけ、メニュー(例えば、クイックアクションメニュー608)が、(図6A4に示すように)ぼやけたホーム画面602上に提示される。加えて、図6A4に示すように、デバイス100は、接触604の特性強度の浅い押圧強度閾値ITLを上回る増大を検出したことに応じて、クイックアクションメニュー608を提示するとともに、触知出力612(例えば、利得1.0のマイクロタップ(200Hz))を生成する。
図6A5〜6A8は、接触604がタッチスクリーン112上に維持されている間に、デバイスが、アプリケーション起動アイコン606に対応する場所からメニューオプション614、616、618、及び620に対応するそれぞれの場所への接触604の移動を検出することを示す。接触604がそれぞれのメニューオプション614、616、618、及び620に対応する場所に移動すると、デバイス100は、それぞれの触知出力(例えば、触知出力622、624、628、及び630)(例えば、利得0.4、最小間隔:0.05秒のマイクロタップ(270Hz))を生成して、接触604が異なるメニューオプションに移動したことを示す。
図6A8〜6A9は、接触604がメニューオプション620を超えたときに、接点604のリフトオフを検出されることを示す。接触604のリフトオフの検出に応じて、デバイス100は、Mail(メール)アプリケーションを起動し、図6A10に示すように、メニューオプション620に対応するMail(メール)アプリケーションのユーザインタフェース(例えば、電子メールリストユーザインタフェース622)を表示する。
図6A11〜6A13では、電子メール項目のリスト内の電子メール項目(例えば、項目626)に対応する場所において、タッチスクリーン112上の別の接触(例えば接触624)による入力が検出される。図6A11〜6A13に示すように、接触624の特性強度が浅い押圧強度閾値ITLを上回って増大すると(図6A13の強度メータ610によって示されるように)、電子メールリストユーザインタフェース622(項目626を除く)はぼやけ、項目626のプレビュー(例えば、プレビュー628)が、(図6A13に示されるように)ぼやけた電子メールリストユーザインタフェース622上に提示される。加えて、図6A13に示すように、デバイス100は、接触624の特性強度の浅い押圧強度閾値ITLを上回る増大を検出したことに応じて、レビュー628を提示するとともに、触知出力630(例えば、利得1.0のマイクロタップ(200Hz))を生成する。
図6A13〜6A16は、接触624がタッチスクリーン112上に維持されている間に、デバイスが、接触624の押下場所から左方向への移動を検出することを示す。接触624の左方向への移動により、プレビュー628がタッチスクリーン112の左側に向かってドラッグされる。プレビュー628がタッチスクリーン112の左側に向かってドラッグされる間に、隠れメニューオプション632(例えば、「Archive(アーカイブ)」)が、プレビュー628の後方から徐々に明らかにされる)。図6A16では、接触624が、隠れメニューオプション632(例えば、電子メールアイテムをアーカイブし、電子メールリストから削除する)に関連する操作をトリガするためのユーザインタフェース内の閾値位置(例えば、タッチスクリーン112の中心線の左側に隠れた閾値位置)を横切って移動すると、デバイス100は、メニューオプション632の色を変更して、アーカイブ操作をトリガするための閾値がプレビュー628の移動によって満たされたことを示す。更に、デバイス100は、アーカイブ操作をトリガするための閾値がプレビュー628の移動によって満たされていることを示すために、ユーザインタフェースの視覚的変化とともに触知出力634(例えば、利得1.0のマイクロタップ(270Hz))を生成する。
図6A17〜6A19は、接触624が、アーカイブ操作をトリガするために閾値位置を横切った(又はプレビュー628をドラッグ通過した)後に、接触624のリフトオフが検出されることを示す。接触624のリフトオフの検出に応じて、デバイス100は、項目626に対応する電子メールにアーカイブ操作を実行し、項目626は、図6A19に示すように電子メール項目のリストから除去される。
図6A20〜6A22では、電子メール項目のリスト内の別の電子メール項目(例えば、項目638)に対応する場所において、タッチスクリーン112上の別の接触(例えば、接触636)による入力が検出される。図6A20〜6A22に示すように、接触636の特性強度が浅い押圧強度閾値ITLを上回って増大すると(図6A22の強度メータ610によって示されるように)、電子メールリストユーザインタフェース622(項目638を除く)はぼやけ、項目638のプレビュー(例えば、プレビュー640)が、(図6A22に示されるように)ぼやけた電子メールリストユーザインタフェース622上に提示される。加えて、図6A22に示すように、デバイス100は、接触636の特性強度の浅い押圧強度閾値ITLを上回る増大を検出したことに応じて、プレビュー640を提示するとともに、触知出力642(例えば、利得1.0のマイクロタップ(200Hz))を生成する。
図6A23は、(例えば、プレビュー640上で)接触636がタッチスクリーン112上に維持されている間、深い押圧強度閾値ITDを上回る接触636の特性強度の増大を検出することを示す。デバイス100は、深い押圧強度閾値を上回る接触636の特性強度の増大を検出したことに応じて、プレビュー640の表示を停止し、ぼやけた電子メールリストユーザインタフェースの代わりに、コンテンツ表示ユーザインタフェース644(例えば、電子メール項目638のコンテンツを表示するユーザインタフェース)を表示する。更に、デバイス100は、ユーザインタフェース644の表示とともに、触知出力646(例えば、フルタップ(150Hz)、利得:1.0)を生成する。
図6A24では、接触636のリフトオフが検出され、接触636のリフトオフが検出された後、ユーザインタフェース644を維持する。
図6A25は、ユーザインタフェース644がタッチスクリーン112上に表示されている間に、接触(例えば、接触646)による押圧入力が、デバイス100のホームボタン650上で検出されることを示す。デバイス100は、押圧入力(例えば、浅い押圧強度閾値ITLを上回る接触646の特性強度の増大)の検出に応じて、触知出力648(例えば、利得1.0のミニタップ(230Hz))を生成して、ホームボタン650が押圧入力によってアクティブ化されていることを示す。図6A26は、押圧入力によるホームボタン650のアクティブ化に応じて、ユーザインタフェース644が破棄され、ホーム画面602がタッチスクリーン112上のユーザインタフェース644の代わりに表示されることを示す。
図6B1〜6B26は、デバイスにおいてユーザインタフェース触知出力がオフされたときの触知出力の生成を示す。特に、図6B1〜6B26は、ユーザインタフェースの触知出力がデバイスでオフにされると、デバイスはシステム触知出力(例えば、デバイス上のハードウェア又は永続的ボタンのアクティブ化のための触知出力)を生成し続けるが、特定のユーザインタフェースの触知出力の生成が、ユーザの触知出力設定による制御から除外される場合を除いて、ユーザインタフェース触知出力の生成をやめる。
図6B1に示すように、ユーザインタフェース触知出力設定674は、音声及び触覚制御インタフェース680におけるトグル制御675を介して「オフ」に設定されている。
ユーザインタフェース触知出力がデバイス100においてトグル制御675を介してオフにされている間、少なくとも一部のユーザインタフェース触覚出力はもはや生成されない。図6B2〜6B4では、接触(例えば、接触605)による入力が、ホーム画面602上のMail(メール)アプリケーションを起動するためのアイコン606に対応する場所において、タッチスクリーン112上で検出される。図6B3〜6B4に示すように、接触605の特性強度が浅い押圧強度閾値ITLを上回って増大すると(図6B4の強度メータ610によって示されるように)、ホーム画面602(アイコン606を除く)がぼやけ、クイックアクションメニュー608が、(図6B4に示すように)ぼやけたホーム画面602上に提示される。加えて、図6B4に示すように、デバイス100は、接触605の特性強度の浅い押圧強度閾値ITLを上回る増大を検出したことに応じて、クイックアクションメニュー608を提示するとともに、触知出力613(例えば、利得1.0のマイクロタップ(200Hz))を生成する。この例では、触知出力613がユーザインタフェース触知出力であっても、押圧入力に応じてクイックアクションメニューを提示するための触知出力は、ユーザインタフェース触知出力設定の制御から免除される。言い換えれば、一部の実施形態では、アプリケーション起動アイコン上の押圧入力に応じてクイックアクションメニューの提示に付随する触知出力(例えば、利得1.0のマイクロタップ(200Hz))は、ユーザインタフェース触知出力に対する現在の触知出力設定に関係なく常に生成される。
図6B5〜6B8は、接触605がタッチスクリーン112上に維持されている間に、デバイスが、アプリケーション起動アイコン606に対応する場所からメニューオプション614、616、618、及び620に対応するそれぞれの場所への接触605の移動を検出することを示す。接触605が各メニューオプション614、616、618、及び620に対応する場所に移動すると、デバイス100は、(例えば、接触604が異なるメニューオプションに移動したことを示すために触知出力622、624、628、630が生成された。図6A5〜6A8に示すシナリオとは対照的に)そのメニューオプションを強調表示して、接触605が異なるメニューオプションに移動したことを示すが、ユーザインタフェース内で生じている視覚的変化に付随するいかなる触知出力も生成しない。言い換えれば、一部の実施形態では、デバイス100は、ユーザインタフェース触知出力がオフにされている場合、入力のある部分(例えば、接触605による個々のメニューオプションを横切る移動)に対する触知出力の生成をやめるが、ユーザインタフェース触知出力がオンにされているかオフにされているかにかかわらず、入力の他の部分(例えば、クイックアクションメニュー608を表示させる、浅い押圧強度閾値を上回る接触605の強度の増大)に対する触知出力を生成し続ける。
図6B8〜6B9は、接触605がメニューオプション620を超えたときに、接点605のリフトオフを検出されることを示す。接触605のリフトオフの検出に応じて、デバイス100は、Mail(メール)アプリケーションを起動し、図6B10に示すように、メニューオプション620に対応する電子メールリストユーザインタフェース622を表示する。
図6B11〜6B13では、電子メール項目のリスト内の項目626に対応する場所において、タッチスクリーン112上の別の接触(例えば接触625)による入力が検出される。図6B11〜6B13に示すように、接触625の特性強度が浅い押圧強度閾値ITLを上回って増大すると(図6B13の強度メータ610によって示されるように)、電子メールリストユーザインタフェース622(項目626を除く)はぼやけ、プレビュー628が、(図6B13に示されるように)ぼやけた電子メールリストユーザインタフェース622上に提示される。加えて、図6B13に示すように、デバイス100は、接触625の特性強度の浅い押圧強度閾値ITLを上回る増大を検出したことに応じて、プレビュー628を提示するとともに、触知出力631(例えば、利得1.0のマイクロタップ(200Hz))を生成する。言い換えれば、一部の実施形態では、項目上の押圧入力に応じてプレビューの提示に付随する触知出力(例えば、利得1.0のマイクロタップ(200Hz))は、ユーザインタフェース触知出力に対する現在の触知出力設定に関係なく常に生成される。
図6B13〜6B16は、接触625がタッチスクリーン112上に維持されている間に、デバイスが、接触625の押下場所から左方向への移動を検出することを示す。接触625の左方向への移動により、プレビュー628がタッチスクリーン112の左側に向かってドラッグされる。プレビュー628がタッチスクリーン112の左側に向かってドラッグされる間に、隠れメニューオプション632(例えば、「Archive(アーカイブ)」)が、プレビュー628の後方から徐々に明らかにされる)。図6B16では、接触625が、隠れメニューオプション632(例えば、電子メールアイテムをアーカイブし、電子メールリストからアーカイブする)に関連する操作をトリガするためのユーザインタフェース内の閾値位置(例えば、タッチスクリーン112の中心線の左側に隠れた閾値位置)を横切って移動すると、デバイス100は、メニューオプション632の色を変更して、アーカイブ操作をトリガするための閾値がプレビュー628の移動によって満たされたことを示す。しかしながら、図6A16に示すシナリオとは対照的に、デバイス100は、ユーザインタフェースの視覚的変化とともにいかなる触知出力も生成しない。言い換えれば、デバイス100は、「オフ」状態にある現在の触知出力設定に従って、ユーザインタフェースの触知出力の生成をやめている。
図6B17〜6B19は、接触625が、アーカイブ操作をトリガするために閾値位置を横切った(又はプレビュー628をドラッグ通過した)後に、接触625のリフトオフが検出されることを示す。接触625のリフトオフの検出に応じて、デバイス100は、項目626に対応する電子メールにアーカイブ操作を実行し、項目626は、図6B19に示すように電子メール項目のリストから除去される。
図6B20〜6B22では、電子メール項目のリスト内の項目638に対応する場所において、タッチスクリーン112上の別の接触(例えば接触637)による入力が検出される。図6B20〜6B22に示すように、接触637の特性強度が、浅い押圧強度閾値ITLを上回って増大すると(図6B22の強度メータ610によって示されるように)、電子メールリストユーザインタフェース622(項目638を除く)はぼやケ、プレビュー640が、(図6B22に示すように)ぼやけた電子メールリストユーザインタフェース622上に提示される。更に、図6B22に示すように、デバイス100は、接触637の特性強度の浅い押圧強度閾値ITLを上回る増大を検出したことに応じて、デバイスは、触知出力643がユーザインタフェースの触知出力をオフにするための現在の触知出力設定による制御からは免除されるため、プレビュー640を提示するとともに、触知出力643(例えば、利得1.0のマイクロタップ(200Hz))を生成する。
図6B23は、接触637がタッチスクリーン112上に(例えば、プレビュー640上に維持されている間、深い押圧強度閾値ITDを上回る接触637の特性強度の増大を検出することを示す。デバイス100は、深い押圧強度閾値を上回る接触637の特性強度の増大を検出したことに応じて、プレビュー640の表示を停止し、ぼやけた電子メールリストユーザインタフェースの代わりに、コンテンツ表示ユーザインタフェース644を表示する。更に、触知出力647は、ユーザインタフェース触知出力をオフにするための現在の触知出力設定による制御から免除されるので、デバイス100は、ユーザインタフェース644の表示とともに、触知出力647(例えば、利得1.0のフルタップ(150Hz))を生成する。
図6B24では、接触637のリフトオフを検出し、接触637のリフトオフを検出した後、ユーザインタフェース644を維持する。
図6B25は、ユーザインタフェース644がタッチスクリーン112上に表示されている間に、接触(例えば、接触647)による押圧入力が、デバイス100のホームボタン650上で検出されることを示す。デバイス100は、押圧入力(例えば、浅い押圧強度閾値ITLを上回る接触647の特性強度の増大)の検出に応じて、触知出力649(例えば、利得1.0のミニタップ(230Hz))を生成して、ホームボタン650が押圧入力によってアクティブ化されていることを示す。図6B26は、押圧入力によるホームボタン650のアクティブ化に応じて、ユーザインタフェース644が破棄され、ホーム画面602がタッチスクリーン112上のユーザインタフェース644の代わりに表示されることを示す。
図6A1〜6B26には示していないが、触覚音声出力は、様々な使用状況及びデバイスの省電力構成における異なる考慮事項の特定の優先順位付けにより、上記の例で生成された触知出力の一部又は全部を付随することができる。例えば、一部の実施形態では、触覚音声出力は、一般的なデバイス音声ボリューム制御及び/又はミュート制御によって制御される。
一部の実施形態では、触知出力が生成されると、デバイスがミュートされているか否かにかかわらず、常に触覚音声出力が生成される。
一部の実施形態では、システム触知出力が生成されると、デバイスがミュートされているか否かにかかわらず、常に触覚音声出力が生成される。
一部の実施形態では、ユーザインタフェース触知出力が生成されると、デバイスがミュートされているか否かにかかわらず、常に触覚音声出力が生成される。
一部の実施形態では、触知出力が生成される場合、デバイスがミュートされているときは触覚音声出力がミュートされ、デバイスがミュートされていないときは触覚音声出力が生成される。
一部の実施形態では、システム触知出力が生成される場合、デバイスがミュートされているときはシステム触知出力に付随する触覚音声出力がミュートされ、デバイスがミュートされていないときはシステム触知出力に付随する触覚音声出力が生成される。
一部の実施形態では、ユーザインタフェース触知出力が生成される場合、デバイスがミュートされているときはユーザインタフェース触知出力に付随する触覚音声出力がミュートされ、デバイスがミュートされていないときはユーザインタフェース触知出力に付随する触覚音声出力が生成される。
一部の実施形態では、デバイスが触知出力を有する触覚音声を生成すると、デバイスは、更に生成された触知出力の特性に従って触覚音声出力を生成する。例えば、音声出力の振幅は、対応する触知出力の振幅が増大すると増大する。例えば、音声出力の周波数は、対応する触知出力の周波数が増大すると増大する。一部の実施形態では、音声出力における特性(例えば、振幅又は周波数)に対する変化量は、対応する触知出力における特性に対する変化量よりも大きい。
一部の実施形態では、デバイスが触知出力(例えば、ユーザインタフェース触知出力設定によって制御されるユーザインタフェース触知出力)を有する触覚音声を生成する場合、デバイスは、デバイスのボリューム設定に基づいて調整された振幅を有する触覚音声出力を生成する。一部の実施形態では、デバイスが触知出力(例えば、ユーザインタフェース触知出力設定による制御から免除されたユーザインタフェース触知出力)を有する触覚音声を生成する場合、デバイスは、デバイスのボリューム設定に基づいて調整されない振幅を有する触覚音声出力を生成する。
一部の実施形態では、デバイスは、デバイスのミュート/非ミュートの設定にかかわらず、ユーザインタフェース触知出力がオフにされた場合に触知音声出力を生成し続ける。例えば、ユーザインタフェース触知出力設定による制御から免除されない触知出力に対して、触知出力が生成されないとき、デバイスは、触知出力の代わりに音声出力を生成して、ユーザに非視覚フィードバックを提供することができる。
一部の実施形態では、デバイスは、ユーザインタフェース触知出力がオンにされている場合、デバイスのミュート設定に従って触覚音声出力(例えば、ユーザインタフェース触知出力の触覚音声出力)をオフにするだけである。
触覚出力制御及び触知出力制御の他の変形も可能であり、本明細書では網羅的に列挙されていない。
図7A〜7Cは、一部の実施形態に係る、ユーザ入力デバイスのアクティブ化に関して視覚フィードバックを提供する方法700を示すフロー図である。方法700は、ディスプレイ、タッチ感知面、タッチ感知面及び/又はデバイスのそれぞれのボタン(例えば、仮想又は物理ホームボタン)との接触の強度を検出するための1つ以上のセンサ、及び触知出力を生成するための1つ以上の触知出力生成器、を有する電子デバイス(例えば、デバイス300、図3、又はポータブル多機能デバイス100、図1A)において実行される。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。一部の実施形態では、ディスプレイはタッチ感知面から分離している。一部の実施形態では、方法700は、非一時的コンピュータ可読記憶媒体(例えば、非揮発性コンピュータ可読記憶媒体)に記憶され、デバイス100の1つ以上のプロセッサ122(図1A)などの電子デバイスの1つ以上のプロセッサによって実行される命令によって統制される。説明を簡単にするために、デバイス100により実行されるものとして方法700を以下説明する。方法700の一部の操作が任意選択で組み合わされ、及び/又は一部の操作の順序が任意選択で変更される。
方法700は、ユーザ入力デバイスを作動させる入力(例えば、押圧入力)と一致する前兆入力(例えば、浅い押圧)を検出したことに応じて、ユーザ入力デバイス(例えば、仮想又は物理ホームボタン)のアクティブ化に関する視覚フィードバックの開始を表示することに関する。一部の実施形態では、ユーザ入力デバイスをアクティブ化する入力が検出されると、ユーザ入力デバイスのアクティブ化に対応するユーザインタフェースの変更が、既に提示されている視覚フィードバックの継続として提示される。前兆入力の終了前にユーザ入力デバイスをアクティブ化するための入力が検出されない場合、視覚フィードバックは表示されなくなり、ユーザインタフェースの元の状態が復元される。ユーザ入力デバイスの実際のアクティブ化の前に、ユーザ入力デバイスのアクティブ化に関する視覚フィードバックの開始を表示することは、入力の効果(例えば、ホーム画面に戻るためのホームボタンのアクティブ化)に関する情報をユーザに提供し、その情報に基づいて入力の完了を続行するかどうかに関する決定を行う機会をユーザに与えることを可能にする。このように、視覚フィードバックは、デバイスの操作/対話時に、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによってデバイスの操作性を向上させ、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによって、デバイスの電力消費を削減し、バッテリ寿命を改善する。
一部の実施形態では、デバイスのホームボタンは、物理ホームボタン又は仮想ホームボタン(例えば、ボタン204、図5A1)である。一部の実施形態では、デバイスは、タッチ感知面との接触の強度を検出する1つ以上のセンサを含む。一部の実施形態では、ディスプレイはタッチ感知式ディスプレイである。一部の実施形態では、デバイスは触知出力を生成するための1つ以上の触知出力生成器を含む。一部の実施形態では、ホームボタン上第1のタイプの入力を検出したことに応じて(機械式スイッチの押下を介して検出される押圧入力又は押圧若しくは解除入力、又は方法900、1300、1500及び1700を参照してより詳細に記載されるように、ホームボタン上の接触の強度を、1つ以上の強度閾値に基づくアクティブ化基準と比較することによって)、(例えば、それぞれの場所に永続的に表示されるか、又はディスプレイから離れたデバイス上の永続的な場所に配置される)ホームボタンは、現在表示されているユーザインタフェースを破棄するために、複数の異なるコンテキストにおいて、デバイス上で利用可能である(例えば、任意選択的に、デバイスのホーム画面、マルチタスクユーザインタフェース、又は仮想アシスタントユーザインタフェースなどのアプリケーション又はシステムユーザインタフェースの以前のビューなどの、以前に表示されたユーザインタフェースを再表示する)。ホームボタンアクティブ化のための触覚を構成する他の態様については、方法1100及び1900を参照してより詳細に説明する。
一部の実施形態では、ホームボタンは、第1のタイプの入力(例えば、シングルクリック(例えば、1つの押圧入力、又は解除イベントが続く1つの押圧入力))、第2のタイプの入力(例えば、ダブルクリック(例えば、第1の解除イベントが続き第2の押圧イベントが続く第1の押圧イベント、又は第1の解除イベントが続き第2の押圧イベントが続き更に第2の解除イベントが続く第1の押圧イベント、であり、第1及び第2の押圧イベントは互いの時間閾値量内で検出される))、第3のタイプの入力(例えば、長い押圧(例えば、閾値時間量を超える時間が経過するまでリフトオフしない第1の押圧イベントを有する))、及び第4のタイプの入力(例えば、深い押圧(例えば、接触の初期のタッチダウン後の閾値時間量内の深い押圧強度閾値を上回る接触強度の増大を含む第1の押圧イベントを有する))を含む複数のタイプの入力に応答する。一部の実施形態では、それぞれのタイプの入力は、現在表示されているユーザインタフェースの破棄に関連付けられ、対応する操作を実行し、任意選択的に、その操作に関連付けられた対応するユーザインタフェースを表示する。
方法700では、及び図7Aを参照して、デバイス(例えば、図5A1のデバイス100)は、ディスプレイ上に、第1のユーザインタフェース(例えば、ホーム画面、又は図5A1のユーザインタフェース510などの、マルチホーム画面の1次ページ)に表示する(702)。デバイスは、第1のユーザインタフェース(例えば、図5A1のユーザインタフェース510)を表示している間に、第1のユーザインタフェースに指示された入力(例えば、図5A2のClock(時計)アイコン上の接触502によるタップジェスチャ)を検出する(704)。例えば、第1のユーザインタフェースに指示された入力は、第1のユーザインタフェース内又はユーザインタフェース全体(ホームボタン上ではない)におけるアクティブ化可能なオブジェクトに対応する場所におけるタッチ感知面上のタッチ入力である。別の例として、第1のユーザインタフェースに指示される入力は、アプリケーション起動アイコン、フォルダアイコン、通知、メニューオプション、制御アフォーダンス(例えば、制御ユーザインタフェースを表示するための)、又は全体としてのユーザインタフェース(例えば、ホーム画面上のスワイプ入力、又はマルチページホーム画面の1次ページ)に指示されたタッチ入力である。
第1のユーザインタフェースへ指示された入力を検出したことに応じて、デバイスは、第1のユーザインタフェース(例えば、図5A2のユーザインタフェース510)の表示を停止させ、第1のユーザインタフェースとは別個の第2のユーザインタフェース(例えば、図5A3のClock(時計)アプリケーションのユーザインタフェース512)(例えば、第1のアプリケーションのユーザインタフェース、暗くされたホーム画面上に重ねられた拡大フォルダ、暗くされたホーム画面上に重ねられた拡大通知、暗くされたホーム画面上に重ねられた制御パネル、マルチユーザインタフェースのそれぞれの表現を同時に提示するマルチタスクユーザインタフェース、マルチページホーム画面の2次ページ、通知画面、ウィジェット画面など)を表示する(706)。
第2のユーザインタフェースを表示している間に、ホームボタン上の接触(例えば、図5A4に示す接触504−a)を検出する(708)。ホームボタン上の接触を連続的に検出している間に、デバイスは、少なくとも3つの操作を実行する(710)。第1に、(例えば、図5A5に示すように)第1強度閾値(例えば、ヒント強度閾値ITH)を上回る接触の特性強度の増大を検出する。第2に、(例えば、図5A5〜5A6及び図5A9〜5A10に示すように)第1の強度閾値に対する接触の特性強度の増大を検出したことに応じて、デバイスは、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示する。第3に、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示している間に、デバイスは、第1の強度閾値(例えば、ヒント強度閾値ITH)を上回る接触の特性強度の増大を含む押圧入力を検出することを含む、入力シーケンス(例えば、図5A4〜5A7の接触504による入力シーケンス504−a〜504−e、又は図5A9〜5A13の接触508による入力シーケンス508−a〜508−e)を検出する(例えば、接触の強度は、第1の強度閾値に達した後も増大し続け、第2のユーザインタフェースから第1のユーザインタフェースへの遷移の開始後に表示される)。
ここで図7Bを参照すると、入力シーケンスを検出したことに応じて、デバイスは、入力シーケンスが第1の基準を満たすかどうか、及び/又は入力シーケンスが第2の基準を満たすかどうか、を判定する(712)。入力シーケンスが、(例えば、図5A11に示されるように)押圧入力の終了が検出される前に、第1の基準であって、(例えば、第2の強度閾値は浅い押圧強度閾値ITLであり、第2の強度閾値は第1の強度閾値よりも高い)接触の特性強度が第2の強度閾値を上回って増大することを要求する第1の基準を満たすとの判定に従って、(例えば、押圧入力の終了を検出することは、接触感知面からの接触のリフトオフ、又は解除強度閾値を下回る接触の特性強度の減少などの、解除入力を検出することを含む(例えば、図5A13に示すように)(例えば、解除強度閾値は、浅い押圧強度閾値よりも上回って、下回って、又は同じになるようにあらかじめ構成されてもよく、又は押圧入力の入力メトリック(例えば、接触強度の増大率)に基づいて動的に決定されてもよい))、デバイスは、第2のユーザインタフェースの表示を停止し、第1のユーザインタフェースをディスプレイ上に再表示する(例えば、第2のユーザインタフェースから第1のユーザインタフェースへの遷移の終了時に、第1のユーザインタフェースが再表示され、第2のユーザインタフェースはもはや表示されなくなる)。例えば、図5A8〜5A14では、入力シーケンスは第1の基準を満たし、デバイス100は、ユーザインタフェース510からユーザインタフェース510に戻る遷移の終了において、ユーザインタフェース512の表示を停止し(図5A8)、ユーザインタフェース510(例えば、ユーザインタフェース513−1〜513−5、図5A9〜5A13)を再表示する(図5A14)。
入力シーケンスが第2の基準であって、押圧入力の終了が検出される前に接触の特性強度が第2の強度閾値を下回ったままであることを要求する第2の基準、を満たすとの判定に従って、デバイスは、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を逆行させ、第2のユーザインタフェースをディスプレイ上に再表示する。例えば、図5A4〜5A8では、入力シーケンスは第2の基準を満たし、デバイス100は遷移の開始を(例えば、ユーザインタフェース513−2からユーザインタフェース513−1へ、図5A6〜5A7)逆行させ、ディスプレイ上に第2のユーザインタフェース(例えば、ユーザインタフェース512、図5A8)を再表示する。
一部の実施形態では、第2のユーザインタフェースの表示を停止し、第1のユーザインタフェースを再表示することは、(例えば、図5A9〜5A13に示すように)第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始の継続を表示することを含む(714)。一部の実施形態では、前兆入力に応じて表示される視覚フィードバックの継続を表示することによって、第2のユーザインタフェースから第1のユーザインタフェースへの完全な遷移が、ユーザを予期せぬ視覚的変化で混乱させることなく、ユーザの期待に従ってシームレスに実行され、(例えば、デバイスの操作/対話時に、適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザインタフェースをより効率的にするとともに、ユーザがデバイスをより迅速にかつ効率的に使用できるようにすることによってデバイスの電力使用を削減し、バッテリ寿命を改善する。また、第2のユーザインタフェースから第1のユーザインタフェースへの遷移は、その前兆入力に応じて視覚フィードバックの表示によって不必要に遅延されることはない。
一部の実施形態において、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースの少なくとも一部分を第1のユーザインタフェースの少なくとも一部分と同時に表示することを含む(716)。例えば、図5A9では、ユーザインタフェース513−1は、ユーザインタフェース512の一部部分と、ユーザインタフェース510の一部分とを含む。一部の実施形態では、遷移が進むにつれて、(例えば、図5A10〜5A13に示すように)ユーザインタフェース510がより多く表示され、ユーザインタフェース512がより少なく表示される。
一部の実施形態では、第1のユーザインタフェースは、電子デバイス上の異なるアプリケーションに対応する複数のアプリケーション起動アイコンを含むホーム画面(例えば、ユーザインタフェース510、図5A1)である(718)。
ここで図7Cを参照すると、一部の実施形態では、第1のユーザインタフェース及び第2のユーザインタフェースは、連続的に表示されるアプリケーションのユーザインタフェースである(720)。例えば、ホームボタンは、一部のコンテキストにおいてバックボタンとして機能する。
一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、(例えば、接触強度の増大に従って)第2のユーザインタフェースのサイズを縮小することを含む(722)。例えば、図5A5〜5A6に示すように、接触504の特性強度が増大するにつれて、第2のユーザインタフェース512の表示サイズが縮小する。一部の実施形態では、デバイスは、(例えば、接触強度の増大に従って)第2のユーザインタフェースのサイズを縮小しながら、第2のユーザインタフェースの後方から第1のユーザインタフェースを明らかにさせる(724)。例えば、第2のユーザインタフェースは、(例えば、図5A4に示すように)接触が第1の強度閾値に達する前は全画面サイズで表示され、接触の強度が第1の強度閾値を上回るまで増大すると、(例えば、図5A5〜5A6に示すように)第2のユーザインタフェースが収縮して、バックグラウンドのホーム画面を明らかにさせる。
一部の実施形態では、第2のユーザインタフェースは、第1のアプリケーションのユーザインタフェース(例えば、図5A8のClock(時計)アプリケーションのユーザインタフェース512)であり、第1のアプリケーションは第1のユーザインタフェースにおける第1のアプリケーション起動アイコン(例えば、図5A14のユーザインタフェース510上のClock(時計)アイコン)に対応し、第2のユーザインタフェースのサイズを縮小することは、(例えば、図5A9〜5A13に示すように)第1のユーザインタフェース上の第1のアプリケーション起動アイコンの位置に向かって第2のユーザインタフェースを収縮することを含む(726)。
一部の実施形態では、第2のユーザインタフェースは、(例えば、第1のユーザインタフェースのぼやけた拡大バージョンに重ねられている)拡大フォルダを含み(例えば、図5B70のユーザインタフェース522)、拡大フォルダは、第1のユーザインタフェースの第1のフォルダアイコン(例えば、図5B72のユーザインタフェース520の写真フォルダアイコン)に対応し、第2のユーザインタフェースのサイズを縮小することは、第1のユーザインタフェース上の第1のフォルダアイコンの位置に向かって拡大フォルダを収縮する(及び任意選択的に、同時に第1のユーザインタフェースの拡大バージョンを縮小し、明確化する)ことを含む(728)。
一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースを(例えば、接触強度の増大に従って)第1の方向において横方向にシフトさせることを含む(730)。例えば、ホーム画面(例えば、図5B72のユーザインタフェース520)の2次ページは、左方向又は右方向にシフトさせて、ホーム画面(例えば、図5B74のユーザインタフェース510)の1次ページのために場所を空ける。一部の実施形態では、デバイスは、第2のユーザインタフェースが第1の方向に横方向にシフトされるにつれて、第1のユーザインタフェースを明らかにする(例えば、ホーム画面が第2のユーザインタフェースの後方から明らかにされるか、又はホーム画面が移動する第2のユーザインタフェースの次にスライドする)(732)。
ここで図7Dを参照すると、一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースを(例えば、接触強度の減少に従って)フェーディング(又はその不透明度を減少させる)することを含む(734)。例えば、ホーム画面の1次ページが側方からスライドするので、ホーム画面の次のウィジェット画面がフェードアウトする。一部の実施形態では、デバイスは、第2のユーザインタフェースをフェードアウトしながら、第2のユーザインタフェースを覆うように(例えば、ホーム画面をスライドインして)、第1のユーザインタフェースを第1の方向へ横にシフトさせる(736)。
一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、(例えば、接触強度の増大に従って)第1のユーザインタフェース及び第2のユーザインタフェースのうちの少なくとも1つの仮想深度を変更することを含む(738)。例えば、ディスプレイの表面により近い第2のユーザインタフェースを有する積み重ねられた状態から開始して、第2のユーザインタフェースは、接触強度が増大するにつれてディスプレイの表面から遠ざかりながら、左に次いで右にシフトさせ、第1のユーザインタフェースは、ディスプレイの表面に向かって近づきながら、右に次いで左にシフトさせる。
一部の実施形態では、第2のユーザインタフェース(図5B15のマルチタスクユーザインタフェース528)は、第1のユーザインタフェース(図5B16のPagesアプリケーションユーザインタフェース524)の表現を含み、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースに含まれる第1のユーザインタフェースの表現を拡大すること、及び第1のユーザインタフェースの表現の仮想深度を減少させることを含む(742)。図5B15〜5B16では、ホームボタン上の接触533による押圧入力に応じて、Pagesアプリケーションの表現がマルチタスクユーザインタフェース528からポップアウトする。別の例として、第2のユーザインタフェース(例えば、マルチタスクユーザインタフェース)がホーム画面の表現をトップ位置に含む場合、ホーム画面の表現はマルチタスクユーザインタフェースからポップアウトし得る。
ここで図7Eを参照すると、一部の実施形態において、入力シーケンスを検出することは、入力シーケンスが第1の基準を満たすまで(例えば、ホームボタンアクションが第1のタイプの入力(例えば、シングルクリック)によってアクティブ化される(例えば、現在のユーザインタフェースを破棄し、ホーム画面を復元する)まで)、接触の特性強度が、第1の強度閾値と第2の強度閾値(例えば、第1の強度閾値より大きい)との間で変化することを検出することを、更に含む(744)。一部の実施形態では、デバイスは、(例えば、図5A9〜5A10に示すように)入力シーケンスが第1の基準を満たすまで満たされる、接触の特性強度が第1の強度閾値と第2の強度閾値との間で変化することを検出したことに応じて、接触の特性強度に従って、第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させる。一部の実施形態では、接触の特性強度に従って、第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることで、(例えば、より強く押圧することにより)入力を完了する方法及び(例えば、より強く押圧することなくリフトアップすることにより)入力をキャンセルする方法に関してユーザを教育する。更に、入力を完了するか否かを検討するためにより多くの時間がユーザに許されるため、(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)デバイスの操作性を高め、ユーザ−デバイスインタフェースを更に効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによって、デバイスの電力使用を削減し、バッテリ寿命を改善する。
一部の実施形態では、接触の特性強度に従って第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第1のユーザインタフェースに適用されるぼかし半径を動的に変更することを含む(746)。
一部の実施形態では、接触の特性強度に従って第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第1のユーザインタフェースの少なくとも一部分を動的に明らかにすることを含む(748)。(例えば、図5A5〜5A7に示すように)(例えば、接触の特性強度が増大するにつれて、第1ユーザインタフェースのより多くを徐々に明らかにし、接触の特徴強度が減少するにつれて第1ユーザインタフェースのより多くを徐々に隠す)。
一部の実施形態では、接触の特性強度に従って、第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、ディスプレイ上の第2のユーザインタフェースの位置を(例えば、第1の方向に横に(例えば、水平方向に))動的にシフトさせることを含み、接触の特性強度に従って、第1のユーザインタフェースの対応する量が、第2のユーザインタフェースの位置が動的にシフトされるにつれて明らかになる(例えば、第1の方向で横に前後にシフトされる)(750)。例えば、第2のユーザインタフェースは、接触の特性強度が増大するにつれて、第1の方向に徐々にシフトされて、第1のユーザインタフェースの一部を明らかにし、第2のユーザインタフェースは、接触の特性強度が減少するにつれて、第1の方向とは反対の第2の方向に徐々にシフトされて、(例えば、図5A5〜5A7に示すように)第1のユーザインタフェースの一部分を隠す。
図7Fを参照すると、一部の実施形態では、接触の特性強度に従って第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第2のユーザインタフェースの不透明度を動的に変更することを含む(752)。例えば、第2のユーザインタフェースをレンダリングするために使用される不透明度は、接触の特性強度が増大するにつれて、第1のユーザインタフェースを明らかにするために徐々に減少し、
第2のユーザインタフェースをレンダリングするために使用される不透明度は、接触の特性強度が減少するにつれて、第1のユーザインタフェースを不明瞭にするために徐々に増大する。
一部の実施形態では、第2のユーザインタフェースは、第1のユーザインタフェースの一部の拡大バージョンである(例えば、拡大フォルダUIは、ホーム画面の拡大バージョンの一部のように見える)。一部の実施形態では、接触の特性強度に従って、第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って第2のユーザインタフェースのサイズを動的に変更することを含む(754)。例えば、接触の強度が増大するにつれて、拡大フォルダUIは縮小して、フォルダを取り囲む第1のユーザインタフェースの一部をディスプレイの可視領域に引き込み、接触の強度が減少すると、縮小したフォルダは再び拡大して、フォルダを取り囲む第1のユーザインタフェースの一部をディスプレイの可視領域の外へ押し出す。
一部の実施形態では、第2のユーザインタフェースは、第1のユーザインタフェースの表現を含む。一部の実施形態では、接触の特性強度に従って、第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第1のユーザインタフェースの表現の仮想深度を動的に変更することを含む(例えば、接触強度が増大すると、第1のユーザインタフェースの表現は、サイズが拡大し、ディスプレイ面のz方向に向かって進行し、他のユーザインタフェースの表示は、以前と同じ深度にとどまり、第1のユーザインタフェースの表示が拡大して進行することにより覆われるようになる)(756)、接触強度を減少させると、処理が反転する)。
一部の実施形態では、第1のユーザインタフェースはホーム画面(例えば、ユーザインタフェース510、図5A14)であり、第2のユーザインタフェースは第1のアプリケーションのユーザインタフェース(例えば、ユーザインタフェース512、図5A8)である(758)。一部の実施形態では、入力シーケンスの検出に応じて、(例えば、図5A9〜5A13に示すように)入力シーケンスが第1の基準を満たすとの判定に従って、デバイスは、第1のアプリケーションを終了し、又は保留する(760)。
一部の実施形態では、第1のユーザインタフェースはマルチページホーム画面の1次ページ(例えば、ユーザインタフェース510、図5B74)であり、第2のユーザインタフェースはマルチページホーム画面の2次ページ(例えば、ユーザインタフェース520、図5B72)である(762)。
一部の実施形態では、第1のユーザインタフェース(例えば、図5B72のユーザインタフェース520)はホーム画面(1つ以上のフォルダ項目を含む第1のフォルダに対応する第1のフォルダアイコンを含むホーム画面)であり、第2のユーザインタフェース(例えば、図5B70のユーザインタフェース522)は、1つ以上のフォルダ項目のより大きい(例えば、フルサイズ)表現を含む第1のフォルダの拡大ビュー(例えば、ホーム画面の非強調バージョン上に重ねられた、1つ以上のアプリケーション起動アイコンを含む拡大フォルダ)を含む(764)。
ここで図7Gを参照すると、一部の実施形態では、デバイスは、上述したように、1つ以上の触知出力生成器を含む(766)。一部の実施形態では、入力シーケンスの検出に応じて、入力シーケンスが第1の基準を満たすとの判定に従って、デバイスは、図5A11に示すように、1つ以上の触知出力生成器を使用して第1の触知出力を生成する(768)。一部の実施形態では、5A9〜5A10に示すように、第1の強度閾値は、プレクリック閾値(例えば、ヒント強度閾値ITH)であり、第1の強度閾値を上回る接触の特性強度の増大を検出すると、触知出力は生成されない。
一部の実施形態では、デバイスは、第1の強度閾値を上回る接触の特性強度の増大を検出すると、触知出力を生成する(770)。一部の実施形態では、第1の強度閾値を上回る接触の特性強度の増大を検出した際に生成される触知出力は、入力シーケンスが第1の基準を満たすとの判定に従って(例えば、振幅、持続時間、周波数、及び/又は波形において)生成される触知出力とは異なる。一部の実施形態では、第1の強度閾値を上回る接触の特性強度の増大を検出した際に生成される触知出力は、入力シーケンスが第1の基準を満たすとの判定に従って生成される触知出力と同じである。
一部の実施形態では、デバイスは、図5A9〜5A10に示すように、第1の強度閾値を上回る接触の特性強度の増大を検出したことに応じて、触知出力を生成することやめる(772)。
一部の実施形態では、入力シーケンスが、第2の強度閾値を上回る接触の特性強度の増大と、長い押圧基準(例えば、第2の強度閾値を上回る接触の特性強度の増大で開始する押圧入力の、図5A16のTLPなどの最小持続時間)の充足とを含むとの判定に従って、デバイスは、第2のユーザインタフェースから第1のユーザインタフェースへのアニメーション遷移を中断して、図5A15〜5A18に示されるように、長い押圧基準に関連する第3のユーザインタフェース(例えば、図5A18のユーザインタフェース515などの自動化されたアシスタントユーザインタフェース)へのアニメーション遷移(例えば、図5A17のユーザインタフェース514−1を含む)を表示する(774)。
例えば、接触の特性強度が第2の強度閾値を上回って増大した後、デバイスは、接触強度の減少を伴う第2のユーザインタフェースへ戻る遷移を、もはや逆行させない。代わりに、遷移は、第1のユーザインタフェースの再表示に向かって進行する。しかしながら、接触の特性強度が第2の強度閾値を上回って増大した後に、閾値時間量を超えて接触が維持される場合、デバイスは、第1のユーザインタフェースへ向かう遷移を中断し、第3のユーザインタフェース(例えば、図5A18のユーザインタフェース515などのデジタルアシスタントユーザインタフェース)を表示するようにリダイレクトする。方法900を参照して、以下追加の例を提供する。
入力の初期部分に応じて視覚フィードバックを表示し、入力がどのように継続しているかに基づいて、既に進行中のユーザインタフェース遷移の分岐及び/又は中断を可能にすることにより、ユーザインタフェースをより応答性よく、かつ効率的にする。例えば、デバイスは、そのタイプを決定するために入力が終了するまで待つ必要がないため、決定された入力タイプに対応する好適なユーザインタフェース遷移を開始する際の遅延を短縮又は排除できる。改良された視覚フィードバックをユーザに提供することは、(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)デバイスの操作性を高め、ユーザ−デバイスインタフェースを更に効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによってデバイスの電力使用を削減し、バッテリ寿命を改善する。
一部の実施形態では、入力シーケンスが、第2の強度閾値を上回る接触の特性強度の増大と、マルチクリック基準(例えば、第1のアップクリックから第2のアップクリック、第1のダウンクリックから第2のアップクリック、若しくは第1のアップクリックから第2のダウンクリックまで、又は、ホームボタン上の接触の特性強度の増大及びそれに続く減少に対応する2つの連続するクリック入力の、第1のダウンクリックから第2のダウンクリックまで、の任意選択的に測定される繰り返しクリック間の最小持続時間)の充足を含むとの判定に従って、デバイスは、(例えば、方法900を参照して以下により詳細に説明されるように)第2のユーザインタフェースから第1のユーザインタフェースへのアニメーション遷移を中断して、マルチクリック基準に関連する第4のユーザインタフェース(例えば、マルチタスクユーザインタフェース)へのアニメーション遷移を表示する(776)。1つの非限定的な例として、接触の特性強度が第2の強度閾値(例えば、図5B6)を上回って増大した後、デバイスは、接触強度の減少とともに第2のユーザインタフェースへ戻る遷移を、もはや逆行させない。代わりに、遷移は、(例えば、図5B7〜5B10に示すように)第1のユーザインタフェースの再表示に向かって進行する。しかしながら、(例えば、図5B10に示すように)接触による第2の押圧入力が閾値時間量内に検出された場合、ダブルクリック入力が登録され、デバイスは、(例えば、図5B11〜5B13に示すように)第1のユーザインタフェースの再表示を中断し、第4のユーザインタフェース(例えば、図5B14のユーザインタフェース528などのマルチタスキングユーザインタフェース)の表示に遷移する。
図7A〜7Gにおける動作について記載された特定の順序は単なる例示であり、記載された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法900、1100、1300、1500、1700、及び1900)に関して本明細書に記載される他のプロセスの詳細はまた、図7A〜図7Gに関して上記した方法700にも、類似の様式で適用可能であることに留意されたい。例えば、方法700に関連して上述した接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションは、任意選択で、本明細書に記載の他の方法(例えば、方法900、1100、1300、1500、1700、及び1900)に関連して本明細書に記載の接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションのうちの1つ以上の特性を有する。簡潔にするために、それらの詳細はここでは繰り返さない。
一部の実施形態によれば、図8は、説明される様々な実施形態の原理に従って構成された電子デバイス800の機能ブロック図を示す。このデバイスの機能ブロックは、説明される様々な実施形態の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。図8で説明される機能ブロックが、説明される様々な実施形態の原理を実施するように、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図8に示すように、電子デバイス800は、情報を表示するように構成されたディスプレイユニット801(例えば、(タッチスクリーン及びタッチスクリーンディスプレイとも呼ばれる)タッチ感知ディスプレイシステム112、図1A)、タッチスクリーンディスプレイ上の接触、ジェスチャ、及び他のユーザ入力を受信するように構成された、タッチ感知面ユニット804(例えば、ディスプレイコントローラ156及びタッチ感知ディスプレイシステム112、図1A)、タッチ感知面ユニット及び/又はデバイスのそれぞれのボタン(例えば、ホームボタン)との接触の強度を検出するように構成された1つ以上のセンサユニット806、任意選択で触知出力を生成するための1つ以上の触知出力生成ユニット807、並びにディスプレイユニット802、タッチ感知面ユニット804、1つ以上のセンサユニット806、及び任意選択的に1つ以上の触知出力生成ユニット807に結合された処理ユニット808、を含む。例示を容易にするため、図8は電子デバイス800と一体化されたディスプレイユニット802及びタッチ感知面ユニット804を示すが、一部の実施形態では、(例えば、図3を参照して示され説明されているように)これらのユニットが電子デバイスから物理的に分離しているが、これらのユニットの一方又は両方は電子デバイスと通信している。一部の実施形態では、処理ユニットは、表示部(例えば、表示ユニット810)、入力検出ユニット(例えば入力検出ユニット812)、特性強度検出ユニット(例えば、特性強度検出ユニット814)、判定ユニット(例えば判定ユニット816)、及び触知出力生成ユニット(例えば、触知出力生成ユニット818)を含む。
一部の実施形態では、処理ユニット(又は、ユニット810〜818などの1つ以上のその構成要素)は、ディスプレイ上に第1のユーザインタフェース(例えば、表示ユニット810)を表示し、第1のユーザインタフェースを表示している間に、(入力検出ユニット812を用いて)第1のユーザインタフェースに指示された入力を検出し、第1のユーザインタフェースに指示された入力の検出に応じて、(例えば、表示ユニット810を用いて)第1のユーザインタフェースの表示を停止し、(例えば、表示ユニット810を用いて)第1のユーザインタフェースとは別個の第2のユーザインタフェースを表示し、第2のユーザインタフェースを表示している間に、ホームボタン上の接触を検出し、ホームボタン上の接触を連続的に検出している間に、(例えば、入力検出ユニット812を用いて)第1の強度閾値を上回る接触の特性強度の増大を検出し、第1の強度閾値に対する接触の特性強度の増大を検出したことに応じて、(例えば、表示ユニット810を用いて)第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示し、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示している間に、(例えば、入力検出ユニット812を用いて)第1の強度閾値を上回る接触の特性強度の増大を含む押圧入力の検出を含む入力シーケンスを検出し、入力シーケンスの検出に応じて、入力シーケンスが第1の基準であって、押圧入力の終了が検出される前に、接触の特性強度が第2の強度閾値を上回って増大することを要求する、第1の基準、を満たすとの判定に従って、(例えば、表示ユニット810を用いた)第2のユーザインタフェースの表示を停止し、(例えば、表示ユニット810を用いて)ディスプレイ上に第1のユーザインタフェースを再表示し、入力シーケンスが第2の基準であって、押圧入力の終了が検出される前に、接触の特性強度が第2の強度閾値を下回ったままであることを要求する第2の基準、を満たすとの判定に従って、(例えば、表示ユニット810を用いて)第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を逆行させ、(例えば、表示ユニット810を用いて)第2のユーザインタフェースをディスプレイ上に再表示する、ように構成されている。
一部の実施形態では、第2のユーザインタフェースの表示を停止し、第1のユーザインタフェースを再表示することは、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始の継続を表示することを含む。
一部の実施形態において、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースの少なくとも一部分を第1のユーザインタフェースの少なくとも一部分と同時に表示することを含む。
一部の実施形態では、第1のユーザインタフェースは、電子デバイス上の異なるアプリケーションに対応する複数のアプリケーション起動アイコンを含むホーム画面である。
一部の実施形態では、第1のユーザインタフェース及び第2のユーザインタフェースは、連続的に表示されるアプリケーションのユーザインタフェースである。
一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースのサイズを縮小することを含む。
一部の実施形態では、処理ユニットは、第2のユーザインタフェースのサイズを縮小しながら、(例えば、表示ユニット810を用いて)第1のユーザインタフェースを第2のユーザインタフェースの後方から明らかにするように構成されている。
一部の実施形態では、第2のユーザインタフェースは第1のアプリケーションのユーザインタフェースであり、第1のアプリケーションは第1のユーザインタフェースにおける第1のアプリケーション起動アイコンに対応し、第2のユーザインタフェースのサイズを縮小することは第1のユーザインタフェース上の第1のアプリケーション起動アイコンの位置に向かって第2のユーザインタフェースを収縮することを含む。
一部の実施形態では、第2のユーザインタフェースは拡大フォルダを含み、拡大フォルダは第1のユーザインタフェースにおける第1のフォルダアイコンに対応し、第2のユーザインタフェースのサイズを縮小することは第1のユーザインタフェース上の第1のフォルダアイコンの位置に向かって拡大フォルダを収縮することを含む。
一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースを第1の方向へ横にシフトさせることを含む。
一部の実施形態では、処理ユニットは、第2のユーザインタフェースを第1の方向へ横にシフトさせながら、(例えば、表示ユニット810を用いて)第1のユーザインタフェースを明らかにするように構成されている。
一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースをフェーディングすることを含む。
一部の実施形態では、処理ユニットは、第2のユーザインタフェースをフェードアウトしながら、(例えば、表示ユニット810を用いて)第2のユーザインタフェースを覆うように第1のユーザインタフェースを第1の方向へ横にシフトさせるように構成されている。
一部の実施形態では、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第1のユーザインタフェース及び第2のユーザインタフェースのうちの少なくとも1つの仮想深度を変更することを含む。
一部の実施形態では、第2のユーザインタフェースは、第1のユーザインタフェースの表現を含み、第2のユーザインタフェースから第1のユーザインタフェースへ戻る遷移の開始を表示することは、第2のユーザインタフェースに含まれる第1のユーザインタフェースの表現を拡大すること、及び第1のユーザインタフェースの表現の仮想深度を減少させることを含む。
一部の実施形態では、入力シーケンスを検出することは、入力シーケンスが第1の基準を満たすまで、接触の特性強度が第1の強度閾値と第2の強度閾値との間で変化することを検出することを更に含み、処理ユニットは、第1の基準を入力シーケンスが満たすまで、(例えば、特性強度検出ユニット814を用いて)接触の特性強度が第1の強度閾値と第2の強度閾値との間で変化するのを検出したことに応じて、接触の特性強度に従って、(例えば、表示ユニット810を用いて)第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させる、ように構成されている。
一部の実施形態では、接触の特性強度に従って第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第1のユーザインタフェースに適用されるぼかし半径を動的に変更することを含む。
一部の実施形態では、接触の特性強度に従って第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第1のユーザインタフェースの少なくとも一部分を動的に明らかにすることを含む。
一部の実施形態では、接触の特性強度に応じて第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び反転させることは、接触の特性強度に応じてディスプレイ上の第2のユーザインタフェースの位置を動的にシフトさせることを含み、接触の特性強度に従って第2のユーザインタフェースの位置を動的にシフトさせながら、第1のユーザインタフェースの対応量を明らかにする。
一部の実施形態では、接触の特性強度に従って、第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第2のユーザインタフェースの不透明度を動的に変更することを含む。
一部の実施形態では、第2のユーザインタフェースは第1のユーザインタフェースの一部分の拡大バージョンを含み、接触の特性強度に従って第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第2のユーザインタフェースのサイズを動的に変更することを含む。
一部の実施形態では、第2のユーザインタフェースは第1のユーザインタフェースの表現を含み、接触の特性強度に従って第2のユーザインタフェースから第1のユーザインタフェースへの遷移を動的に進行及び逆行させることは、接触の特性強度に従って、第1のユーザインタフェースの表現の仮想深度を動的に変更することを含む。
一部の実施形態では、第1のユーザインタフェースはホーム画面であり、第2のユーザインタフェースは第1のアプリケーションのユーザインタフェースであり、処理ユニットは、入力シーケンスの検出に応じて、入力シーケンスが第1の基準を満たすと判定されたことに従って、第1のアプリケーションを終了し、又は保留するように構成されている。
一部の実施形態では、第1のユーザインタフェースは、マルチページホーム画面の1次ページであり、第2のユーザインタフェースは、マルチページホーム画面の2次ページである。
一部の実施形態では、第1のユーザインタフェースはホーム画面であり、ホーム画面は、1つ以上のフォルダ項目を含む第1のフォルダに対応する第1のフォルダアイコンを含み、第2のユーザインタフェースは、1つ以上のフォルダ項目のより大きな表現を含む第1のフォルダの拡大ビューを含む。
一部の実施形態では、デバイスは、1つ以上の触知出力生成器を含み、処理ユニットは、入力シーケンスを検出したことに応じて、入力シーケンスが第1の基準を満たすとの判定に従って、(例えば、触知出力生成ユニット818を用いて)第1の触知出力を生成するように構成されている。
一部の実施形態では、処理ユニットは、第1の強度閾値を上回る接触の特性強度の増大を検出すると、(例えば、触知出力生成ユニット818を用いて)触知出力を生成するように構成されている。
一部の実施形態では、処理ユニットは、第1の強度閾値を上回る接触の特性強度の増大を検出したことに応じて、触知出力を生成することやめるように構成されている。
一部の実施形態では、処理ユニットは、入力シーケンスが、(例えば、特性強度検出ユニット814を用いた)第2の強度閾値を上回る接触の特性強度の増大と、長い押圧基準の充足とを含むという判定に従って、第2のユーザインタフェースから第1のユーザインタフェースへのアニメーション遷移を中断して、(例えば、表示ユニット810を用いて)長い押圧基準に関連する第3のユーザインタフェースへのアニメーション遷移を表示するように構成されている。
一部の実施形態では、処理ユニットは、入力シーケンスが、第2の強度閾値を上回る接触の特性強度の増大と、マルチクリック基準の充足とを含むという判定に従って、第2のユーザインタフェースから第1のユーザインタフェースへのアニメーション遷移を中断して、マルチクリック基準に関連する第4のユーザインタフェースへのアニメーション遷移を表示するように構成されている。
上記説明された情報処理方法での動作は任意選択で、汎用プロセッサ(例えば、図1A及び図3に関連して上記説明されたようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図7A〜7Gを参照して上述された動作は、図1A〜1B、又は図8に示す構成要素によって、任意選択的に実施される。例えば、表示動作702、検出動作704、応答動作706、検出動作708、検出動作710、及び応答動作712は任意選択で、イベントソート部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に記される構成要素に基づいてどのように実装されるかは明らかであろう。
図9A〜9Dは、一部の実施形態に係る、デバイスのホームボタン上の複数のタイプの入力に応じて視覚フィードバック及び触知出力を提供するための方法900を示すフロー図である。方法900は、ディスプレイ、タッチ感知面、並びにタッチ感知面との接触強度を検出するための1つ以上のセンサ、及び/又はデバイスのそれぞれのボタン(例えば、仮想又は物理ホームボタン)、を有する電子デバイス(例えば、デバイス300、図3、又はポータブル多機能デバイス100、図1A)において実行される。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。一部の実施形態では、ディスプレイはタッチ感知面から分離している。一部の実施形態では、方法900は、非一時的コンピュータ可読記憶媒体(例えば、非揮発性コンピュータ可読記憶媒体)に記憶され、デバイス100の1つ以上のプロセッサ122(図1A)などの電子デバイスの1つ以上のプロセッサによって実行される命令によって統制される。説明を簡単にするために、以下に、デバイス100により実行されるものとして方法900を説明する。方法900の一部の動作が任意選択で組み合わされ、及び/又は一部の動作の順序が任意選択で変更される。
方法900は、入力の初期部分に応じて、第1のユーザインタフェースから第2のユーザインタフェースへのアニメーション遷移を開始することに関し、アニメーション遷移は、第3のユーザインタフェースに遷移するための基準が、入力の後続の部分によって満たされるかどうか、及びいつ満たされるかによって、第3のユーザインタフェースに向かって進行する異なるポイントにおいて中断される可能性がある。入力の入力タイプが完全に確認される前にアニメーション遷移を開始すると、ユーザインタフェースの応答性が向上する。割り込みのタイミングを、入力タイプが確認されるタイミングと一致させることにより、(例えば、デバイスがユーザの入力に対してより敏感に見えるようにすることによって)ユーザに提供される視覚フィードバックを改善し、(例えば、デバイスの操作/対話時に、ユーザが適切な入力を提供し、ユーザミスを減らすのを支援することによって)デバイスの操作性を向上することができる。更に、多くの場合、第2のユーザインタフェースへの遷移は中断することなく完了する(例えば、入力の後続部分が、第2のユーザインタフェースへの遷移要求と一致することとなる)。そのような場合、入力の初期部分が検出されるとすぐに第2のユーザインタフェースに向かってユーザインタフェースの遷移を開始することによって、ユーザが意図した結果が不必要な遅延なく達成される。このように、改良された視覚フィードバックは、ユーザの期待に適合し、(例えば、デバイスを操作/対話するときに好適な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザ−デバイスインタフェースを更に効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによって、デバイスの電力消費を削減し、バッテリ寿命を改善する。
一部の実施形態では、デバイスは1つ以上の触知出力生成器を含む。一部の実施形態では、デバイスは、デバイスのボタン(例えば、物理ホームボタン又は仮想ホームボタン、図5B1のボタン204、などの物理又は仮想ボタン)との接触の強度を検出するための1つ以上のセンサを含む。一部の実施形態では、ホームボタン上第1のタイプの入力を検出したことに応じて(例えば、機械式スイッチの押下を介して検出される押圧イベントを有する、又は押圧イベント及び解除イベントを有するシングルクリック入力、又は方法700、1300、1500及び1700を参照してより詳細に記載されるように、ホームボタン上の接触の強度を、1つ以上の強度閾値に基づくアクティブ化基準と比較することによって)、(例えば、それぞれの場所に永続的に表示されるか、又はディスプレイから離れたデバイス上の永続的な場所に配置される)ホームボタンは、現在表示されているユーザインタフェースを破棄するために、複数の異なるコンテキストにおいて、デバイス上で利用可能である(例えば、任意選択的に、デバイスのホーム画面、マルチタスクユーザインタフェース、又は仮想アシスタントユーザインタフェースなどのアプリケーション又はシステムユーザインタフェースの以前のビューなどの、以前に表示されたユーザインタフェースを再表示する)。ホームボタンアクティブ化のための触覚を構成する他の態様については、方法1100及び1900を参照してより詳細に説明する。
一部の実施形態では、ホームボタンは、第1のタイプの入力(例えば、シングルクリック(例えば、1つの押圧入力、又は解除イベントが続く1つの押圧入力)、第2のタイプの入力(例えば、ダブルクリック(例えば、第1の解除イベントが続き第2の押圧イベントが続く第1の押圧イベント、又は第1の解除イベントが続き第2の押圧イベントが続き更に第2の解除イベントが続く第1の押圧イベント、であり、第1及び第2の押圧イベントは互いの時間閾値量内で検出され、第3のタイプの入力(例えば、長い押圧(例えば、閾値時間量を超える時間が経過するまでリフトオフしない第1の押圧イベントを有する))、及び、第4のタイプの入力(例えば、深い押圧(例えば、接触の初期のタッチダウン後の閾値時間量内の深い押圧強度閾値を上回る接触強度の増大を含む第1の押圧イベントを有する))を含む複数のタイプの入力に応答する。一部の実施形態では、それぞれのタイプの入力は、現在表示されているユーザインタフェースの破棄に関連付けられ、対応する操作を実行し、任意選択的に、その操作に関連付けられた対応するユーザインタフェースを表示する。
図9Aに示すように、デバイスは、ディスプレイ上に第1のユーザインタフェース(例えば、図5B5のユーザインタフェース524などの、第1のアプリケーションのユーザインタフェース)を表示する(920)。第1のユーザインタフェースを表示している間に、デバイスは、第1の入力であって、第2のユーザインタフェースを表示する要求、及び第3のユーザインタフェースを表示する要求と一致する、第1の入力(例えば、図5B6の接触532−aによる第1の押圧入力などの、ホームボタン上の第1の接触による第1の押圧入力)を検出する(904)。一部の実施形態では、押圧入力は、所定のアップクリック強度閾値(例えば、図5B8に示す、浅い押圧解除強度閾値ITLR)を下回る接触の特性強度の減少が後に続く、又は第2のユーザインタフェースへ遷移する要求(例えば、図5B3のユーザインタフェース522などの、ホーム画面に遷移するための、若しくはホーム画面上に重ねられた拡大フォルダへ遷移するためのシングルクリック入力)、及び第3のユーザインタフェースへ遷移する要求(例えば、図5B14のユーザインタフェース528などの、マルチタスクユーザインタフェースへ遷移するためのダブルクリック入力)と一致する接触のリフトオフが後に続く、浅い押圧強度閾値ITLを上回る接触の特性強度の増大(例えば、図5B6に示す)、として定義される。
第1の入力を検出したことに応じて、デバイスは、第1のユーザインタフェース(例えば、図5B5のユーザインタフェース524などの、第1のアプリケーションのユーザインタフェース)から第2のユーザインタフェース(例えば、ホーム画面、又は図5B3のユーザインタフェース522などの、ホーム画面上に重ねられた拡大フォルダ)への第1のアニメーション遷移の表示を開始する(906)。一部の実施形態では、第1のアニメーションは、(図5B50〜5B54に示すように)第1の入力のアップクリック部分(例えば、アップクリック強度閾値を上回る強度からアップクリック強度閾値を下回る強度までの接触強度の減少)の検出に応じて表示され始める。一部の実施形態では、(例えば、図5A8〜5A11、5B6、5B17、5B28、及び5B40に示すように)ヒント強度閾値ITHを上回る接触の強度の増大を検出したことに応じて、第1のアニメーションが表示され始める。
第1のアニメーション遷移が表示されている(例えば、図5B10のユーザインタフェース525−5など、第1のアニメーション遷移の開始と終了との間の中間状態がディスプレイ上に現在表示されているように、第1のアニメーション遷移は開始されているが、まだ完了していない)間に、デバイスは、第2の入力(例えば、図5B10の接触532−eによる第2の押圧入力)(例えば、第1の接触のリフトオフが検出された後の、同じ連続接触か第2の接触のどちらかによる第2の押圧入力)を検出する(908)。
第2の入力を検出したことに応じて、デバイスは、第2の入力が第3のユーザインタフェースを表示する要求と一致し、かつ、第2の入力が第1の時間に受信されたかどうかを判定する。第2の入力が第3のユーザインタフェースを表示する要求と一致し、かつ、第2の入力が第1の時間に受信された(例えば、ダブルクリック入力を検出するための閾値時間量が経過する前に、第2のクリック入力が第1の時間に検出された)との判定に従って、デバイスは、第1のアニメーション遷移中の第1のポイント(例えば、第1の時間に対応する、第1のアニメーション遷移中の第1のポイント)で、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、第1のアニメーション遷移中の第1のポイントから第3のユーザインタフェースへの第2のアニメーション遷移を表示する(例えば、第1のアニメーション遷移は、第1のアニメーション遷移中の第1のポイントでのダブルクリック入力の第2のクリックの検出によって中断される)(910)。例えば、図5B10〜5B14に示すように、第2の入力(例えば、図5B10の接触532−eによる第2の押圧入力)は、ダブルクリック時間閾値TDCの前の第1の時間に検出され、第1のユーザインタフェース(例えば、図5B5のユーザインタフェース524)から第2のユーザインタフェース(例えば、図5B3のユーザインタフェース522)への第1のアニメーション遷移は、第1のアニメーション遷移中の第1のポイント(例えば、図5B10のユーザインタフェース525−5)で中断され、第1のアニメーション遷移中の第1のポイントから第3のユーザインタフェース(例えば、図5B14のユーザインタフェース528)への第2のアニメーション遷移(例えば、図5B11〜5B13のユーザインタフェース526−1、526−2、及び526−3を含む第2のアニメーション遷移)が表示される。
第2の入力が第3のユーザインタフェースを表示する要求と一致し、かつ、第2の入力が第1の時間の後の第2の時間に受信された(例えば、ダブルクリック入力を検出するための閾値時間量が経過する前に、第2のクリック入力が第2の時間に検出された)との判定に従って、デバイスは、第1のアニメーション遷移中の第1のポイント(例えば、第1の時間に対応する、第1のアニメーション遷移の第1のポイント)の後である、第1のアニメーション遷移中の第2のポイントで、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、第1のアニメーション遷移中の第2のポイントから第3のユーザインタフェースへの第3のアニメーション遷移を表示し、第3のアニメーション遷移は、第2のアニメーション遷移とは異なる(例えば、第1のアニメーション遷移は、第1のアニメーション遷移中の第2のポイントでのダブルクリック入力の第2のクリックの検出によって中断されるので、そこから第3のユーザインタフェースへの遷移が開始する)。例えば、図5B21〜5B25に示すように、第2の入力(例えば、図5B21の接触534−eによる第2の押圧入力)は、ダブルクリック時間閾値TDCの前だが第1の時間の後(例えば、図5B10)の、第2の時間に検出され、第1のユーザインタフェース(例えば、図5B5のユーザインタフェース524)から第2のユーザインタフェース(例えば、図5B3のユーザインタフェース522)への第1のアニメーション遷移は、第1のアニメーション遷移中の第1のポイント(例えば、図5B10のユーザインタフェース525−5において)の後の、第1のアニメーション遷移中の第2のポイント(例えば、図5B21のユーザインタフェース525−6において)で中断され、第1のアニメーション遷移中の第2のポイントから第3のユーザインタフェース(例えば、図5B25のユーザインタフェース528)への第3のアニメーション遷移(例えば、図5B22〜5B24のユーザインタフェース527−1、527−2、及び527−3を含む第3のアニメーション遷移)が表示される。
ここで図9Bを参照すると、一部の実施形態では、第2の入力の検出に応じて、第2の入力が第1の基準を満たし(例えば、長い押圧入力が検出された後に第2の入力が検出されないことを要求する第1の基準(例えば、第1のクリックイベントが登録された後で、第2のクリックイベントが登録される前には、接触が閾値時間を超えて維持されない)、かつ、第2の入力が、第2の時間の後である第3の時間に受信された(例えば、ダブルクリック入力を検出するための閾値時間量の経過後に検出されたクリック、又はダブルクリックを検出するための閾値時間よりも前だが、第1のアニメーション遷移TIを中断するための閾値時間量の後に検出されたクリック)との判定に従って、デバイスは、第1のアニメーション遷移を表示し続ける(例えば、ホーム画面は、第1のアニメーション遷移の終了時に表示される)(912)。図5B27〜5B38及び図5B39〜5B48では、例えば、第1のアニメーション遷移が完了まで表示され、第2のユーザインタフェース(例えば、ユーザインタフェース522)が(例えば、それぞれ図5B35、及び5B47の)遷移の終わりに表示される。例えば、入力が、第2のユーザインタフェース(例えば、図5B39〜5B48)に行く要求であるシングルクリックであると判明した場合、第1のユーザインタフェースから第2のユーザインタフェースへのアニメーション遷移は、第1のユーザインタフェースから第2のユーザインタフェースへのアニメーション化遷移を開始する前に、第2のクリックを検出することなく、ダブルクリック時間閾値が経過するまでデバイスが待機した場合よりも早く完了する。その結果、ユーザインタフェースは、より応答性があり効率的であり、ユーザはより迅速かつ効率的にデバイスを使用することができる。
一部の実施形態では、第1の時間及び第2の時間は、第1の入力を含むダブルクリック入力(例えば、図5B5〜5B14、図5B16〜5B25、及び図5B27〜5B38)を検出するための閾値時間の前に生じる(914)。一部の実施形態では、第3の時間は、第1の入力を含むダブルクリック入力(例えば、図5B39〜5B48)を検出するための閾値時間の後に生じる(916)。
一部の実施形態では、第2の入力は、(例えば、図5B39〜5B48に示すように)第1の入力の繰り返しである(918)。
一部の実施形態では、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移は、第1の方向(例えば、下向き又は上向き)における第1のユーザインタフェースの移動を含み、第2のアニメーション遷移は、第1の方向とは別個の(例えば、第1の方向に垂直)第2の方向(例えば、下向き又は上向き)における第1のユーザインタフェースの移動を含む(920)。例えば、一部の実施形態では、第1のアニメーション遷移の間、第1のアプリケーションのユーザインタフェースは、ディスプレイの下部に向かって下方に(又は、図5B6〜5B10に示すようにディスプレイの上部に向かって上方に)移動し、第2の入力を検出すると、第1のアプリケーションのユーザインタフェースは、(例えば、図5B11〜5B14に示すように)ディスプレイの上に(又は下に)移動し、及びディスプレイの側に移動する。一部の実施形態では、ユーザインタフェースは、ダブルクリック入力のそれぞれのクリックに応答し、ユーザは、入力した押圧入力毎に視覚フィードバックを受け取る。ユーザインタフェースは、流動的であり、ユーザの入力に動的に適応する。この改善された視覚フィードバックは、ユーザの部分上に、デバイスと対話する方法を変えるようないかなる変更も要求することなく、より良い制御感覚をユーザに与える。これにより、デバイスの操作性を高め、ユーザ−デバイスインタフェースを更に効率的にし(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによってデバイスの電力消費を削減し、バッテリ寿命を改善する。
一部の実施形態では、第2の入力を検出したことに応じて、第2の入力が、第1、第2、及び第3のユーザインタフェースとは別個の第4のユーザインタフェース(例えば、(ジタルアシスタントユーザインタフェース)を表示する要求と一致する(例えば、第1の入力(例えば、第1のクリック)が検出された後で、いかなる第2のクリックが検出される前の閾値時間に対して、長いクリックが登録されるように接触が維持される)との判定に従って、デバイスは、第1のアニメーション遷移中の第1及び第2のポイントとは別個の、第1のアニメーション化された遷移中の第3のポイント(例えば、第3のポイントは、第1の入力(例えば、第1のクリック)の検出後の、第1の閾値時間量(例えば、長い押圧時間閾値)である第3の時間に対応する)で、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、第1のアニメーション遷移中の第3のポイントから第4のユーザインタフェースへの第4のアニメーション遷移を表示し、ここで、第4のアニメーション遷移は、第1、第2及び第3のアニメーション遷移とは異なる(922)。例えば、第1のクリックが検出された後、(例えば、図5A15〜5A18に示すように)ホーム画面への第1のアニメーション遷移が開始され、第2のクリックを登録するために強度を増大させることなく閾値時間量だけ接触が維持される場合、長い押圧入力が登録され、第1のアニメーション遷移が中断され、第4のユーザインタフェースへの第4のアニメーション遷移がそこから開始される。一部の実施形態では、長い押圧を検出するためのタイマは、押圧入力のダウンクリックが検出されると(例えば、図5A15に示すように)開始する。一部の実施形態では、ダブルクリックを検出するためのタイマは、押圧入力のアップクリックが検出されると開始する。
一部の実施形態では、押圧入力のダウンクリックが検出されると、第2のユーザインタフェース(例えば、ユーザインタフェース522、図5B3などの、ホーム画面又はホーム画面上に重ねられた拡大フォルダ)に向かってアニメーション遷移が開始する。一部の実施形態では、押圧入力のアップクリックが検出されると、(例えば、図5B50〜5B59に示すように)第2のユーザインタフェース(例えば、ユーザインタフェース522、図5B3などの、ホーム画面又はホーム画面上に重ねられた拡大フォルダ)に向かってアニメーション遷移が開始する。実施形態では、押圧入力のアップクリックを検出すると、第2のユーザインタフェース(例えば、ホーム画面、又は図5B3のユーザインタフェース522などのホーム画面上に重ねられた拡大フォルダ)に向かうアニメーション遷移が開始され、ダウンクリックを検出すると、長いクリックを検出するためのタイマが開始される場合に、長いクリックかシングルクリックかのどちらが検出されたかについてユーザが混乱する可能性が低減される。一部の実施形態では、いったんアップクリックが検出され、第2のユーザインタフェースへのアニメーション遷移が開始すると、第2のユーザインタフェースへのアニメーション遷移は、このような実施形態では、第4のユーザインタフェース(例えば、デジタルアシスタントユーザインタフェース)に向かうアニメーションによって中断されない。
一部の実施形態では、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移は、第1の方向における第1のユーザインタフェースの移動を含み、第4のアニメーション遷移は、第1の方向とは反対の第2の方向(例えば、上向き)における第1のユーザインタフェースの移動を含み、第3のアニメーション遷移は、第1及び第2の方向(例えば、左向き及び右向き)と直交する第3の方向(例えば、下向き)にある(924)。
図9Cを参照して、一部の実施形態では、第2の入力を検出したことに応じて、第2の入力が第5のユーザインタフェースに遷移する要求と一致する(例えば、ユーザインタフェースに遷移するための深い押圧入力)(例えば、第2の入力は、接触の特性強度が最初に減少することなく、第1の入力後の第1の閾値よりも高い第2の閾値を上回る接触の特性強度の継続的な増大を含む)との判定に従って、デバイスは、第1のアニメーション遷移の第4のポイントにおいて、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション化遷移を中断し(例えば、第4のポイントは、特性強度が第2の強度閾値を上回って増大する時間に対応する)、第1のアニメーション遷移中の第4のポイントから第5のユーザインタフェースへの第5のアニメーション遷移を表示し、第5のアニメーション遷移は、第1、第2及び第3(及び第4)のアニメーション遷移とは異なる(926)。一部の実施形態では、入力の初期部分が検出され、入力の初期部分が複数の入力タイプと一致し、それによって複数の異なる最終ユーザインタフェース(例えば、第1の最終ユーザインタフェース、第2の最終ユーザインタフェース、第3の最終ユーザインタフェース、第4の最終ユーザインタフェースなど)をもたらし得る複数の異なる動作に対応する場合、デバイスは、第1の最終ユーザインタフェースに向かってアニメーション遷移を開始し、第1の最終ユーザインタフェースへのアニメーション遷移が進行中である間に、入力の後続部分が、入力が第1の最終ユーザインタフェースに行く要求である可能性を排除する場合、デバイスは、現在のアニメーション遷移を第2の最終ユーザインタフェースに向けてリダイレクトし、第2の最終ユーザインタフェースへのアニメーション遷移が進行中である間に、入力の後続部分が、入力が第2の最終ユーザインタフェースに行く要求である可能性を排除する場合、デバイスは、現在のアニメーション遷移を第3の最終ユーザインタフェースに向けてリダイレクトする。一部の実施形態では、異なる入力タイプを検出するためのタイミング及び基準に対する、入力タイプ及び動作間のマッチングに対する、及び最終ユーザインタフェースに対応するアニメーション遷移に対する、適切な設計により、ユーザインタフェースは非常に滑らかかつ効率的になり、デバイスの操作性及び効率の改善をもたらすことができる。
一部の実施形態では、第1のユーザインタフェースを表示している間に、第1の入力を検出する前に、デバイスは、第1の入力に対する前兆入力を検出し(例えば、接触のタッチダウン及びヒント強度閾値ITHを上回る接触の特性強度の増大を検出する)、前兆入力の検出に応じて、デバイスは、(例えば、図5A5〜5A6に示され、上記で方法700に関してより詳細に説明したように)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移の開始を含むヒントアニメーションを表示する(928)。
一部の実施形態では、第1のユーザインタフェースは、第1のアプリケーションのユーザインタフェース(例えば、図5B5のユーザインタフェース524)であり、デバイスは、第2のユーザインタフェース上の第1のアプリケーション起動アイコンの場所に従って(例えば、図5B3のユーザインタフェース522上のPagesアイコンの場所に従って)、第1のアニメーション遷移(及び/又は第2のアニメーション遷移、及び/又は第3のアニメーション遷移)を生成する(930)。一部の実施形態では、第2のユーザインタフェースは、第1のアプリケーションに対応する第1のアプリケーション起動アイコン(例えば、Pagesアプリケーションに対応するPagesアイコン)を含む複数のアプリケーション起動アイコンを含む、アプリケーション起動ユーザインタフェース(例えば、図5B3のユーザインタフェース522)である。例えば、一部の実施形態では、第1のアニメーション遷移は、図5B17〜5B21に示すように、第1のアプリケーションのユーザインタフェースが、ホーム画面上の第1のアプリケーションアイコン(又は、図5B3のユーザインタフェース522などの、ホーム画面上に重ねられた拡大フォルダ)に向かって収縮することを示す。
一部の実施形態では、第1の入力を検出することは、ホームボタン上の第1の接触による第1の押圧入力を検出することを含み、第1の押圧入力は、(例えば、図5B19に示すように)第2の強度閾値(例えば、第2の強度閾値は、押圧強度閾値と同じ、より大きい、又はより小さい解除強度閾値である)を下回る第1の接触の特性強度の減少が続く、(例えば、図5B17に示すように)第1の強度閾値(例えば、浅い押圧強度閾値ITL)を上回る第1の接触の特性強度の増大を含む(932)。
一部の実施形態では、デバイスは、第1の強度閾値を上回る第1の接触の特性強度の増大を検出したことに応じて、図5B17に示すように、第1の触知出力(例えば、利得1のミニタップ270Hz)を生成する(例えば、浅い押圧強度閾値ITLを上回る第1の接触の特性強度の増大を検出したことに応じて、ダウンクリック触知出力を生成する)(934)。
一部の実施形態では、デバイスは、第2の強度閾値を下回る第1の接触の特性強度の減少を検出したことに応じて、図5B19に示すように、第2の触知出力(例えば、利得0.5のミニタップ270Hz)を生成する(例えば、浅い解除強度閾値ITLRを下回る第1の接触の特性強度の減少を検出したことに応じて、アップクリック触知出力を生成する)(936)。一部の実施形態では、第2の触知出力は、(例えば、異なる振幅(例えば、より低い振幅)、持続時間(例えば、より短い持続時間)、周波数(例えば、より低い周波数)、及び/又は波形(例えば、より少ないサイクルの波形の)第1の触知出力とは異なる。一部の実施形態では、第2の触知出力は第1の触知出力の50%(例えば、振幅の50%)である。一部の実施形態では、第2の触知出力は第1の触知出力と同じである。一部の実施形態では、ダウンクリック及びアップクリックのための触知出力は同じであるが、対応する触知音声出力(例えば、振幅及び/又は周波数の異なる音声出力)が異なる。
図9Dを参照すると、一部の実施形態では、第2の入力を検出したことに応じて、第2の入力が第3のユーザインタフェースを表示する要求と一致し、かつ、第2の入力が第2の時間の後の第4の時間に受信された(例えば、ダブルクリック入力を検出するための閾値時間量が経過する前に、第4の時間に第2のクリック入力が検出された)との判定に従って、デバイスは、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移の表示を継続し、更にデバイスは、(例えば、図5B27〜5B38に示すように)第1のアニメーション遷移の終了から第3のユーザインタフェースへの第5のアニメーション遷移を表示する(938)。一部の実施形態では、第5のアニメーション遷移は、第2のアニメーション遷移及び第3のアニメーション遷移とは異なる。
例えば、第1のアニメーション遷移は、第1のアニメーション遷移の第2のポイントにおけるダブルクリック入力の第2のクリックの検出によっては中断されないので、第3のユーザインタフェースへの遷移は、(例えば、図5B35〜5B38に示すように)第1のアニメーション遷移の終了から開始する。一部の実施形態では、第1のユーザインタフェースから第2のユーザインタフェースへの遷移の実質的な部分が、ダブルクリック入力の第2のクリックが検出される時間までに既に完了している場合、第2のユーザインタフェースへの遷移を完了することがより自然であるため、第2のユーザインタフェースから第3のユーザインタフェースへ向かって遷移を開始する。このような設計の1つの利点は、第3の動画遷移の開始ポイントが安定したユーザインタフェースであり、ダブルクリックの第2のクリックが検出されたときの異なるタイミング毎にカスタマイズする必要がないことである。あるポイントの後ではなく早期の割り込み発生を許すような設計の別の利点は、ダブルクリックの2回目のクリックが検出されるかどうかを待つことなく、アニメーションをより早く開始することができ、それによってユーザインタフェースの応答性を改善し、ユーザの混乱やユーザの混乱に起因する偶発的な入力を減らすことができることである。一部の実施形態では、第2のユーザインタフェースから第3のユーザインタフェースへのあらかじめ準備されたアニメーションを使用して、ソフトウェアの設計を単純化し、デバイスのバッテリ寿命を向上させる。
一部の実施形態では、第2の入力を検出したことに応じて、(例えば、第2の入力が第3の時間の後の第4の時間に受信され、マルチクリック時間閾値を満たさないので)第2の入力が第3のユーザインタフェースを表示する要求と一致しないとの判定に従って、デバイスは、第3のユーザインタフェースへの遷移をやめる(例えば、マルチクリック時間閾値が経過した後に第2のクリック入力が検出された場合、そのクリックは別々のクリックとして扱われ、マルチクリック時間閾値を満たす複数の連続クリックに関連するマルチタスクユーザインタフェースは表示されない)(940)。例えば、第1の入力は、第2のユーザインタフェース(例えば、図5B3のユーザインタフェース522などの、ホーム画面上に重ねられた2次ホーム画面又は拡大フォルダ)に行く要求であるシングルクリックであることが判明し、第2の入力は、第2のユーザインタフェース(例えば、図5B3のユーザインタフェース522などの、ホーム画面上に重ねられた2次ホーム画面又は拡大フォルダ)から、第1のユーザインタフェース(例えば、アプリケーションUI)、第2のユーザインタフェース(例えば、図5B3のユーザインタフェース522などの、ホーム画面上に重ねられた2次ホーム画面又は拡大フォルダ)、第3のユーザインタフェース(例えば、マルチタスクユーザインタフェース)、及び第4のユーザインタフェース(例えば、デジタルアシスタントユーザインタフェース)とは別個の、第5のユーザインタフェース(例えば、図5B1のユーザインタフェース520などの、フォルダを有する1次ホーム画面又は2次ホーム画面)に行く要求であるシングルクリックであることが判明すると、第1のユーザインタフェースから第2のユーザインタフェースへのアニメーション遷移が完了し、次いで、第2のユーザインタフェースから第5のユーザインタフェースへアニメーション遷移が表示される。最後に、第5のユーザインタフェースが表示される。この実施形態の例を、図5B39〜5B48に示す。
図9A〜図9Dにおける動作について記載された特定の順序は単なる例示であり、記載された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で記載される動作の順序を変えるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法700、1100、1300、1500、1700、及び1900)に関して本明細書に記載される他のプロセスの詳細はまた、図9A〜図9Dに関して上記した方法900にも、類似の様式で適用可能であることに留意されたい。例えば、方法900に関連して上述した接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションは、任意選択で、本明細書に記載の他の方法(例えば、方法700、1100、1300、1500、1700、及び1900)に関連して本明細書に記載の接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションのうちの1つ以上の特性を有する。簡潔にするために、それらの詳細はここでは繰り返さない。
一部の実施形態によれば、図10は、説明される様々な実施形態の原理に従って構成された電子デバイス1000の機能ブロック図を示す。このデバイスの機能ブロックは、説明される様々な実施形態の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。図10で説明される機能ブロックが、説明される様々な実施形態の原理を実施するように、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図10に示すように、電子デバイス1000は、情報を表示するように構成されたディスプレイユニット1001(例えば、(タッチスクリーン及びタッチスクリーンディスプレイとも呼ばれる)タッチ感知ディスプレイシステム112、図1A)、タッチスクリーンディスプレイ上の接触、ジェスチャ、及び他のユーザ入力を受信するように構成された、タッチ感知面ユニット1004(例えば、ディスプレイコントローラ156及びタッチ感知ディスプレイシステム112、図1A)、任意選択でタッチ感知面ユニット及び/又はデバイスのそれぞれのボタン(例えば、ホームボタン)との接触の強度を検出するように構成された1つ以上のセンサユニット1006、任意選択で触知出力を生成するための1つ以上の触知出力生成ユニット1007、並びにディスプレイユニット1002、タッチ感知面ユニット1004、任意選択的に1つ以上のセンサユニット1006、及び任意選択的に1つ以上の触知出力生成ユニット1007に結合された処理ユニット1008、を含む。例示を容易にするため、図10は電子デバイス1000と一体化されたディスプレイユニット1002及びタッチ感知面ユニット1004を示すが、一部の実施形態では、これらのユニットが電子デバイスから物理的に分離しているが、(例えば、図3を参照して示され説明されているように)これらのユニットの一方又は両方は電子デバイスと通信している。一部の実施形態では、処理ユニットは、表示ユニット(例えば、表示ユニット1010)、入力検出ユニット(例えば入力検出ユニット1012)、判定ユニット(例えば判定ユニット1014)、触知出力提供ユニット(例えば、触知出力提供ユニット1016)、及び特性強度検出ユニット(例えば、特性強度検出ユニット1018)を含む。
一部の実施形態では、処理ユニット(又は、ユニット1010〜1018などの1つ以上のその構成要素)は、(例えば、表示ユニット1010を用いて)第1のユーザインタフェースを表示し、第1のユーザインタフェースを表示している間に、(例えば、入力検出ユニット1012を用いて)第1の入力であって、第2のユーザインタフェースを表示する要求及び第3のユーザインタフェースを表示する要求に一致する、第1の入力を検出し、第1の入力を検出したことに応じて、(例えば、表示ユニット1010を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移の表示を開始し、第1のアニメーション遷移が表示されている間に、(例えば、入力検出ユニット1012を用いて)第2の入力を検出し、第2の入力が検出されたことに応じて、第2の入力が第3のユーザインタフェースを表示する要求と一致し、かつ、第1の時間において第2の入力を受信したとの判定に従って、)第1のアニメーション遷移中の第1のポイントにおいて、(例えば、表示ユニット1010を用いて第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、(例えば、表示ユニット1010を用いて)第1のアニメーション遷移中の第1のポイントから第3のユーザインタフェースへの第2のアニメーション遷移を表示し、第2の入力が第3のユーザインタフェースを表示する要求と一致し、かつ、第1の時間より後の第2の時間において第2の入力を受信したとの判定に従って、第1のアニメーション遷移中の第1のポイントより後の、第1のアニメーション遷移中の第2のポイントにおいて、(例えば、表示ユニット1010を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、(例えば、表示ユニット1010を用いて)第1のアニメーション遷移中の第2のポイントから第3のユーザインタフェースへの、第2のアニメーション遷移とは異なる第3のアニメーション遷移を表示する、ように構成されている。
一部の実施形態では、処理ユニットは、第2の入力を検出したことに応じて、第2の入力が第1の基準を満たし、かつ、第2の入力が第2の時間後の第3の時間に受信されたとの判定に従って、(例えば、表示ユニット1010を用いて)第1のアニメーション遷移の表示を継続する、ように構成されている。
一部の実施形態では、第1の時間及び第2の時間は、第1の入力を含むダブルクリック入力を検出するための閾値時間の前に発生する。
一部の実施形態では、第3の時間は、第1の入力を含むダブルクリック入力を検出するための閾値時間の後に発生する。
一部の実施形態では、第2のジェスチャは、第1のジェスチャの繰り返しである。
一部の実施形態では、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移は、第1の方向における第1のユーザインタフェースの移動を含み、第2のアニメーション遷移は、第1の方向とは別個の第2の方向における第1のユーザインタフェースの移動を含む。
一部の実施形態では、処理ユニットは、第2の入力を検出したことに応じて、第2の入力が、第1、第2、及び第3のユーザインタフェースとは異なる第4のユーザインタフェースを表示する要求と一致するとの判定に従って、第1のアニメーション遷移中の第1及び第2のポイントとは異なる、第1のアニメーション遷移中の第3のポイントにおいて、(例えば、表示ユニット1010を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、(例えば、表示ユニット1010を用いて)第1のアニメーション遷移中の第3のポイントから第4のユーザインタフェースへの第4のアニメーション遷移を表示するように構成されており、第4のアニメーション遷移は、第1、第2、及び第3のアニメーション遷移とは異なる。
一部の実施形態では、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移は、第1の方向における第1のユーザインタフェースの移動を含み、第4のアニメーション遷移は、第1の方向とは反対の第2の方向における第1のユーザインタフェースの移動を含み、第3のアニメーション遷移は、第1及び第2の方向と直交する第3の方向にある。
一部の実施形態では、処理ユニットは、第2の入力を検出したことに応じて、第2の入力が、第5のユーザインタフェースを表示する要求と一致するとの判定に従って、(例えば、表示ユニット1010を用いて)第1のアニメーション遷移中の第4のポイントにおいて、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、(例えば、表示ユニット1010を用いて)第1のアニメーション遷移中の第4のポイントから第5のユーザインタフェースへの第5のアニメーション遷移を表示するように構成されており、第5のアニメーション遷移は、第1、第2、及び第3のアニメーション遷移とは異なる。
一部の実施形態では、処理ユニットは、第1の入力を検出する前に、第1のユーザインタフェースを表示している間に、(例えば、入力検出ユニット1012を用いて)第1の入力に対する前兆入力を検出し、前兆入力の検出に応じて、(例えば、表示ユニット1010を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移の開始を含む、ヒントアニメーションを表示するように構成されている。
一部の実施形態では、第1のユーザインタフェースは第1のアプリケーションのユーザインタフェースであり、処理ユニットは、第2のユーザインタフェース上の第1のアプリケーション起動アイコンの場所に従って、第1のアニメーション遷移を生成するように構成されている。
一部の実施形態では、第1の入力を検出することは、ホームボタン上の第1の接触による第1の押圧入力を検出することを含み、第1の押圧入力は、第1の強度閾値を上回る第1の接触の特性強度の増大と、それに続く第2の強度閾値を下回る第1の接触の特性強度の減少とを含む。
一部の実施形態では、処理ユニットは、第1の強度閾値を上回る第1の接触の特性強度の増大を検出したことに応じて、(例えば、触知出力生成ユニット1016を用いて)第1の触知出力を生成するように構成されている。
一部の実施形態では、処理ユニットは、第2の強度閾値を下回る第1の接触の特性強度の減少を検出したことに応じて、(例えば、触知出力生成ユニット1016を用いて)第2の触知出力を生成するように構成されている。
一部の実施形態では、処理ユニットは、第2の入力を検出したことに応じて、第2の入力が、第3のユーザインタフェースを表示する要求と一致し、かつ、第2の入力が第2の時間よりも後の第4の時間に受信されたとの判定に従って、(例えば、表示ユニット1010を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移の表示を継続し、(例えば、表示ユニット1010を用いて)第1のアニメーション遷移の終了から第3のユーザインタフェースへの第5のアニメーション遷移を表示するように構成されており、第5のアニメーション遷移は、第2のアニメーション遷移、及び第3のアニメーション遷移とは異なる。
一部の実施形態では、処理ユニットは、第2の入力が検出されたことに応じて、第2の入力が第3のユーザインタフェースを表示する要求と一致しないと判定されたことに従って、第3のユーザインタフェースへの遷移を見合わせるように構成されている。
上記説明された情報処理方法での動作は任意選択で、汎用プロセッサ(例えば、図1A及び図3に関連して上記説明されたようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図9A〜9Dを参照して上述された動作は、図1A〜1B、又は図10に示される構成要素によって、任意選択的に実施される。例えば、表示動作902、検出動作904、応答動作906、検出動作908、及び応答動作910は任意選択で、イベントソート部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に記される構成要素に基づいてどのように実装されるかは明らかであろう。
図11A〜図11Eは、一部の実施形態に係る、ホームボタン構成の方法1100を示すフロー図である。方法1100は、ディスプレイ、タッチ感知面、並びにタッチ感知面との接触強度を検出するための1つ以上のセンサ、及び/又はデバイスのそれぞれのボタン(例えば、仮想又は物理ホームボタン)、を有する電子デバイス(例えば、デバイス300、図3、又はポータブル多機能デバイス100、図1A)において実行される。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。一部の実施形態では、ディスプレイはタッチ感知面から分離している。一部の実施形態では、デバイスは、デバイスのホームボタン(例えば、物理ホームボタン又は仮想ホームボタン)とのコンタクトの強度を検出するための1つ以上のセンサを含む。一部の実施形態では、方法1100は、非一時的コンピュータ可読記憶媒体(例えば、非揮発性コンピュータ可読記憶媒体)に記憶され、デバイス100の1つ以上のプロセッサ122(図1A)などの電子デバイスの1つ以上のプロセッサによって実行される命令によって統制される。説明を簡単にするために、以下に、デバイス100により実行されるものとして方法1100を説明する。方法1100の一部の動作が任意選択で組み合わされ、及び/又は一部の動作の順序が任意選択で変更される。
方法1100は、ユーザが、デバイス上のホームボタンに対する触知出力設定を選択する前に、ホームボタンに対する複数の触知出力設定を選択して試行する間の、ホームボタン構成処理に関する。ホームボタン構成プロセス中に、ホームボタンの通常の機能が停止され、ホームボタン上で検出された押圧入力に応じて、ホームボタンに対する現在選択された触知出力設定に対応する触知出力が生成されている間に、ホームボタンの通常機能が保留される。最も好ましい設定にする前に、ユーザがホームボタン構成ユーザインタフェース内のボタン押圧に対する異なる触知出力設定を試みることを可能にすることにより、ホームボタンは、ユーザの特定の好み、及びボタン押圧がどう感じられるべきかの期待により良く適合することができる。ホームボタンユーザインタフェースにより、(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザ−デバイスインタフェースを更に効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによってデバイスの電力消費を削減し、バッテリ寿命を改善する。
一部の実施形態では、デバイスは、デバイスのホームボタン(例えば、物理ホームボタン又は仮想ホームボタン)との接触の強度を検出するための1つ以上のセンサを含む。一部の実施形態では、電子デバイスは、タッチ感知面との接触の強度を検出するための1つ以上のセンサを含む。一部の実施形態では、ディスプレイはタッチ感知式ディスプレイである。
図11Aを参照すると、デバイスは、ディスプレイ上に、ホームボタンに対する複数の異なる触知出力設定を表示することを含む、ホームボタン構成ユーザインタフェース(例えば、図5C8のユーザインタフェース564)を表示し(例えば、ミニタップ230Hzのなどの第1の触知出力パターン、ミニタップ270Hzなどの第2の触知出力パターン、及びミニタップ300Hzなどの第3の触知出力パターン)、ホームボタン上第1のタイプの入力を検出したことに応じて(機械式スイッチの押下を介して検出される押圧入力又は押圧若しくは解除入力、又は方法700、900、1300、1500及び1700を参照してより詳細に記載されるように、ホームボタン上の接触の強度を、1つ以上の強度閾値に基づくアクティブ化基準と比較することによって)、ホームボタン(例えば、それぞれの場所に永続的に表示されるか、又はディスプレイから離れたデバイス上の永続的な場所に配置される)は、現在表示されているユーザインタフェースを破棄するために、複数の異なるコンテキストにおいて、デバイス上で利用可能である(例えば、任意選択的に、デバイスのホーム画面、マルチタスクユーザインタフェース、又は仮想アシスタントユーザインタフェースなどのアプリケーション又はシステムユーザインタフェースの以前のビューなどの、以前に表示されたユーザインタフェースを再表示する)(1102)。ホームボタンアクティブ化のための触覚を構成する他の態様については、方法1900を参照してより詳細に説明する。
デバイスは、(図5C13に示すように)ホームボタン構成ユーザインタフェースを表示している間に、複数の異なる触知出力設定のホームボタンのそれぞれの触知出力設定の選択を検出する(1104)。デバイスは、(図5C15に示すように)ホームボタンに対するそれぞれの触知出力設定が選択されている間に、ホームボタン上の第1のタイプの第1入力を検出する(1105)。
ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、デバイスは、それぞれの触知出力設定がホームボタンに対する第1又は第2の触知出力設定のいずれであるかを判定する。それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、デバイスは、図5C15に示すように、ホームボタン構成ユーザインタフェースを破棄することなく(例えば、ホーム画面の表示をやめて)、1つ以上の触知出力生成器を介して、ホームボタンに対する第1の触知出力設定(例えば、図4Lに示す、ミニタップ230Hzなどの第1の触知出力パターン)に対応する第1の触知出力を提供する(1106)。それぞれの触知出力設定がホームボタンに対する第1の触知出力設定とは異なる第2の触知出力設定であるとの判定に従って、デバイスは、図5C9に示すように、ホームボタン構成ユーザインタフェースを破棄することなく(例えば、ホーム画面の表示をやめて)、1つ以上の触知出力生成器を介して、ホームボタンに対する第2の触知出力設定に対応する第2の触知出力(第1の触知出力とは別個の(例えば、図4Nに示す、ミニタップ270Hzなどの第2の触知出力パターン))を提供する(1106)。一部の実施形態では、ホームボタン構成ユーザインタフェースが表示されると、現在表示されている画面の表示をホーム画面の表示に置き換えるなど、ホームボタンがアクティブ化されたときに(例えば、タッチ入力によって)正常に発生する動作を抑制する。
ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、デバイスはまた、それぞれの触知出力設定が(第1及び第2の触知出力設定とは異なる)第3の触知出力設定であるか否かを判定する。それぞれの触知出力設定がホームボタンに対する第1の触知出力設定及び第2の触知出力設定とは異なる第3の触知出力設定であるとの判定に従って、デバイスは、図5C12に示すように、ホームボタン構成ユーザインタフェースを破棄することなく(例えば、ホーム画面の表示をやめて)、1つ以上の触知出力生成器を介して、ホームボタンに対する第3の触知出力設定に対応する第3の触知出力(第1の触知出力及び第2の触知出力とは別個の(例えば、図4Pに示す、ミニタップ300Hzなどの第3の触知出力パターン))を提供する(1108)。一部の実施形態では、ホームボタン構成ユーザインタフェースが表示されると、現在表示されている画面の表示をホーム画面の表示に置き換えるなど、ホームボタンがアクティブ化されたときに(例えば、タッチ入力によって)正常に発生する動作を抑制する。
ここで図11Bを参照すると、一部の実施形態では、ホームボタンのそれぞれの触知出力設定の選択を検出したことに応じて、デバイスは、ホームボタン上に第1のタイプの入力を提供するようにユーザに要求するプロンプトを提示する(例えば、「試してみる」などのテキスト表示とともに、ホームボタンを押すようにプロンプトを表示する)(1110)。例えば、図5C14では、ユーザインタフェース568は、プロンプト「ホームボタンを押して試してください」を含む。
一部の実施形態では、第1の触知出力及び第2の触知出力は、(例えば、第1及び第2の触知出力の両方ともミニタップであるが、異なる周波数を有する(例えば、それぞれ図4L及び図4Nに示すように、230Hz及び270Hz))異なる周波数及び同じ波形を有する(1112)。
一部の実施形態では、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、デバイスは、(例えば、図5C15及び4Lに示すように)第1の触知出力と同時に第1の音声出力を提供する(1114)。それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であると判定されたことに応じて、デバイスは、(例えば、図5C9及び4Nに示すように)第2の触知出力と同時に第2の音声出力を提供する(1114)。一部の実施形態では、第2の音声出力は、(例えば、図4N及び4Lに示すように)第1の音声出力とは別個であり、第2の触知出力は第1の触知出力とは異なる。一部の実施形態では、特定の触知出力は、対応する音声出力と対にされ、異なるコンテキストにおいて触知出力が生成されると、同じ対応する音声出力が(例えば、図4Kに示す)触知出力に生成される。
一部の実施形態では、ホームボタンに対する第1の触知出力設定に対応する第1の触知出力を提供することは、第1のタイプの第1の入力の第1の部分(例えば、図5C18及び図4Lの上部に示す、ダウンクリック強度閾値(例えば、ITL)を上回る接触の特性強度の増大に対応するダウンクリック)を検出したことに応じて、第1の触知出力(例えば、利得1のミニタップ230Hzなどの、第1の触知出力パターンを有する触知出力)を提供することを含み(1118)、デバイスは、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、1つ以上の触知出力生成器を介して、第1のタイプの第1の入力の第2の部分を検出したことに応じて、第1の付加触知出力(例えば、アップクリック強度閾値(例えば、ITL又はITLよりも低い強度における別の閾値強度値(例えば、ITLR))を下回る接触の特性強度の減少に対応するアップクリック)(例えば、図4Lの下部に示すように、利得0.5のミニタップ230Hzなどの触知出力パターンを有する付加触知出力)を提供する。一部の実施形態では、第1の触知出力及び第1の付加触知出力は、異なる振幅及び同じ波形を有する(例えば、ダウンクリックのための触覚出力はアップクリックのための触覚出力よりも強いが、両方ともミニタップである)。一部の実施形態では、第1の付加触知出力(例えば、図4Lの下部に示すアップクリックに対する)触覚)は、触知利得の50%及び第1の触知出力(例えば、図4Lの上部に示すダウンクリックに対する触覚)の音声利得の50%である。
一部の実施形態では、デバイスは、第1のタイプの第1の入力の第1の部分を検出したことに応じて、第1の触知出力と同時に第1の音声出力を提供し(1118)、デバイスは、(例えば、図4Lに示すように)第1のタイプの第1の入力の第2の部分を検出したことに応じて、第1の付加触知出力と同時に第1の付加音声出力を提供する(1118)。一部の実施形態では、第1の音声出力及び第1の付加触知出力は、異なる周波数及び同じ波形を有する。一部の実施形態では、第1の付加音声出力の第1の音声出力の振幅は第1の量だけ異なり、第1の触知出力と第1の付加触知出力の振幅は第1の量とは別個の第2の量だけ異なる(1120)。例えば、一部の実施形態では、クリック入力のアップクリックに対する付加触知出力の振幅が、クリック入力のダウンクリックに対する触知出力の振幅の90%である場合、クリック入力のアップクリックに対する付加音声出力の振幅は、クリック入力のダウンクリックに対する音声出力の振幅の80%である。
ここで図11Cを参照すると、一部の実施形態では、ホームボタンに対する第2の触知出力設定に対応する第2の触知出力を提供することは、第1のタイプの第1の入力の第1の部分(例えば、図5C9及び図4Nの上部に示す、ダウンクリック強度閾値(例えば、ITL)を上回る接触の特性強度の増大に対応するダウンクリック)を検出したことに応じて、第2の触知出力(例えば、利得1のミニタップ270Hzなどの、第2の触知出力パターンを有する触知出力)を提供することを含む。一部の実施形態において、デバイスは、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるとの判定に従って、1つ以上の触知出力生成器を介して、第1のタイプの第1の入力(例えば、アップクリック強度閾値(例えば、ITL又はITLよりも低い強度における別の閾値強度値(例えば、ITLR))を下回る接触の特性強度の減少に対応するアップクリック)の第2の部分を検出したことに応じて、第2の付加触知出力(例えば、図4Nの下部に示すように、利得0.5のミニタップ270Hzなどの触知出力パターンを有する触知出力)を提供する(1122)。一部の実施形態では、第2の触知出力及び第2の付加触知出力は、異なる振幅及び同じ波形を有する(例えば、ダウンクリックのための触知出力はアップクリックのための触知出力よりも強いが、両方ともミニタップである)。一部の実施形態では、第2の付加触知出力(例えば、図4Nの下部に示すアップクリックに対する触覚)は、触知利得の50%及び第2の触知出力(例えば、図4Nの上部に示すダウンクリックに対する触覚)の音声利得の50%である。
一部の実施形態では、ホームボタンのそれぞれの触知出力設定の選択を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、デバイスは、ホームボタンに向かう第1の触知出力設定の表現の移動を含む第1のアニメーション表示を表示し(1124)、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるという判定に従って、デバイスは、ホームボタンに向かう第2の触知出力設定の表現の移動を含む第2のアニメーション表示を表示する(1124)。
一部の実施形態では、第1の触知出力設定の表現及び第2の触知出力設定の表現は、ホームボタンと同じ形状を有する(例えば、触知出力設定及びホームボタンの表現は共に円形である)(1126)。一部の実施形態では、触知出力設定の表現は、(例えば、図5C8に示す)ホームボタンにポイントする先端を含む。
一部の実施形態では、第1のアニメーション表示は、第1の触知出力設定に関連する第1の触知出力特性(例えば、第1の振幅、周波数、波形、サイクル数、及び/又は上記のうちの2つ以上の組み合わせ)のアニメーション表現を含み、第2のアニメーション表示は、第2の触知出力設定に関連する第2の触知出力特性(例えば、第2の振幅、周波数、波形、サイクル数、及び/又は上記うちの2つ以上の組み合わせ)のアニメーション表現を含む(1128)。
ここで、図11Dを参照すると、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、デバイスは、(例えば、第1の触知出力設定の表現(例えば、第1の触知出力設定を表すボタン形状のアイコン)のちらつき又は色の変更を示す)ホームボタン構成ユーザインタフェースにおける第1の触知出力設定の表現の外観を変更し、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるとの判定に従って、デバイスは、(例えば、第2の触知出力設定の表現(例えば、第2の触知出力設定を表すボタン形状のアイコン)のちらつき又は色の変更を示す)ホームボタン構成ユーザインタフェースにおける第2の触知出力設定の表現の外観を変更する(1130)(1130)。
一部の実施形態では、デバイスは、ホームボタン構成ユーザインタフェースを表示している間に、起動されるとホームボタン構成ユーザインタフェース(例えば、図5C16のユーザインタフェース568)を破棄させる第1のアフォーダンス(例えば、図5C16の「完了」アイコン)を表示し、ホームボタン構成ユーザインタフェース(例えば、図5C17のユーザインタフェース562)の代わりに別のユーザインタフェース(例えば、ホームボタン構成ユーザインタフェースを表示する前に表示されたユーザインタフェース)を表示させる(1132)。
一部の実施形態では、ホームボタン構成ユーザインタフェース及び第1アフォーダンスを表示している間に、デバイスは、(例えば、図5C16に示すように)第1のアフォーダンスのアクティブ化を検出する(1134)。第1のアフォーダンスのアクティブ化を検出したことに応じて、デバイスは、ホームボタン構成ユーザインタフェースの表示を停止し(1134)、(例えば、図5C17に示す)ホームボタン構成ユーザインタフェースとは別個のそれぞれのユーザインタフェースを表示する(デバイス設定ユーザインタフェースなどのホームボタン構成ユーザインタフェースを表示する直前に表示された第1のユーザインタフェースを再表示する、又はデバイスセットアップユーザインタフェースシーケンス内に次のユーザインタフェースを表示する)(1134)。それぞれのユーザインタフェースを表示している間に、デバイスは、(例えば、図5C18に示すように)ホームボタン上の第1のタイプの第2の入力を検出し(1134)、ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、デバイスは、それぞれのユーザインタフェース(例えば、デバイス設定ユーザインタフェース、又はデバイスセットアップユーザインタフェースシーケンスの次のユーザインタフェース)の表示を停止する(1134)。それぞれのユーザインタフェースとは別個の第3のユーザインタフェース(例えば、図5C19のユーザインタフェース510などのホーム画面)を表示し、アフォーダンスがアクティブ化された時間に選択されたホームボタンに対するそれぞれの触知出力設定に対応するそれぞれの触知出力を、1つ以上の触知出力生成器を介して提供する(1134)(例えば、(例えば、図5C18に示すように)第1の触知出力設定が選択された場合には第1の触知出力(及び任意選択的に、第1の付加触知覚出力)を提供し、第2の触知出力設定が選択された場合には第2の触知出力(及び任意選択的に、第2の付加触知覚出力)を提供し、第3の触知出力設定が選択された場合には第3の触知出力(及び任意選択的に、第3の付加触知覚出力)を提供する)(1134)。
一部の実施形態では、ホームボタンに対するそれぞれの触知出力設定が選択されている間に、デバイスは、ホームボタン上の第2のタイプの第1の入力(例えば、第1のタイプはシングルクリック入力であり、第2のタイプはダブルクリック入力、強いクリック入力、又は長いクリック入力である)を検出し、第2のタイプは第1のタイプと別個である(1136)。ホームボタン上の第2のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、デバイスは、ホームボタン構成ユーザインタフェースを破棄することなく(ホーム画面の表示をやめる)、1つ以上の触知出力生成器を介して、ホームボタンに対する第1の触知出力設定に対応する第1の触知出力を提供し(1136)、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるとの判定に従って、デバイスは、ホームボタン構成ユーザインタフェースを破棄することなく、1つ以上の触知出力生成器を介して、ホームボタンに対する第2の触知出力設定に対応する第2の触知出力を提供する(1136)。
図11A〜11Eにおける動作について記載された特定の順序は単なる例示であり、記載された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法700、900、1300、1500、1700、及び1900)に関して本明細書に記載される他のプロセスの詳細はまた、図11A〜図11Gに関して上記した方法1100にも、類似の様式で適用可能であることに留意されたい。例えば、方法1100に関連して上述した接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションは、任意選択で、本明細書に記載の他の方法(例えば、方法700、900、1300、1500、1700、及び1900)に関連して本明細書に記載の接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションのうちの1つ以上の特性を有する。簡潔にするために、それらの詳細はここでは繰り返さない。
一部の実施形態によれば、図12は、説明される様々な実施形態の原理に従って構成された電子デバイス1200の機能ブロック図を示す。このデバイスの機能ブロックは、説明される様々な実施形態の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。図12で説明される機能ブロックが、説明される様々な実施形態の原理を実施するように、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図12に示すように、電子デバイス1200は、情報を表示するように構成されたディスプレイユニット1201(例えば、(タッチスクリーン及びタッチスクリーンディスプレイとも呼ばれる)タッチ感知ディスプレイシステム112、図1A)、タッチスクリーンディスプレイ上の接触、ジェスチャ、及び他のユーザ入力を受信するように構成された、タッチ感知面ユニット1204(例えば、ディスプレイコントローラ156及びタッチ感知ディスプレイシステム112、図1A)、任意選択で、タッチ感知面ユニット及び/又はデバイスのそれぞれのボタン(例えば、ホームボタン)との接触の強度を検出するように構成された1つ以上のセンサユニット1206、触知出力を生成するための1つ以上の触知出力生成ユニット1207、並びにディスプレイユニット1202、タッチ感知面ユニット1204、任意選択的に1つ以上のセンサユニット、及び1つ以上の触知出力生成ユニットに結合された処理ユニット1208、を含む。例示を容易にするため、図12は電子デバイス1200と一体化されたディスプレイユニット1202及びタッチ感知面ユニット1204を示すが、一部の実施形態では、これらのユニットが電子デバイスから物理的に分離しているが、これらのユニットの一方又は両方は。(例えば、図3を参照して示され説明されているように)電子デバイスと通信している。一部の実施形態では、処理ユニットは、表示ユニット(例えば、表示ユニット1210)、入力検出ユニット(例えば入力検出ユニット1212)、触知出力提供ユニット(例えば、触知出力提供ユニット1214)、及び音声出力提供ユニット(例えば、音声出力提供ユニット1216)を含む。
一部の実施形態では、処理ユニット(又は、ユニット1210〜1216などの1つ以上のその構成要素)は、(例えば、表示ユニット1210を用いて)ホームボタンに対する複数の異なる触知出力設定を表示することを含む、ホームボタン構成ユーザインタフェースをディスプレイ上に表示し、ホームボタンは、ホームボタン上の第1のタイプの入力を検出したことに応じて、現在表示されているユーザインタフェースを破棄するために、複数の異なるコンテキストにおいてデバイス上で使用可能であり、ホームボタン構成ユーザインタフェースを表示している間に、(例えば、入力検出ユニット1212を用いて)複数の異なる触知出力設定のホームボタンのそれぞれの触知出力設定の選択を検出し、ホームボタンに対するそれぞれの触知出力設定が選択されている間に、(例えば、入力検出ユニット1212を用いて)ホームボタン上の第1のタイプの第1入力を検出し、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、(例えば、触知出力提供ユニット1214を用いて)ホームボタン構成ユーザインタフェースを破棄することなく、1つ以上の触知出力生成器を介して、ホームボタンに対する第1の触知出力設定に対応する第1の触知出力を提供し、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定とは異なる第2の触知出力設定であるとの判定に従って、ホームボタン構成ユーザインタフェースを破棄することなく、(例えば、触知出力提供ユニット1214を用いて)1つ以上の触知出力生成器を介して、ホームボタンに対する第2の触知出力設定に対応する第2の触知出力を提供する、ように構成されている。
一部の実施形態では、処理ユニットは、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する、第1の触知出力設定及び第2の触知出力設定とは異なる第3の触知出力設定であるとの判定に従って、ホームボタン構成ユーザインタフェースを破棄することなく、(例えば、触知出力提供ユニット1214を用いて)1つ以上の触知出力生成器を介して、ホームボタンに対する第3の触知出力設定に対応する第3の触知出力を提供するように構成されている。
一部の実施形態では、処理ユニットは、ホームボタンのそれぞれの触知出力設定の選択を検出したことに応じて、(例えば、表示ユニット1210を用いて)ホームボタン上の第1のタイプの入力を提供するようにユーザに要求するプロンプトを提示するように構成されている。
一部の実施形態では、第1の触知出力及び第2の触知出力は、異なる周波数及び同じ波形を有する。
一部の実施形態では、処理ユニットは、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、(例えば、音声出力提供ユニット1216を用いて)それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、第1の触知出力と同時に第1の音声出力を提供し、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるとの判定に従って、(例えば、音声出力提供ユニット1216を用いて)第2の触知出力と同時に第2の音声出力を提供する、ように構成されている。
一部の実施形態では、ホームボタンに対する第1の触知出力設定に対応する第1の触知出力を提供することは、第1のタイプの第1の入力の第1の部分の検出に応じて第1の触知出力を提供することを含み、処理ユニットは、ホームボタン上の第1タイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、(例えば、触知出力提供ユニット1214を用いて)第1のタイプの第1の入力の第2の部分を検出したことに応じて、1つ以上の触知出力生成器を介して、第1の付加触知出力を提供する、ように構成されている。
一部の実施形態では、処理ユニットは、第1のタイプの第1の入力の第1の部分が検出されたことに応じて、(例えば、音声出力提供ユニット1216を用いて)第1の触知出力と同時に第1の音声出力を提供し、第1のタイプの第1の入力の第2の部分を検出したことに応じて、(例えば、音声出力提供ユニット1216を用いて)第1の付加触知出力と同時に第1の付加音声出力を提供する、ように構成されている。
一部の実施形態では、第1の音声出力及び第1の付加音声出力の振幅は、第1の量だけ異なり、第1の触知出力及び第1の付加触知出力の振幅は、第1の量とは別個の第2の量だけ異なる。
一部の実施形態では、ホームボタンに対する第2の触知出力設定に対応する第2の触知出力を提供することは、第1のタイプの第1の入力の第1の部分の検出に応じて第2の触知出力を提供することを含み、処理ユニットは、ホームボタン上の第1タイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるとの判定に従って、1つ以上の触知出力生成器を介して、(例えば、触知出力提供ユニット1214を用いて)第1のタイプの第1の入力の第2の部分を検出したことに応じて、第2の付加触知出力を提供するように構成されている。
一部の実施形態では、処理ユニットは、ホームボタンのそれぞれの触知出力設定の選択を検出したことに応じて、(例えば、表示ユニット1210を用いて)それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、ホームボタンに向かう第1の触知出力設定の表現の移動を含む第1のアニメーション表示を表示し、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるという判定に従って、(例えば、表示ユニット1210を用いて)ホームボタンに向かう第2の触知出力設定の表現の移動を含む第2のアニメーション表示を表示するように構成されている。
一部の実施形態では、第1の触知出力設定の表現及び第2の触知出力設定の表現は、ホームボタンと同じ形状を有する。
一部の実施形態では、第1のアニメーション表示は、第1の触知出力設定に関連する第1の触知出力特性のアニメーション表現を含み、第2のアニメーション表示は、第2の触知出力設定に関連する第2の触知出力特性のアニメーション表現を含む。
一部の実施形態では、処理ユニットは、ホームボタン上の第1のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、(例えば、表示ユニット1210を用いて)ホームボタン構成ユーザインタフェースにおける第1の触知出力設定の表現の外観を変更し、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるという判定に従って、(例えば、表示ユニット1210を用いて)ホームボタン構成ユーザインタフェースにおける第2の触知出力設定の表現の外観を変更する、ように構成されている。
一部の実施形態では、処理ユニットは、ホームボタン構成ユーザインタフェースを表示している間に、(例えば、表示ユニット1210を用いて)アクティブ化されると、ホームボタン構成ユーザインタフェースを破棄させ、ホームボタン構成ユーザインタフェースの代わりに別のユーザインタフェースを表示させる、第1のアフォーダンスを表示するように構成されている。
一部の実施形態では、処理ユニットは、ホームボタン構成ユーザインタフェース及び第1のアフォーダンスを表示している間に、第1のアフォーダンスのアクティブ化を検出し、第1のアフォーダンスのアクティブ化を検出したことに応じて、(例えば、表示ユニット1210を用いた)ホームボタン構成ユーザインタフェースの表示を停止し、(ディスプレイ表示ユニット1210を用いて)ホームボタン構成ユーザインタフェースとは別個のそれぞれのユーザインタフェースを表示し、それぞれのユーザインタフェースを表示している間に、(例えば、入力検出ユニット1212を用いて)ホームボタン上の第1のタイプの第2の入力を検出し、ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、(例えば、表示ユニット1210を用いた)それぞれのユーザインタフェースの表示を停止し、(例えば、表示ユニット1210を用いて)それぞれのユーザインタフェースとは別個の第3のユーザインタフェースを表示し、(触知出力提供ユニット1214を用いて)1つ以上の触知出力生成器を介して、アフォーダンスがアクティブ化された時間に選択された、ホームボタンに対するそれぞれの触知出力設定に対応するそれぞれの触知出力を提供する、ように構成されている。
一部の実施形態では、処理ユニットは、ホームボタンに対するそれぞれの触知出力設定が選択されている間に、ホームボタン上の、第1のタイプとは異なる第2のタイプの第1の入力を検出し、ホームボタン上の第2のタイプの第1の入力を検出したことに応じて、それぞれの触知出力設定がホームボタンに対する第1の触知出力設定であるとの判定に従って、ホームボタン構成ユーザインタフェースを破棄することなく、(例えば、触知出力提供ユニット1214を用いて)1つ以上の触知出力生成器を介して、ホームボタンに対する第1の触知出力設定に対応する第1の触知出力を提供し、それぞれの触知出力設定がホームボタンに対する第2の触知出力設定であるとの判定に従って、ホームボタン構成ユーザインタフェースを破棄することなく、1つ以上の触知出力生成器を介して、(例えば、触知出力提供ユニット1214を用いて)ホームボタンに対する第2の触知出力設定に対応する第2の触知出力を提供する、ように構成されている。
上記説明された情報処理方法での動作は任意選択で、汎用プロセッサ(例えば、図1A及び図3に関連して上記説明されたようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図11A〜11Eを参照して上述された動作は、図1A〜1B、又は図12に示す構成要素によって、任意選択的に実施される。例えば、表示動作1102、検出動作1104、検出動作1105、及び応答動作1106は、イベントソータ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に記される構成要素に基づいてどのように実装されるかは明らかであろう。
図13A〜図13Dは、一部の実施形態に係る、ユーザインタフェース触覚及びホームボタン触覚を制御する方法1300を示すフロー図である。方法1300は、ディスプレイ、タッチ感知面、及びタッチ感知面との接触の強度を検出するための1つ以上のセンサを備える電子デバイス(例えば、デバイス300、図3、又はポータブル多機能デバイス100、図1A)において実行される。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。一部の実施形態では、ディスプレイはタッチ感知面から分離している。一部の実施形態では、デバイスは、デバイスのホームボタン(例えば、物理ホームボタン又は仮想ホームボタン)との接触の強度を検出するための1つ以上のセンサを含む。一部の実施形態では、方法1300は、非一時的コンピュータ可読記憶媒体(例えば、非揮発性コンピュータ可読記憶媒体)に記憶され、デバイス100の1つ以上のプロセッサ122(図1A)などの電子デバイスの1つ以上のプロセッサによって実行される命令によって統制される。説明を簡単にするために、以下に、デバイス100により実行されるものとして方法1300を説明する。方法1300の一部の動作が任意選択で組み合わされ、及び/又は一部の動作の順序が任意選択で変更される。
以下で説明するように、方法1300は、デバイス上の永続的ボタン(例えば、仮想ホームボタン、又は非機械式ホーム若しくはバックボタン)をアクティブ化するための、ユーザインタフェースイベントに対する触覚フィードバック生成、及び触覚フィードバック生成を個別に制御することに関し、触覚フィードバック生成が、触知出力設定(例えば、触知出力生成のためのオン/オフトグル)を介して、デバイス上のユーザインタフェースイベントに対して無効化されていても、永続的なボタンのアクティブ化に対する触覚フィードバック生成は有効化されたままである。このような別個の制御を可能にすることにより、ユーザが単にユーザインタフェース触覚フィードバックをオフしたい場合に、永続的ボタンのアクティブ化のために触覚フィードバックがユーザによって不用意に無効化されることがなくなるので、ユーザの混乱を回避し、ユーザの混乱によるデバイスのヒューマンマシンインタフェースの操作性及び効率の低下が回避できる。更に、この別個の制御により、永続的ボタンのアクティブ化に関連する有用な触覚フィードバックを損なう恐れなしに(ユーザインタフェースの視覚的変化を伴う可能性がないとは限らない)、バッテリ電力を節約する目的で一般的なユーザインタフェースの触覚フィードバックを自由に無効化することができ、特定の状況において不必要な触覚フィードバックによる混乱を軽減することができる。
一部の実施形態では、デバイスは、ユーザがデバイスにおけるユーザインタフェース触知出力生成をオン及びオフすることを可能にする触知出力制御設定(例えば、音及び触覚設定)を提供する。
一般に、デバイスは、ユーザインタフェース要素との直接的な相互作用、例えば、ユーザ入力が検出されたときに、ユーザインタフェース要素に近接して配置されるフォーカスセレクタ(例えば、マウスポインタ又は接触)を介したユーザインタフェース要素の選択、操作、ドラッグ/ドロップ、及び/又はアクティブ化、に応じて、様々なタイプのユーザインタフェース触知出力を生成する。ユーザインタフェース触知出力は、一般に、ユーザインタフェースにおける視覚的変化を伴う。例えば、一部の実施形態では、デバイスは、ユーザインタフェース内のアイテムをピックアップする入力(例えば、アイテムに対応する場所での接触の持続による長い押圧入力)に応じて、触知出力(例えば、マイクロタップ(150Hz))を提供し、ユーザインタフェースは、ディスプレイの表面に向かって飛び出す物体を示し、触知出力は、オブジェクトの移動の終わりと一致するようにタイミングがとられる。ユーザインタフェース触知出力に加えて、デバイスはまた、デバイス上の永続的ボタン(例えば、仮想ホームボタン又は非機械式ホーム若しくはバックボタン)のアクティブ化に応じて出力を生成する。ボタンのアクティブ化は、ユーザインタフェースの対応する視覚的変化を伴うことがあるし、伴わないこともある。例えば、ホームボタン上の押圧入力に応じて、デバイスは、触知出力を生成し、現在表示されているユーザインタフェースを破棄し、ホーム画面を表示する。ホームボタン上の別の押圧入力に応じて、ボタン押圧のための触知出力が生成されるが、ホーム画面の表示は継続される。したがって、一部のコンテキストでは、ユーザに、ユーザインタフェース触知出力をオフにする、例えば、電力を節約する、又は不信感を低減することを可能にする。しかし、ユーザがユーザインタフェース触知出力をオフしたいだけである場合には、ユーザが誤って永続的ボタンに対して触知出力生成をオフしてしまうことを防止する。
一部の実施形態では、デバイスは、音声出力構成要素及び触知出力構成要素の両方を含む非視覚フィードバックを提供する。あるタイプの音声出力は、ユーザインタフェースにおける視覚的変化と対になるか、又はユーザインタフェースにおける視覚的変化とは独立して存在する。例えば、音声警報、着信音、音楽クリップは、触知出力に依存せずに再生され、ユーザインタフェースの一部の変化又はデバイスの状態をユーザに警告するように機能することができる。一部の実施形態では、デバイスは、触知出力に特に結び付けられ、触知出力を強化又は補足する特定の音声出力を生成する。これらのタイプの音声出力は、ここでは「触覚音声出力」と呼ばれる。一部の実施形態では、非視覚フィードバックプロファイルは、触知出力のための触知出力パターン、及び触知出力に付随してユーザのある触覚感覚を呼び出すための触覚音声出力のための音声出力パターンを含む。触覚音声出力の周波数、振幅、波形、及び/又はタイミングと、対応する触知出力との間の相互作用は、ユーザにより豊かで微妙な触覚感覚を生成し、非視覚フィードバックをユーザにより顕著に感じさせる。一部の状況では、デバイスは、ユーザが、一般的なボリューム制御及び/又はミュート制御を使用して、触覚音声出力(例えば、ユーザインタフェース触知出力に対応する触覚音声出力、及び/又はホームボタン触知出力に対応する触覚音声出力)の生成を制御することができ、例えば電力を節約し、又は不信感を軽減する。しかし、デバイスはまた、デバイス触知出力に対する触覚音声(例えば、永続的ボタンのアクティブ化のために触知出力に付随する音声)を、ユーザが誤ってオフすることを防止する。
図13Aを参照して、デバイスは、ディスプレイ上に第1のユーザインタフェースを表示する(1302)。一部の実施形態では、第1のユーザインタフェースの表示が維持されている間、第1のユーザインタフェースに対する、及びデバイスのホームボタンに対する入力の検出は有効化されたままである。一部の実施形態では、ホームボタン上第1のタイプの入力を検出したことに応じて(機械式スイッチの押下を介して検出される押圧入力又は押圧若しくは解除入力、又は方法700、900、1500及び1700を参照して上記でより詳細に説明したように、ホームボタン上の接触の強度を、1つ以上の強度閾値に基づくアクティブ化基準と比較することによって)、(例えば、それぞれの場所に永続的に表示されるか、又はディスプレイから離れたデバイス上の永続的な場所に配置される)ホームボタンは、現在表示されているユーザインタフェースを破棄するために、複数の異なるコンテキストにおいて、デバイス上で利用可能である(例えば、任意選択的に、デバイスのホーム画面、マルチタスクユーザインタフェース、又は仮想アシスタントユーザインタフェースなどのアプリケーション又はシステムユーザインタフェースの以前のビューなどの、以前に表示されたユーザインタフェースを再表示する)。ホームボタンアクティブ化のための触覚を構成する他の態様については、方法1100及び1900を参照してより詳細に説明する。
第1のユーザインタフェースを表示している間に、デバイスは、第1のユーザインタフェースに指示された第1のタイプの第1の入力(例えば、アクティブ化可能オブジェクト、又は第1のユーザインタフェース内のアクティブ化可能部分に対応する、タッチ感知ディスプレイ上の場所における接触による押圧入力)を検出する(1304)。
第1のユーザインタフェースに指示された第1のタイプの第1の入力(例えば、解除入力が後に続く押圧入力を含む押圧入力)を検出したことに応じて、デバイスは、(例えば、図6A1及び図6B1の触知出力トグル制御設定675に基づいて)ユーザインタフェース触知出力が電子デバイスにおいて有効化されているかどうかを判定する。ユーザインタフェース触知出力が電子デバイスにおいて有効化されている(例えば、図6A1に示すように、電子デバイスに対する触覚トグル設定又は触知出力トグル設定がオンである)との判定に従って、デバイスは、第1の動作を実行し、1つ以上の触知出力生成器を介して、第1の動作に対応する第1の触知出力を提供する(1306)。例えば、図6A4〜6A8に示すように、接触604による入力に応じて、クイックアクションメニュー608の表示し、クイックアクションメニュー内のそれぞれのメニューオプションを通じて移動するとともに、触知出力を生成する。別の例では、図6A11〜6A18において、接触624による入力に応じて、プレビュー628を表示し、電子メールメッセージをアーカイブするための隠れ閾値を通過して移動するとともに、触知出力を生成する。別の例では、図6A18〜6A22において、接触636による入力に応じて、プレビュー640の表示及びユーザインタフェース644を表示するコンテンツの表示とともに触知出力が生成される。
ユーザインタフェース触知出力が無効化されている(例えば、電子デバイスに対する触覚トグル設定又は触知出力トグル設定がオフである)との判定に従って、デバイスは、第1の動作を実行し、第1の動作に対応する第1の触知出力の少なくとも一部分の提供をやめる(例えば、第1の触知出力は、入力の異なる部分に対応するユーザインタフェースの変化とともに生成される1つ以上の別個の触知出力を、任意選択的に含む)(1306)。例えば、図6B4〜6B8に示すように、デバイスは、接触605による入力に応じて、クイックアクションメニュー608内のそれぞれのメニューオプションを通じて移動するとともに、触知出力の生成をやめる。別の例では、図6B11〜6B18において、デバイスは、接触625による入力に応じて、電子メールメッセージをアーカイブするための隠れ閾値を通過して移動するとともに、触知出力の生成をやめる。
デバイスは、第1の動作を実行した後(及びデバイス上のユーザインタフェース触知出力の有効化/無効化状態を変更することなく)、ホームボタン(例えば、図6A25及び6B25のホームボタン650)上の第1のタイプの第2の入力(例えば、解除入力が続く押し下げ入力を含むシングルクリック)を検出する(1308)。ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、デバイスは、(例えば、第1のアプリケーションを破棄し、ホーム画面、マルチタスクユーザインタフェース、又は仮想アシスタントユーザインタフェースを表示する)ホームボタンに関連する第2の動作を実行し、1つ以上の触知出力生成器を介して、ユーザインタフェース触知出力がデバイスにおいて有効化されているかどうかにかかわらず、ホームボタンのアクティブ化に関連する触知出力(例えば、ダウンクリック触知出力及び/又はアップクリック触知出力)を提供する(例えば、ホームボタンを押圧することに関連する触知出力の生成は、触覚トグル設定又は触知出力トグル設定とは無関係である)(1310)。例えば、図6A1及び図6B1のユーザインタフェース触知出力設定674のオン/オフ状態にかかわらず、デバイスは、図6A25〜6A26及び図6B25〜6B26のホームボタン650の起アクティブ化とともに、触知出力を生成する。
ここで図13Bを参照すると、一部の実施形態では、第1のユーザインタフェースは第1のアプリケーションのユーザインタフェースであり、第1の動作は第1のアプリケーションの動作であり、第2の動作は第1のアプリケーションを破棄すること(例えば、第1のアプリケーションの中止又は終了すること、及び第1のアプリケーションのユーザインタフェースの代わりにホーム画面を表示すること、又は第1のアプリケーションの代わりに以前に表示されたユーザインタフェースを表示すること)を含む(1312)。例えば、図6A19〜6A26及び図6B19〜6B26に示すように、第1の動作は、メールアプリケーションにプレビュー640を提示すること、及び/又はMail(メール)アプリケーション内にコンテンツ表示ユーザインタフェース644を提示することであり、第2の動作は、Mail(メール)アプリケーションのユーザインタフェースを破棄すること、及びMail(メール)アプリケーションのユーザインタフェースの代わりにホーム画面を表示することである。
一部の実施形態では、デバイスは、第1の動作を実行した後(及び、デバイス上のユーザインタフェース触知出力の有効化/無効化状態を変更せずに)、ホームボタン上の、第1のタイプとは別個の第2のタイプの第1の入力(例えば、ダブルクリック(例えば、少なくとも2回のダウンクリックが1回のアップクリックで分離された))を検出する(1314)。ホームボタン上の第2のタイプの第1の入力を検出したことに応じて、デバイスは、ホームボタンに関連する第3の動作(第2の動作とは別個の)を実行する(例えば、現在表示されているユーザインタフェースを破棄し、マルチタスクユーザインタフェースを表示する)。ホームボタン上の第2のタイプの第1の入力を検出したことに応じて、デバイスはまた、1つ以上の触知出力生成器を介して、ユーザインタフェース触知出力が電子デバイスにおいて有効化されているかどうかにかかわらず、ホームボタンのアクティブ化に関連する触知出力(例えば、第1のダウンクリック触知出力、及び/又は第2のダウンクリック触知出力が続く第1のアップクリック触知出力、及び/又は第2のアップクリック触知出力)を提供する(例えば、ホームボタンを押圧することに関連する触知出力の生成は、触覚トグル設定とは無関係である)。一部の実施形態では、第1のタイプの入力に対する触知出力と、第2のタイプの入力に対する触知出力とは異なり、例えば、異なる触知出力パターン、又は異なる数の離散触知出力などを有する。
一部の実施形態では、デバイスは、第1の動作を実行した後(及び、デバイス上のユーザインタフェース触知出力の有効化/無効化状態を変更せずに)、ホームボタン上の第1のタイプ(及び第2のタイプ)とは別個の、第3のタイプの第1の入力(例えば、長いクリック(例えば、少なくとも閾値時間量の間保持される1つのダウンクリック))を検出する(1316)。ホームボタン上の第3のタイプの第1の入力を検出したことに応じて、デバイスは、ホームボタンに関連する第2の動作(及び第3の動作)とは別個の第4の動作を実行する(例えば、現在表示しているユーザインタフェースを破棄し、仮想アシスタントユーザインタフェースを表示する)。ホームボタン上の第3のタイプの第1の入力を検出したことに応じて、デバイスはまた、1つ以上の触知出力生成器を介して、ユーザインタフェース触知出力が電子デバイスにおいて有効化されているかどうかにかかわらず、ホームボタンのアクティブ化に関連する触知出力(例えば、第1のダウンクリック触知出力)を提供する(例えば、ホームボタンを押圧することに関連する触知出力の生成は、触覚トグル設定又は触知トグル設定とは無関係である)。
一部の実施形態では、ホームボタン(及びホームボタン対話のための他の触知出力)のアクティブ化に関連する第1の触知出力(及びユーザインタフェース対話のための他の触知出力)及び触知出力は、1つ以上の触知出力生成器の同一の1つ以上のアクチュエータによって提供される(1318)。
一部の実施形態では、ホームボタン上の第1のタイプのそれぞれの入力に応じて提供される、対応する触知出力の触知出力パターンは、(例えば、ホームボタン構成ユーザインタフェースにおいて選択されたホームボタン触知出力設定に従って、ソフトウェア命令により)ユーザが調整可能である(1320)。
ここで図13Cを参照すると、一部の実施形態では、ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、デバイスは、ユーザインタフェース触知出力が有効化されているか否かにかかわらず、かつ、デバイスにおいて音声出力がミュートされているか否かにかかわらず、ホームボタンのアクティブ化に関連する触知出力を伴う音声出力を提供する(1322)。例えば、一部の実施形態では、図6A25〜6A26に示すシナリオにおいて、デバイスは、デバイスの音声出力ミュート/非ミュート設定にかかわらず、触知出力に付随して触覚音声出力を生成して、ホームボタンのアクティブ化を表示する。一部の実施形態では、触知出力は、対応する音声出力を伴って、異なるタイプの入力に対するフィードバックとユーザインタフェース応答との間のより豊かなテクスチャ及び差別化を提供する。ホームボタン触知出力に対応する音声出力は、ホームボタンに対する触知出力と、対応する音声出力との間の慎重に設計されたペアリングをユーザが不用意に変更し得ないように、デバイス上の音声制御設定(例えば、ミュート/ミュート解除制御、及び/又はボリューム制御)によって任意選択的に制御されない。一般的なデバイス音声出力が無効化されている場合でさえ、触知フィードバック音声を提供することによって(例えば、ユーザがハードウェアボタンのアクティブ化から期待する音声フィードバックをシミュレートすることによって)、デバイスの操作性及び効率が、例えば、デバイスを操作/対話するときの、意図しない結果、及びユーザミスを低減することを通じて改善され、それによって、更に、電力使用量を低減し、デバイスのバッテリ寿命を向上させることができる。ホームボタン触覚音声出力パターン及び対応する触知出力パターンを、例えば図4H及び4Qを参照して、より詳細に説明する。
一部の実施形態では、ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、デバイスは、ユーザインタフェース触知出力が有効化されているか否かにかかわらず、ホームボタンのアクティブ化に関連する触知出力に音声出力を提供し、音声出力のボリュームは、デバイスにおける現在のボリューム設定とは無関係である(1324)。例えば、一部の実施形態では、図6A25〜6A26に示すシナリオにおいて、デバイスは、デバイスの音声出力ボリューム設定にかかわらず、触知出力に付随して触覚音声出力を生成して、ホームボタンのアクティブ化を表示する。一部の実施形態では、触知出力は、対応する音声出力を伴って、異なるタイプの入力に対するフィードバックとユーザインタフェース応答との間のより豊かなテクスチャ及び差別化を提供する。触知出力に対応する音声出力のボリュームは、適切な振幅に対する触知出力と、対応する音声出力との間の慎重に設計されたペアリングをユーザが不用意に変更し得ないように、デバイス上のボリューム制御によって制御されない。触覚フィードバック音声ボリュームの制御を、一般的なデバイス音声のボリューム制御から切り離すことによって(例えば、ユーザがハードウェアボタンのアクティブ化から期待する音声フィードバックをシミュレートすることによって)、デバイスの操作性及び効率が、例えば、デバイスを操作/対話するときの、意図しない結果、及びユーザミスを低減することを通じて改善され、それによって、更に、電力使用量を低減し、デバイスのバッテリ寿命を向上させることができる。ホームボタン触覚音声出力パターン及び対応する触知出力パターンを、例えば図4H及び4Qを参照して、より詳細に説明する。
一部の実施形態では、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が有効化されている(例えば、電子デバイスに対する触覚トグル設定又は触知出力トグル設定がオンである)との判定に従って、デバイスは、デバイスにおいて音声出力がミュートされているかどうかを判定する。音声出力がデバイスにおいてミュートされていないとの判定に従って、デバイスは、第1の触知出力を伴う音声出力を提供する(1326)。デバイスにおいて音声出力がミュートされているとの判定に従って、デバイスは、第1の触知出力を伴う音声出力を提供することをやめる。例えば、一部の実施形態では、図6A1〜6A8及び図6A9〜6A17に示すシナリオにおいて、デバイスは、デバイスにおいてミュートされていない場合にのみ、触知出力とともに触覚音声出力を生成して、ホームボタンのアクティブ化を指示する。一部の実施形態では、触知出力は、対応する音声出力を伴って、異なるタイプの入力に対するフィードバックとユーザインタフェース応答との間のより豊かなテクスチャ及び差別化を提供する。ユーザインタフェース触知出力が有効化されると、音声出力がユーザインタフェースと対話するためのフィードバックを提供する唯一の手段ではないので、ユーザが一般的な音声ミュートトグル設定を介して触覚音声をオフにすることができることで、デバイスの性能と操作性に深刻な影響を与えることなく、バッテリ電力を節約する。
一部の実施形態では、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が有効化されている(例えば、電子デバイスに対する触覚トグル設定又は触知出力トグル設定がオンである)との判定に従って、デバイスは、音声出力が現在設定されているレベルを判定する。デバイスにおいて音声出力が第1のレベルに設定されているとの判定に従って、デバイスは、デバイスにおける音声出力の第1のレベルに基づいて決定される第1のボリュームで、第1の触知出力を伴う音声出力を提供する(1328)。デバイスにおいて音声出力が第2のレベルに設定されているとの判定に従って、第1のボリュームとは異なり、かつ、デバイスにおける音声出力の第2のレベルに基づいて決定される第2のボリュームで、第1の触知出力を伴う音声出力を提供する。例えば、一部の実施形態では、図6A1〜6A8及び6A9〜6A17に示すシナリオにおいて、デバイスは、触知出力に付随する触覚音声出力を生成して、ホームボタンのアクティブ化を示し、デバイスにおける現在のボリューム設定に従って触覚音声出力の振幅を調整する。一部の実施形態では、触知出力は、対応する音声出力を伴って、異なるタイプの入力に対するフィードバックとユーザインタフェース応答との間のより豊かなテクスチャ及び差別化を提供する。ユーザインタフェースの触知出力が有効化されると、ユーザがどれだけうるさく又はかすかに触知音声出力を再生するかをある程度制御できるようになるため、ユーザはフィードバックをユーザの好みに合わせることができ、したがってデバイスの性能及び操作性が改善される。
ここで図13に着目すると、一部の実施形態では、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が無効化されている(例えば、電子デバイスに対する触覚トグル設定がオフである)との判定に従って、デバイスは、デバイスにおいて音声出力がミュートされているか否かにかかわらず、第1の触知出力を伴う音声出力を提供することをやめる(1330)。例えば、一部の実施形態では、図6B1〜6B8、6B9〜6B17、及び6B20〜6B23に示すシナリオでは、デバイスは、デバイスにおいて音声出力がミュートされているか否かにかかわらず、クイックアクションメニュー608(図6B4)、プレビュー628(図6B13)、プレビュー640(図6B22)、及びユーザインタフェース644(図6B23)を表示するとともに生成される触知出力に付随する触覚音声出力を生成しない。
一部の実施形態では、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が無効化されている(例えば、電子デバイスに対する触覚トグル設定がオフである)との判定に従って、デバイスは、デバイスにおいて音声出力がミュートされているか否かにかかわらず、第1の触知出力を伴う音声出力を提供する(1330)。例えば、一部の実施形態で、図6B1〜6B8、6B9〜6B17、及び6B20〜6B23に示すシナリオでは、デバイスは、デバイスにおいて音声出力がミュートされているかどうかにかかわらず、クイックアクションメニュー608(図6B4)、プレビュー628(図6B13)、プレビュー640(図6B22)、及びユーザインタフェース644(図6B23)の表示とともに生成される触知出力に付随する触覚音声出力を生成する。
一部の実施形態では、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が無効化されているとの判定に従って、かつ、第1の動作が所定の免除された動作(例えば、強度依存入力基準に基づいてトリガされる、ピーク及びポップ動作、又はホーム画面上のクイックアクションメニュー表示)であるとの判定に従って、デバイスは、1つ以上の触知出力生成器を用いて、第1の動作に対応する第1の触知出力を提供する(1332)。例えば、一部の実施形態では、図6B1〜6B8、6B9〜6B17、及び6B20〜6B23に示すシナリオでは、デバイスは、力押圧に応じて、クイックアクションメニュー及びプレビュー、並びにコンテンツユーザインタフェースを表示しているため、ユーザインタフェース触知出力がデバイスにおいて無効化されている場合でも、クイックアクションメニュー608(図6B4)、プレビュー628(図6B13)、プレビュー640(図6B22)、及びユーザインタフェース644(図6B23)を表示するとともに、触知出力を生成する(例えば、浅い押圧強度閾値ITL又は深い押圧強度閾値ITDを上回る接触強度を有する押圧入力は、ユーザインタフェース触知出力設定による制御から免除される)。
一部の実施形態では、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が無効化されているとの判定に従って、デバイスは、第1の動作が所定の動作の第1のタイプ及び/又は所定の動作の第2のタイプであるかどうかを判定する。第1の動作が、所定の動作の第1のタイプ(例えば、ピーク及びポップ動作、又は、強度依存入力基準に基づいてトリガされる、ホーム画面上のクイックアクションメニュー表示)であるとの判定に従って、デバイスは、1つ以上の触知出力生成器を用いて、第1の動作に対応する第1の触知出力を提供する(1334)。第1の動作が所定の動作の第2のタイプ(例えば、それぞれの強度閾値を上回る、タッチ感知面上の接触強度の増大に応じて表示されたクイックアクションメニュー内の異なるオプション間のフォーカスを移動させること、又は、それぞれの強度閾値を上回るタッチ感知面上の接触強度の増大の検出に応じて表示されたコンテンツプレビューに関連する操作をトリガするためのトリガ基準の充足を示すこと)であるとの判定に従って、デバイスは、1つ以上の触知出力生成器を用いて、第1の動作に対応する触知出力を提供することなく、第1の動作を実行する。例えば、図6B2〜6B8では、接触605による押圧入力に応じて、クイックアクションメニュー608を表示するとともに触知出力が提供され、接触605によるスワイプ入力に応じて、クイックアクションメニューのそれぞれのメニューオプションを通過する動作とともに触知出力がスキップされる。ユーザインタフェース触知出力が有効化されている(例えば、電子デバイスに対する触覚トグル設定がオンである)との判定に従って、デバイスは、第1の動作を実行し、第1の動作が、所定の動作の第1のタイプ又は所定の動作の第2のタイプであるか否かにかかわらず、1つ以上の触知出力生成器を用いて、第1の動作に対応する第1の触知出力を提供する。例えば、図6A2〜6A8では、接触605による押圧入力に応じて、クイックアクションメニュー608を表示するとともに触知出力が提供され、接触605によるスワイプ入力に応じて、クイックアクションメニューのそれぞれのメニューオプションを通過する動作とともに触知出力も生成される。
図13A〜13Dにおける動作について記載された特定の順序は単なる例示であり、記載された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法700、900、1100、1500、1700、及び1900)に関して本明細書に記載される他のプロセスの詳細はまた、図13A〜図13Dに関して上記した方法1300にも、類似の様式で適用可能であることに留意されたい。例えば、方法700、900、1100、1500、1700、及び1900に関連して上述した接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、触覚音声出力、強度閾値、時間基準、フォーカスセレクタ、アニメーション、及び構成は、任意選択で、本明細書に記載の他の方法(例えば、方法1300)に関連して本明細書に記載の接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、触覚音声出力、強度閾値、時間基準、フォーカスセレクタ、アニメーション、及び構成のうちの1つ以上の特性を有する。簡潔にするために、それらの詳細はここでは繰り返さない。
一部の実施形態によれば、図14は、説明される様々な実施形態の原理に従って構成された電子デバイス1400の機能ブロック図を示す。このデバイスの機能ブロックは、説明される様々な実施形態の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。図14で説明される機能ブロックが、説明される様々な実施形態の原理を実施するように、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図14に示すように、電子デバイス1400は、情報を表示するように構成されたディスプレイユニット1401(例えば、(タッチスクリーン及びタッチスクリーンディスプレイとも呼ばれる)図1Aのタッチ感知ディスプレイシステム112)、接触、ジェスチャ、及びタッチスクリーンディスプレイ上の他のユーザ入力を受信するように構成された感知面ユニット1404(例えば、ディスプレイコントローラ156及びタッチセンシティブディスプレイシステム112、図1A)、任意選択でタッチ感知表面ユニット及び/又はデバイスのそれぞれのボタン(例えば、ホームボタン)との接触の強度を検出するように構成された1つ以上のセンサユニット1406、触知出力を生成するための1つ以上の触知出力生成ユニット1407、並びにディスプレイユニット1402、感知面ユニット1404、任意選択で1つ以上のセンサユニット1406、及び1つ以上の触知出力生成ユニット1407に結合された処理ユニット1408と、を含む。例示を容易にするため、図14は電子デバイス1400と一体化されたディスプレイユニット1402及びタッチ感知面ユニット1404を示すが、一部の実施形態では、これらのユニットが電子デバイスから物理的に分離しているが、これらのユニットの一方又は両方は(例えば、図3を参照して示され説明されているように)電子デバイスと通信している。一部の実施形態では、処理ユニットは、表示ユニット(例えば、表示ユニット1410)、入力検出ユニット(例えば、入力検出ユニット1412)、操作実行ユニット(例えば操作実行ユニット1414)、触知出力提供ユニット(例えば、触知出力提供ユニット1416)、及び音声出力提供ユニット(例えば、音声出力提供ユニット1418)を含む。
一部の実施形態では、処理ユニット(又は、ユニット1410から1418などの1つ以上のその構成要素)は、(例えば、表示ユニット1410を用いて)第1のユーザインタフェースをディスプレイ上に表示し、ホームボタンは、ホームボタン上の第1のタイプの入力を検出したことに応じて、現在表示されているユーザインタフェースを破棄するために、複数の異なるコンテキストにおいてデバイス上で使用可能であり、第1のユーザインタフェースを表示している間に、(例えば、入力検出ユニット1412を用いて)第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出し、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、(例えば、動作実行ユニット1414を用いて)ユーザインタフェース触知出力が電子デバイスにおいて有効化されているとの判定に従って、デバイスは、第1の動作を実行し、(例えば、触知出力提供ユニット1416を用いて)1つ以上の触知出力生成器を介して第1の動作に対応する第1の触知出力を提供し、ユーザインタフェース触知出力が無効化されているとの判定に従って、(例えば、動作実行ユニット1414を用いて)第1の動作を実行し、第1の動作に対応する第1の触知出力の少なくとも一部分を提供することをやめ、第1の動作を実行した後、ホームボタン上の第1のタイプの第2の入力を検出し、ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、(例えば、動作実行ユニット1414を用いて)ホームボタンに関連する第2の動作を実行し、1つ以上の触知出力生成器を介して、ユーザインタフェース触知出力がデバイスにおいて有効化されているか否かにかかわらず、(例えば、触知出力提供ユニット1416を用いて)ホームボタンのアクティブ化に関連する触知出力を提供する、ように構成されている。
一部の実施形態では、第1のユーザインタフェースは第1のアプリケーションのユーザインタフェースであり、第1の動作は第1のアプリケーションの操作であり、第2の動作は第1のアプリケーションを破棄することを含む。
一部の実施形態では、処理ユニットは、第1の動作を実行した後、(例えば、入力検出ユニット1412を用いて)ホームボタン上で、第1のタイプとは別個の第2のタイプの第1の入力を検出し、ホームボタン上の第2のタイプの第1の入力を検出したことに応じて、(例えば、動作実行ユニット1414を用いて)ホームボタンに関連する、第2の動作とは別個の第3の動作を実行し、1つ以上の触知出力生成器を介して、ユーザインタフェース触知出力が電子デバイスにおいて有効化されているか否かにかかわらず、(例えば、触知出力提供ユニット1416を用いて)ホームボタンのアクティブ化に関連する触知出力を提供する、ように構成されている。
一部の実施形態では、処理ユニットは、第1の動作を実行した後、(例えば、入力検出ユニット1412を用いて)ホームボタン上で、第1のタイプとは別個の第3のタイプの第1の入力を検出し、ホームボタン上の第3のタイプの第1の入力を検出したことに応じて、(例えば、動作実行ユニット1414を用いて)ホームボタンに関連する、第2の動作とは別個の第4の動作を実行し、1つ以上の触知出力生成器を介して、ユーザインタフェース触知出力が電子デバイスにおいて有効化されているか否かにかかわらず、(触知出力提供ユニット1416を用いて)ホームボタンのアクティブ化に関連する触知出力を提供する、ように構成されている。
一部の実施形態では、第1の触知出力、及びホームボタンのアクティブ化に関連する触知出力は、1つ以上の触知出力生成器の同一の1つ以上のアクチュエータによって提供される。
一部の実施形態では、ホームボタン上の第1のタイプのそれぞれの入力に応じて提供される、対応する触知出力の触知出力パターンは、ユーザ調整可能である。
一部の実施形態では、処理ユニットは、ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、ユーザインタフェース触知出力が有効化されているか否かにかかわらず、かつ、デバイスにおいて音声出力がミュートされているか否かにかかわらず、(音声出力提供ユニット1418を用いて)ホームボタンのアクティブ化に関連する触知出力を伴う音声出力を提供するように構成されている。
一部の実施形態では、処理ユニットは、ホームボタン上の第1のタイプの第2の入力を検出したことに応じて、ユーザインタフェース触知出力が有効化されているか否かにかかわらず、(音声出力提供ユニット1418を用いて)ホームボタンのアクティブ化に関連する触知出力を伴う音声出力を提供するように構成されており、音声出力のボリュームは、デバイスにおける現在のボリューム設定とは無関係である。
一部の実施形態では、処理ユニットは、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が有効化されているとの判定に従って、かつ、デバイスにおいて音声出力がミュートされていないとの判定に従って、(例えば、音声出力提供ユニット1418を用いて)第1の触知出力を伴う音声出力を提供し、デバイスにおいて音声出力がミュートされているとの判定に従って、第1の触知出力を伴う音声出力を提供することをやめる、ように構成されている。
一部の実施形態では、処理ユニットは、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が有効化されているとの判定に従って、かつ、デバイスにおいて音声出力が第1のレベルにセットされているとの判定に従って、(例えば、音声出力提供ユニット1418を用いて)デバイスにおける音声出力の第1のレベルに基づいて決定される第1のボリュームで、第1の触知出力を伴う音声出力を提供し、デバイスにおいて音声出力が第2のレベルに設定されているとの判定に従って、(例えば、音声出力提供ユニット1418を用いて)デバイスにおける音声出力の第2のレベルに基づいて決定される、第1のボリュームとは異なる第2のボリュームで、第1の触知出力を伴う音声出力を提供する、ように構成されている。
一部の実施形態では、処理ユニットは、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が無効であるとの判定に従って、デバイスにおいて音声出力がミュートされているか否かにかかわらず、第1の触知出力を伴う音声出力を提供することをやめるように構成されている。
一部の実施形態では、処理ユニットは、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が無効であるとの判定に従って、かつ、第1の動作が所定の免除された動作であるとの判定に従って、1つ以上の触知出力生成器を用いて、第1の動作に対応する第1の触知出力を提供するように構成されている。
一部の実施形態では、処理ユニットは、第1のユーザインタフェースに指示された第1のタイプの第1の入力を検出したことに応じて、ユーザインタフェース触知出力が無効化されているとの判定に従って、かつ、第1の動作が所定の動作の第1のタイプであるとの判定に従って、1つ以上の触知出力生成器を用いて(例えば、触知出力提供ユニット1416を用いて)、第1の動作に対応する第1の触知出力を提供し、第1の動作が所定の動作の第2のタイプであるとの判定に従って、1つ以上の触知出力生成器を用いて(例えば、操作実行ユニット1414を用いて)、第1の動作に対応する触知出力を提供することなく、第1の動作を実行し、ユーザインタフェース触知出力が有効化されているとの判定に従って、(例えば、動作実行ユニット1414を用いて)第1の動作を実行し、第1の動作が、所定の動作の第1のタイプ又は所定の動作の第2のタイプであるか否かにかかわらず、1つ以上の触知出力生成器を用いて(例えば、触知出力提供ユニット1416を用いて)、第1の動作に対応する第1の触知出力を提供する、ように構成されている。
上記説明された情報処理方法での動作は任意選択で、汎用プロセッサ(例えば、図1A及び図3に関連して上記説明されたようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図13A〜13Dを参照して上述された動作は、図1A〜1B、又は図14に示す構成要素によって、任意選択的に実施される。例えば、表示動作1302、検出動作1304、応答動作1306、検出動作1308、及び応答動作1310は任意選択で、イベントソート部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に記される構成要素に基づいてどのように実装されるかは明らかであろう。
図15A〜15Eは、一部の実施形態に係る、入力ベースのメトリック又はユーザインタフェースベースのメトリックに依拠して、異なる触知出力パターンを有する触知出力を生成する方法1500を示すフロー図である。方法1500は、ディスプレイ、タッチ感知面、並びにタッチ感知面との接触強度を検出するための1つ以上のセンサ、及び/又はデバイスのそれぞれのボタン(例えば、仮想又は物理ホームボタン)、を有する電子デバイス(例えば、デバイス300、図3、又はポータブル多機能デバイス100、図1A)において実行される。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。一部の実施形態では、ディスプレイはタッチ感知面から分離している。一部の実施形態では、デバイスは触知出力を生成するための1つ以上の触知出力生成器を含む。一部の実施形態では、デバイスは、デバイスのホームボタン(例えば、物理ホームボタン又は仮想ホームボタン)との接触の強度を検出するための1つ以上のセンサを含む。一部の実施形態では、方法1500は、非一時的コンピュータ可読記憶媒体(例えば、非揮発性コンピュータ可読記憶媒体)に記憶され、デバイス100の1つ以上のプロセッサ122(図1A)などの電子デバイスの1つ以上のプロセッサによって実行される命令によって統制される。説明を簡単にするために、以下に、デバイス100により実行されるものとして方法1500を説明する。方法1500の一部の動作が任意選択で組み合わされ、及び/又は一部の動作の順序が任意選択で変更される。
方法1500は、入力ベースのメトリック又はユーザインタフェースベースのメトリックに依拠して、異なる触知出力パターンを有する触知出力を生成することに関する。触知出力の触知出力パターン(例えば、振幅、波形、及び/又は周波数)は、強度閾値を横切るときの接触強度の変化率、フォーカスセレクタ又はユーザインタフェース要素がユーザインタフェースの閾値位置を横切るときのフォーカスセレクタ又はユーザインタフェース要素の移動速度、などのメトリックに基づいて選択される。触知出力の触知出力パターンを、ユーザ入力の特性及び/又はユーザインタフェースの視覚的変化(入力ベース及び/又はユーザインタフェースベースのメトリックによって測定される)により近づけることによって、デバイスが提供するフィードバックはより直感的になり、ユーザの期待により適合する。ユーザへの改良されたフィードバックは、(例えば、ユーザの期待に応え、デバイスと対話する際のユーザの混乱を避けることによって)デバイスの操作性を高め、(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザ−デバイスインタフェースを更に効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによってデバイスの電力使用を削減し、バッテリ寿命を改善する。
図15Aに示すように、デバイスは、ディスプレイ上にユーザインタフェース(例えば、ユーザインタフェース524、図5B62)を表示する(1502)。ユーザインタフェースを表示している間に、デバイスは、ホームボタン上の第1の押圧入力を検出することを含むホームボタン上の入力シーケンス(例えば、押圧入力若しくは保持入力、又は解除入力が続く押圧入力)を検出し、第1の押圧入力を検出することは、(例えば、図5B62〜5B63に示すように)ホームボタン上の接触の特性強度の増大を検出することを含む(1504)。
ホームボタン上の第1の押圧入力を検出したことに応じて、第1の押圧入力が、第1の強度閾値(例えば、図5B63のITL)を上回る、接触の特性強度の増大を含み、かつ、接触の特性強度が第1の強度閾値を上回って増大する時間に近接した接触の特性強度の変化(例えば、接触の特性強度が第1の強度閾値を上回って増大する時間から開始するか、又はその時間に終了するか、又はその時間を含む所定の時間窓の間に生じた、接触の特性強度の変化量)が、(例えば、図5B63に示す)強度変化メトリックの第1の値を有する、との判定に従って、デバイスは、ディスプレイ上に表示されるユーザインタフェースを変更する(例えば、図5B63のユーザインタフェース524を図5B70のユーザインタフェース522に変更する)第1の動作を実行し(1506)、1つ以上の触知出力生成器を介して、第1の強度閾値を上回る接触の特性強度の増大に対応する第1の離散触知出力(例えば、触知出力590(例えば、利得0.5のミニタップ270Hz)、図5B63)を生成する。
ホームボタン上の第1の押圧入力を検出したことに応じて、第1の押圧入力が第1の強度閾値(5B67のITL)を上回る接触の特性強度の増大を含み、かつ、接触の特性強度が第1の強度閾値を上回って増大した時間に近接する接触の特性強度の変化が、(例えば、図5B63に示す)強度変化メトリックの第1の値とは異なる、(例えば、図5B67に示す)強度変化メトリックの第2の値を有するとの判定に従って、デバイスは、ディスプレイに表示されたユーザインタフェースを変更する(例えば、図5B67のユーザインタフェース524を図5B70のユーザインタフェース522に変更する)第1の動作を実行し、1つ以上の触知出力生成器を介して、第1の強度閾値(例えば、触知出力592(例えば、利得1のミニタップ270Hz)、図5B67)を上回る接触の特性強度の増大に対応し、第1の離散触知出力とは異なる、第2の離散触知出力を生成する(1506)。
ここで、図15Bを参照すると、一部の実施形態では、第1の離散触知出力及び第2の離散触知出力は、同じ波形(例えば、ミニタップ230Hz、ミニタップ270Hz、又はミニタップ300Hz)(例えば、図5B63の触知出力590はミニタップ270Hzであり、図5B67の触知出力592はミニタップ270Hzである)を有し、第1の離散触知出力及び第2の離散触知出力は、異なる振幅(例えば、図5B63に示すように、第1の離散触知出力に対しては利得0.5のミニタップ270Hz、図5B67に示すように、第2の離散触知出力に対しては利得1のミニタップ270Hz)を有する(1508)。
一部の実施形態では、(例えば、図5B63〜5B64に示すように)接触の特性強度が第1の強度閾値を上回って維持されている間に、(例えば、第1の離散触知出力は、持続的な振動というよりはむしろ、フルタップ、ミニタップ、又はマイクロタップなどの短い「タップ」である)第1の離散触知出力を停止する(1510)。
一部の実施形態では、(例えば、図5B67〜5B68に示すように)接触の特性強度が第1の強度閾値を上回って維持されている(例えば、第2の離散触知出力は、持続的な振動というよりはむしろ、フルタップ、ミニタップ、又はマイクロタップなどの短い「タップ」である)間に、第2の離散触知出力を停止する(1512)。
一部の実施形態では、第1の触知出力は、強度変化メトリック値の第1の範囲に対して生成される(例えば、1秒あたりの所定の強度単位数(例えば、1秒あたり1250グラム)までの強度変化メトリック値の範囲に対して、時に「弱い」強度と呼ばれる、第1の触知出力パターン(例えば、図5B63に示すように、利得0.5のミニタップ270Hz)を有する触知出力が生成される)(1514)。一部の実施形態では、第2の触知出力は、強度変化メトリック値の第2の範囲に対して生成される(例えば、1秒あたりの所定の強度単位数(例えば、1秒あたり1250グラム)よりも大きい強度変化メトリック値の範囲に対して、時に「通常の」強度と呼ばれる、第1の触知出力パターン(例えば、図5B63に示すように、利得0.5のミニタップ270Hz)とは別個の、第2の触知出力パターン(例えば、図5B67に示すように、利得1.0のミニタップ270Hz)を有する触知出力が生成される)(1516)。
ここで図15Cを参照すると、一部の実施形態では、ホームボタン上の入力シーケンスを検出することは、ホームボタン上の第1の押圧入力に続いて、ホームボタン上の第1の解除入力を検出することを更に含み、第1の解除入力を検出することは、(例えば、図5B65及び5B69に示すように)ホームボタン上の接触の特性強度の減少を検出することを含む(1518)。一部の実施形態では、ホームボタン上の第1の解除入力を検出したことに応じて、第1の解除入力が第2の強度閾値(例えば、押圧強度閾値と同じ、又は異なる解除強度閾値(例えば、解除強度閾値ITLRは押圧強度閾値ITLよりも低い))を下回る接触の特性強度の減少を含み、かつ、接触の特性強度が第2の強度閾値を下回って減少した時間に近接する接触の特性強度の変化が、強度変化メトリックに対する第3の値を有する、との判定に従って(例えば、1秒あたり強度の所定単位数(例えば、1秒あたり1250グラム)までの強度変化メトリック値の範囲に対して)、デバイスは、1つ以上の触知出力生成器を介して、接触の特性強度の第2の強度閾値を下回る減少に対応する第3の離散触知出力(例えば、触知出力591(例えば、利得0.25のミニタップ270Hz)、図5B65)を生成する(1518)。
一部の実施形態では、ホームボタン上の第1の解除入力を検出したことに応じて、第1の解除入力が第2の強度閾値を下回る接触の特性強度の減少を含み、かつ、接触の特性強度が第2の強度閾値を下回って減少した時間に近接する接触の特性強度の変化が、強度変化メトリックの第3の値とは異なる、強度変化メトリックの第4の値を有する(例えば、1秒あたり強度の所定単位数(例えば、1秒あたり1250グラム)よりも大きい強度変化メトリック値範囲に対して)、との判定に従って、デバイスは、1つ以上の触知出力生成器を介して、接触の特性強度の第2の強度閾値(例えば、触知出力593(例えば、利得0.5のミニタップ270Hz)、図5B69)を下回る減少に対応し、第3の離散触知出力(例えば、触知出力591(例えば、利得0.25のミニタップ270Hz)、図5B65)とは異なる、第4の離散触知出力を生成する(1518)。
一部の実施形態では、第1及び第2の触知出力を生成することは、それぞれ、強度変化メトリックの第1及び第2の値に従って、ベース触知出力パターンに、第1の変更(例えば、第1の乗数又は利得値によって振幅を変更する)を適用することを含み、第3及び第4の触知出力を生成することは、それぞれ、強度変化メトリックの第3及び第4の値に従って、ベース触知出力パターンに、第1の変更とは別個の第2の変更(例えば、第2の乗数又は利得値によって振幅を変更する)を適用することを含む(1520)。
一部の実施形態では、第2の強度閾値は、第1の強度閾値とは異なる(例えば、より低い)(例えば、ダウンクリック強度閾値が350mgであり、アップクリック強度閾値が250mgである)(1522)。一部の実施形態では、ダウンクリック及びアップクリック強度閾値は、押圧入力及び/又は解除入力の特性に基づいて動的に決定される。例えば、一部の実施形態では、強度の増大がより早い押圧入力(例えば、速くて強い押圧)は、強度の増大が遅い(例えば、より遅くより緩やかな押圧)の押圧入力よりも高いダウンクリック強度閾値をもたらす可能性がある。同様に、強度の減少がより遅い解除入力(例えば、より遅くより緩やかな押圧)は、強度の減少がより早い(例えば、急速な解除)の解除入力よりも低いダウンクリック強度閾値をもたらす可能性がある。
ここで図15Dを参照すると、一部の実施形態では、第1の離散触知出力及び第2の離散触知出力は、ホームボタンに対する複数の異なる触知出力設定(例えば、ミニタップ230Hz、ミニタップ270Hz、ミニタップ300Hz)のうちの現在選択されている触知出力設定に関連する強度変化メトリックの値に従って、ベース触覚出力パターン(例えば、異なる変更量がベース触覚出力パターン(例えば、振幅変調、周波数変調、遅延など)に適用される))から生成される(1524)。ホームボタンに対する触知出力設定を変更する例を、方法1100を参照して、図5C1〜5C19に関して上述した。
一部の実施形態では、ホームボタンは、それぞれの場所に永続的に表示されるか、又はディスプレイから離れたデバイス上の永続的な場所に配置される(1526)(例えば、ボタン204、図5B52)。一部の実施形態では、強度変化メトリックは、接触の特性強度の経時的な変化率(50msの時間窓にわたる変化率)に基づく(1528)。
一部の実施形態では、強度変化メトリックは、接触の特性強度が関連する閾値強度(例えば、第1の強度閾値、第2の強度閾値など)に達した時間(例えば、図5B63及び5B67に示すようにITLに達したとき、又は図5B65及び5B69に示すように、ITLRに達したとき)に測定された接触の特性強度の変化率に依拠する(1530)。
一部の実施形態では、入力シーケンスを検出することは、(例えば、最初の押圧入力と、最初の押圧入力の解除に続いて)ホームボタン上の第2の押圧入力を検出することを含み、第2の押圧入力を検出することは、ホームボタン上の接触の特性強度の第2の増大を検出することを含む(1532)。第2の押圧入力の検出に応じて、第1の押圧入力に対応する第1の時点(例えば、接触の強度が第1の時間に対する第1の強度閾値を上回って増大する時間、又は接触の強度が第1の時間に対する第1の強度閾値に対応する解除強度閾値を下回って減少する時間)と、第2の押圧入力に対応する第2の時点(例えば、接触の強度が第2の時間に対する第1の強度閾値を上回って増大する時間、又は接触の強度が第2の時間に対する解除強度閾値を下回って減少する時間)との間の時間量に基づいて、第1の押圧入力及び第2の押圧入力が、所定の入力パターンの一部である(例えば、第2の時点が、第1の時点の後の閾値時間量よりも小さい(例えば、第1のダウンクリックと第2のダウンクリックとの間の持続時間が、ダブルクリック入力を検出するための時間窓よりも小さい、若しくは第1のアップクリックと第2のアップクリックとの間の持続時間が、ダブルクリック入力を検出するための時間ウィンドウよりも小さいか、又は第1のアップクリックと第2のダウンクリックとの間の持続時間が、ダブルクリック入力を検出するための時間窓よりも小さい))との判定に従って、デバイスは、所定の入力パターンに関連する第2の動作を実行し(例えば、ダブルクリック入力パターン)(例えば、図5B5〜5B14に示すように、マルチタスクユーザインタフェースを表示する)、ここで、第2の動作は第1の動作とは異なり、デバイスは、1つ以上の触知出力生成器を介して、第1及び第2の触知出力とは別個の第5の離散触知出力(例えば、触知出力573(例えば、利得0.8のミニタップ270Hz)、図5B10)を、提供する(1532)。
例えば、一部の実施形態では、ダブルクリック入力の第2のクリックに対する触知出力は、シングルクリック入力に対する触知出力又はダブルクリック入力の第1のクリックに対する触知出力とは異なる(例えば、図5B5〜図5B10の、ダブルクリック入力の第2の押圧入力(例えば、図5B10の触知出力573)は、ダブルクリック入力の第1の押圧入力(例えば、図5B6の触知出力571)とは異なる触知出力を有する)。一部の実施形態では、ダブルクリック入力の第2のクリック(例えば、触知出力573(例えば、利得0.8のミニタップ270Hz)、図5B10)に対する触知出力は、ダブルクリック入力の第1のクリック(例えば、触知出力571(例えば、利得1のミニタップ270Hz)、図5B6)が有するよりも低い振幅を有する。一部の実施形態では、ダブルクリック入力の第1のクリックのダウンクリックに対する触知出力は、(例えば、それぞれ、図5B6、5B8、及び5B10に示すように)第1のクリックのアップクリックよりも高い振幅を有し、ダブルクリック入力の第2のクリックのダウンクリックよりも高い振幅を有する。一部の実施形態では、ダブルクリック入力の第2のクリックのアップクリックは、ダブルクリック入力の第1のクリックのアップクリックと同じである(例えば、アップクリックは変更されない)。一部の実施形態では、ダブルクリック入力の第2のクリックのアップクリックは、ダブルクリック入力の第2のクリックのダウンクリックと同様に変更される。
ここで図15Eを参照すると、一部の実施形態では、入力シーケンスを検出することは、(例えば、最初の押圧入力と、最初の押圧入力の解除に続いて)ホームボタン上の第2の押圧入力を検出することを含み、第2の押圧入力を検出することは、ホームボタン上の接触の特性強度の第2の増大(例えば、第1の強度閾値を下回る強度から、第1の強度閾値を上回る強度まで)を検出することを含む(1534)。第1の押圧入力を検出したことに応じて、デバイスは、(図4Oに示すように)第1の押圧入力に応じて生成された第1及び第2の触知出力うちのそれぞれの1つと同時に、第1の音声出力を提供する(1534)。
第2の押圧入力の検出に応じて、第1の押圧入力に対応する第1の時点(例えば、接触の強度が、第1の時間に対する第1の強度閾値を上回って増大した時間、又は、接触の強度が、第1の時間に対する第1の強度閾値を上回って増大した後に、第2の強度閾値を下回って減少した時間)と、第2の押圧入力に対応する第2の時点(例えば、接触の強度が、第2の時間に対する第1の強度閾値を上回って増大した時間、又は、接触の強度が、第2の時間に対する第1の強度閾値を上回って増大した後に、第2の強度閾値を下回って減少した時間)との間の時間量に基づいて、第1の押圧入力及び第2の押圧入力が、所定の入力パターンの一部である、との判定に従って(例えば、第2の時点が、第1の時点よりの後の閾値時間量よりも小さいため(例えば、第1のダウンクリックと第2のダウンクリックとの間の持続時間が、ダブルクリック入力を検出するための時間ウィンドウよりも小さく、又は、第1のアップクリックと第2のアップクリックとの間の持続時間が、ダブルクリック入力を検出するための時間ウィンドウよりも小さい、若しくは第1のアップクリックと第2のダウンクリックとの間の持続時間が、ダブルクリック入力を検出するための時間ウィンドウよりも小さい))、デバイスは、(i)入力パターンに関連する、第1の動作とは異なる第2の動作を実行し、(ii)1つ以上の触知出力生成器を介して、第5の離散触知出力であって、第1の押圧入力に対して生成された第1及び第2の触知出力のそれぞれ一つと同一である、第5の離散触知出力を提供し、(iii)第5の離散触知出力と同時に第2の音声出力を提供し、ここで、第2の音声出力及び第1の音声出力は、(例えば、図5B5〜5B14、及び図4Kの第3行に示すように)異なる音声出力パターン(例えば、異なる振幅、周波数、及び/又は波形)を有する。
一部の実施形態では、ホームボタン上の第1の押圧入力の検出に応じて、デバイスは、第1の押圧入力に対応する強度変化メトリックの値にかかわらず、第1のユーザインタフェースから第2のユーザインタフェースに、ユーザインタフェースを変更する(例えば、図5B70のユーザインタフェース522は、図5B52〜5B65のシーケンスの後に表示され、図5B66〜5B69のシーケンスの後にもまた表示される)(1536)。一部の実施形態では、第1のユーザインタフェースから第2のユーザインタフェースへの変更は、同じアニメーションで表示される。一部の実施形態では、第1のユーザインタフェースから第2のユーザインタフェースへの変更は、強度変化メトリックの値に依拠する異なるアニメーション(例えば、より速い押圧入力に対するより速い遷移、及びより遅い押圧入力に対するより遅い遷移)で表示される。
図15A〜15Eにおける動作について記載された特定の順序は単なる例示であり、記載された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法700、900、1100、1300、1700、及び1900)に関して本明細書に記載される他のプロセスの詳細はまた、図15A〜15Eに関して上記した方法1500にも、類似の様式で適用可能であることに留意されたい。例えば、方法1500に関連して上述した接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションは、任意選択で、本明細書に記載の他の方法(例えば、方法700、900、1100、1300、1700、及び1900)に関連して本明細書に記載の接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションのうちの1つ以上の特性を有する。簡潔にするために、それらの詳細はここでは繰り返さない。
一部の実施形態によれば、図16は、説明される様々な実施形態の原理に従って構成された電子デバイス1600の機能ブロック図を示す。このデバイスの機能ブロックは、説明される様々な実施形態の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。図16で説明される機能ブロックが、説明される様々な実施形態の原理を実施するように、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図16に示すように、電子デバイス1600は、情報を表示するように構成されたディスプレイユニット1601(例えば、(タッチスクリーン及びタッチスクリーンディスプレイとも呼ばれる)タッチ感知ディスプレイシステム112、図1A)、タッチスクリーンディスプレイ上の接触、ジェスチャ、及び他のユーザ入力を受信するように構成された、タッチ感知面ユニット1604(例えば、ディスプレイコントローラ156及びタッチ感知ディスプレイシステム112、図1A)、タッチ感知面ユニット及び/又はデバイスのそれぞれのボタン(例えば、ホームボタン)との接触の強度を検出するように構成された1つ以上のセンサユニット1606、触知出力を生成するための1つ以上の触知出力生成ユニット1607、並びにディスプレイユニット1602、タッチ感知面ユニット1604、1つ以上のセンサユニット1606、及び1つ以上の触知出力生成ユニット1607に結合された処理ユニット1608、を含む。例示を容易にするため、図16は電子デバイス1600と一体化されたディスプレイユニット1602及びタッチ感知面ユニット1604を示すが、一部の実施形態では、これらのユニットが電子デバイスから物理的に分離しているが、これらのユニットの一方又は両方は(例えば、図3を参照して示され説明されているように)電子デバイスと通信している。一部の実施形態では、処理ユニットは、表示ユニット(例えば、表示ユニット1610)、入力検出ユニット(例えば、入力検出ユニット1612)、特性強度検出ユニット(例えば、特性強度検出ユニット1614)、動作実行ユニット(例えば、動作実行ユニット1616)、触知出力生成ユニット(例えば、触知出力生成ユニット1618)、判定ユニット(例えば、判定ユニット1620)、及び音声出力提供ユニット(例えば、音声出力提供ユニット1622)を含む。
一部の実施形態では、処理ユニット(又は、ユニット1610〜1622などの1つ以上のその構成要素)は、(例えば、表示ユニット1610を用いて)ディスプレイ上にユーザインタフェースを表示し、ユーザインタフェースを表示している間に、(例えば、入力検出ユニット1612を用いて)ホームボタン上の第1の押圧入力の検出を含むホームボタン上の入力シーケンスを検出し、第1の押圧入力を検出することは、ホームボタン上の接触の特性強度の増大を検出することを含み、ホームボタン上の第1の押圧入力の検出に応じて、第1の押圧入力が第1の強度閾値を上回る接触の特性強度の増大を含むとの(例えば、判定ユニット1620を用いた)判定、及び(例えば、特性強度検出ユニット1614を用いた)接触の特性強度が第1の強度閾値を上回って増大する時間に近接する接触の特性強度の変化が、強度変化メトリックの第1の値を有するとの(例えば、判定ユニット1620を用いた)判定に従って、(例えば、操作実行ユニット1616を用いて)ディスプレイ上に表示されるユーザインタフェースを変更する第1の動作を実行し、1つ以上の触知出力生成器を介して、(例えば、触知出力生成ユニット1618を用いて)第1の強度閾値を上回る接触の特性強度の増大に対応する第1の離散触知出力を生成し、第1の押圧入力が第1の強度閾値を上回る接触の特性強度の増大を含むとの(例えば、特性強度検出ユニット1614を用いた)判定、及び接触の特性強度が第1の強度閾値を上回って増大した時間に近接する接触の特性強度の変化が、強度変化メトリックの第1の値とは異なる、強度変化メトリックの第2の値を有するとの(例えば、特性強度検出ユニット1614を用いた)(例えば、判定ユニット1620を使用する)判定に従って、(例えば、動作実行ユニット1616を用いて)ディスプレイ上に表示されるユーザインタフェースを変更する第1の動作を実行し、1つ以上の触知出力生成器を介して、(例えば、動作実行ユニット1618を用いて)第1の強度閾値を上回る接触の特性強度の増大に対応し、かつ、第1の離散触知出力とは異なる、第2の離散触知出力を生成する、ように構成されている。
一部の実施形態では、第1の離散触知出力及び第2の離散触知出力は同じ波形を有し、第1の離散触知出力及び第2の離散触知出力はそれぞれ異なる振幅を有する。
一部の実施形態では、第1の離散触知出力は、接触の特性強度が第1の強度閾値を上回って維持されている間に停止する。
一部の実施形態では、第2の触知出力は、接触の特性強度が第1の強度閾値を上回って維持されている間に停止する。
一部の実施形態では、第1の触知出力は、強度変化メトリックの第1の値の範囲に対して生成される。
一部の実施形態では、第2の触知出力は、強度変化メトリックの第2の値の範囲に対して生成される。
一部の実施形態では、ホームボタン上の入力シーケンスを検出することは、ホームボタン上の第1の押圧入力に続いて、ホームボタン上の第1の解除入力を検出することを更に含み、第1の解除入力を検出することは、ホームボタン上の接触の特性強度の減少を検出することを含み、処理ユニットは、ホームボタン上の第1の解除入力を検出したことに応じて、第1の解除入力が第2の強度閾値を下回る接触の特性強度の減少を含み、かつ、接触の特性強度が第2の強度閾値を下回って減少した時間に近接した接触の特性強度の変化が、強度変化メトリックに対する第3の値を有する、との判定に従って、(例えば、触知出力生成ユニット1618を用いて)1つ以上の触知出力生成器を介して、第2の強度閾値を下回る接触の特性強度の減少に対応する第3の離散触知出力を生成する、ように構成されている。第1の解除入力が第2の強度閾値を下回る接触の特性強度の減少を含み、かつ、接触の特性強度が第2の強度閾値を下回って減少した時間に近接する接触の特性強度の変化が、強度変化メトリックの第3の値とは異なる、強度変化メトリックの第4の値を有するとの判定に従って、1つ以上の触知出力生成器を介して、(例えば、触知出力生成ユニット1618を用いて)接触の特性強度の第2の強度閾値を下回る減少に対応し、第3の離散触知出力とは異なる、第4の離散触知出力を生成する。
一部の実施形態では、第1及び第2の触知出力を生成することは、それぞれ、強度変化メトリックの第1及び第2の値に従って、ベース触知出力パターンに、第1の変更を適用することを含み、第3及び第4の触知出力を生成することは、それぞれ、強度変化メトリックの第3及び第4の値に従って、ベース触知出力パターンに、第1の変更とは別個の第2の変更を適用することを含む。
一部の実施形態では、第2の強度閾値は第1の強度閾値とは異なる。
一部の実施形態では、第1の離散触知出力及び第2の離散触知出力は、ホームボタンに対する複数の異なる触知出力設定のうちの現在選択されている触知出力設定に関連するベース触覚出力パターンから生成される。
一部の実施形態では、ホームボタンは、それぞれの場所に永続的に表示されるか、又はディスプレイから離れたデバイス上の永続的な場所に配置される。
一部の実施形態では、強度変化メトリックは、接触の特性強度の経時的な変化率に基づく。
一部の実施形態では、強度変化メトリックは、接触の特性強度が関連する閾値強度に達した時間に測定される、接触の特性強度の経時的な変化率に基づく。
一部の実施形態では、入力シーケンスを検出することは、ホームボタン上の第2の押圧入力を検出することを含み、第2の押圧入力を検出することは、ホームボタン上の接触の特性強度の第2の増大を検出することを含み、処理ユニットは、第2の押圧入力の検出に応じて、第1の押圧入力に対応する第1の時点と第2の押圧入力に対応する第2の時点との間の時間量に基づいて、第1の押圧入力と第2の押圧入力が所定の入力パターンの一部であるとの判定に従って、(例えば、操作実行ユニット1616を用いて)所定の入力パターンに関連する、第1の動作とは異なる第2の動作を実行し、1つ以上の触知出力生成器を介して、(例えば、触知出力生成ユニット1618を用いて)第1及び第2の触知出力とは別個の第5の離散触知出力を提供する、ように構成されている。
一部の実施形態では、入力シーケンスを検出することは、ホームボタン上の第2の押圧入力を検出することを含み、第2の押圧入力を検出することは、ホームボタン上の接触の特性強度の第2の増大を検出することを含み、処理ユニットは、第1の押圧入力の検出に応じて、(例えば、音声出力提供ユニット1622を用いて)第1の押圧入力に応じて生成された第1及び第2の触知出力のそれぞれ1つと同時に第1の音声出力を提供し、第2の押圧入力の検出に応じて、第1の押圧入力に対応する第1の時点と第2の押圧入力に対応する第2の時点との間の時間量に基づいて、第1の押圧入力及び第2の押圧入力は、所定の入力パターンの一部であるとの判定に従って、(例えば、動作実行ユニット1616を用いて)入力パターンに関連する、第1の動作とは異なる第2の動作を実行し、1つ以上の触知出力生成器を介して、(例えば、触知出力生成ユニット1618を用いて)第1の押圧入力に対して生成された第1及び第2の触知出力のそれぞれ1つと同一である第5の離散触知出力を提供し、(音声出力提供ユニット1622を用いて)第5の離散触知出力と同時に第2の音声出力を提供する、ように構成されており、第2の音声出力及び第1の音声出力は異なる音声出力パターンを有する。
一部の実施形態では、処理ユニットは、ホームボタン上の第1の押圧入力を検出したことに応じて、(例えば、表示ユニット1610を用いて)第1の押圧入力に対応する強度変化メトリックの値にかかわらず、第1のユーザインタフェースから第2のユーザインタフェースにユーザインタフェースを変更するように構成されている。
上記説明された情報処理方法での動作は任意選択で、汎用プロセッサ(例えば、図1A及び図3に関連して上記説明されたようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図15A〜15Eを参照して上述された動作は、図1A、1B、又は図16に示される構成要素によって、任意選択的に実施される。例えば、表示動作1502、検出動作1504、及び応答動作1506は、イベントソータ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に記される構成要素に基づいてどのように実装されるかは明らかであろう。
図17A〜17Dは、一部の実施形態に係る、ダブルクリック入力の第2のクリックに対して、ダブルクリック入力の第1のクリックに対するものとは異なる触知出力を提供する方法1700を示すフロー図である。方法1700は、ディスプレイ、タッチ感知面、及びタッチ感知面との接触の強度を検出するための1つ以上のセンサを備える電子デバイス(例えば、デバイス300、図3、又はポータブル多機能デバイス100、図1A)において実行される。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。一部の実施形態では、ディスプレイはタッチ感知面から分離している。一部の実施形態では、デバイスは、デバイスのホームボタン(例えば、物理ホームボタン又は仮想ホームボタン)との接触の強度を検出するための1つ以上のセンサを含む。一部の実施形態では、方法1700は、非一時的コンピュータ可読記憶媒体(例えば、非揮発性コンピュータ可読記憶媒体)に記憶され、デバイス100の1つ以上のプロセッサ122(図1A)などの電子デバイスの1つ以上のプロセッサによって実行される命令によって統制される。説明を簡単にするために、以下に、デバイス100により実行されるものとして方法1700を説明する。方法1700の一部の動作が任意選択で組み合わされ、及び/又は一部の動作の順序が任意選択で変更される。
方法1700は、ダブルクリック入力の第2のクリックに対して、ダブルクリック入力の第1のクリックとは異なる触知出力を提供することに関する。ダブルクリック入力の2回のクリックに対して異なる触知出力を提供することによって、ダブルクリックがデバイスによって登録されたか、又は2回の別個のシングルクリックがデバイスによって登録されたかどうかにかかわらず、ユーザが提供する2回の連続した押圧入力を検出した後、デバイスは、効果的かつ簡潔にユーザに知らせることができる。ユーザへの改善されたフィードバックは、(例えば、入力に対するデバイスの応答を見るときのユーザの混乱を避けるために、現在の入力がデバイスによってどのように認識されるかについての手掛かりを(例えば、2回のシングルクリック又はダブルクリックとして)ユーザに提供することによって)デバイスの操作性を高め、(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)ユーザ−デバイスインタフェースを更に効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによって、デバイスの電力使用を削減し、バッテリ寿命を改善する。
図17Aを参照すると、デバイスは、第1のユーザインタフェース(例えば、図5B5のユーザインタフェース524)(例えば、複数のアクティブ化可能なユーザインタフェースオブジェクトを含むアプリケーションに対するユーザインタフェース)を表示する(1702)。第1のユーザインタフェースを表示している間に、デバイスは、(i)(例えば、図5B6〜5B8及び図5B40〜5B42に示す)ホームボタン上の第1の押圧入力(例えば、任意選択的に押圧強度閾値よりも低い解除強度閾値を下回る接触強度の減少に対応するアップクリックイベントが後に続く、押圧強度閾値を上回る接触強度の増大に対応するダウンクリックイベント)、(ii)(例えば、図5B10及び図5B45に示す)第1の押圧入力の後に検出される、ホームボタン上の第2の押圧入力(例えば、任意選択的に押圧強度閾値よりも低い解除強度閾値を下回る接触強度の減少に対応するアップクリックイベントが任意選択的に後に続く、押圧強度閾値を上回る接触強度の増大に対応するダウンクリックイベント)、を検出する(1704)。
第1の押圧入力の検出に応じて、第2の押圧入力を検出する前に、デバイスは、第1の非視覚出力プロファイル(例えば、第1の非視覚出力プロファイルは、1つ以上の離散触知出力に対する触知出力パターン(単数又は複数)と、任意選択的に、1つ以上の触知出力に付随する1つ以上の音声出力に対する対応する音声出力パターンとを含む)を有する第1の非視覚出力を提供する(1706)。第1の非視覚出力は、第1の押圧入力が検出されたことを示すフィードバックを提供し、第1の非視覚出力は、1つ以上の触知出力生成器によって提供される触知出力(例えば、触知出力571(例えば、利得1のミニタップ270Hz)、図5B6、及び触知出力582(例えば、利得1のミニタップ270Hz、図5B40)を含む。
ホームボタン上の第1の押圧入力及び第2の押圧入力を含む入力シーケンスを検出したことに応じて、デバイスは、第1の押圧入力に対応する第1の時間(例えば、第1の押圧入力のダウンクリックイベントが検出された時間、又は第1の押圧入力のアップクリックイベントが検出された時間)、及び第2の押圧入力に対応する第2の時間(例えば、第2の押圧入力のダウンクリックイベントが検出された時間、又は第2の押圧入力のアップクリックイベントが検出された時間)との間の時間量に少なくとも部分的に基づいて、第1及び第2の押圧入力が別々の入力かどうか、又は入力パターンの一部かどうかを判定する(1708)。第1の押圧入力に対応する第1の時点と、第2の押圧入力に対応する第2の時点との間の時間量に基づいて、第1の押圧入力及び第2の押圧入力が別々の入力であるとの判定に従って、デバイスは、(i)(例えば、第1の動作は、第1のユーザインタフェース(例えば、図5B39のユーザインタフェース524)の表示を停止することを含む)第1の押圧入力に関連する第1の動作を実行し、ディスプレイ上に第2のユーザインタフェース(例えば、図5B46のユーザインタフェース522)(例えば、暗くされたホーム画面、ホーム画面、マルチページホーム画面の1次ページなどの上に重ねられた拡大フォルダ)を表示し、(ii)第1の非視覚出力プロファイルを有する第2の非視覚出力(例えば、触知出力584(例えば、利得1のミニタップ270Hz)、図5B45)を提供し、第2の非視覚出力は、第2の押圧入力が検出されたこと、かつ、第2の非視覚出力が1つ以上の触知出力生成器によって提供される触知出力を含むことを示すフィードバックを提供する。例えば、第2の時点は、第1の時点後の閾値の時間量よりも大きい(例えば、第1のダウンクリックと第2のダウンクリックとの間の持続時間は、ダブルクリック入力を検出するための時間窓よりも大きい、又は、第1のアップクリックと第2のアップクリックとの間の持続時間が、ダブルクリック入力を検出するための時間ウィンドウよりも大きく、若しくは第1のアップクリックと第2のダウンクリックとの間の時間が、ダブルクリック入力を検出するための時間ウィンドウよりも大きいので)、デバイスは、(例えば、図5B39〜5B48に示すように)第1及び第2の押圧入力が別々の入力であると判定する。一部の実施形態では、ダブルクリック入力を検出するための閾値の時間量は、第1のクリックのダウンクリックイベントが検出された時間に近接する強度変化率に従って動的に決定される。例えば、ダウンクリック強度閾値へのより高速なアプローチにより、ダブルクリック入力を検出するためにはより短い時間ウィンドウで済むので、シングルクリック入力のより迅速な確認は、(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)デバイスの操作性を向上させ、ユーザデバイスインタフェースをもっと効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによってデバイスの電力使用を削減し、バッテリ寿命を改善する。
第1の時点と第2の時点との間の時間量に基づいて、第1の押圧入力及び第2の押圧入力が(所定の)入力パターン(図5B5〜図5B14)の一部であるとの判定に従って、デバイスは、(i)入力パターンに関連する第2の動作を実行し、第2の動作は第1の動作とは異な(例えば、第2の動作は、第1のユーザインタフェース(例えば、図5B5のユーザインタフェース524)の表示を停止し、ディスプレイ上に第3のユーザインタフェースを表示することを含む)、(ii)第1の非視覚出力プロファイルとは別個の、第2の非視覚出力プロファイル(例えば、触知出力573(例えば、利得0.8のミニタップ270Hz)、図5B10)(第2の非視覚出力プロファイルは、1つ以上の離散触知出力のための触知出力パターン(単数又は複数)と、任意選択的に、1つ以上の触知出力に付随する1つ以上の音声出力に対する、対応する音声出力パターンとを含む)を有する第3の非視覚出力を提供し、第3の非視覚出力は、第2の押圧入力が検出されたことを示すフィードバックを提供し(第2の押圧入力が所定の入力パターンの一部であったことを示す第2の非視覚出力とは異なり)、第3の非視覚出力は、1つ以上の触知出力生成器によって提供される触知出力を含む。例えば、第2の時点は、第1の時点後の閾値の時間量よりも小さいので(例えば、第1のダウンクリックと第2のダウンクリックとの間の持続時間は、ダブルクリック入力を検出するための時間窓よりも小さい、又は、第1のアップクリックと第2のアップクリックとの間の持続時間が、ダブルクリック入力を検出するための時間ウィンドウよりも小さい、若しくは第1のアップクリックと第2のダウンクリックとの間の時間が、ダブルクリック入力を検出するための時間ウィンドウよりも小さいので))、デバイスは、(例えば、図5B5〜5B14に示すように)第1及び第2の押圧入力が入力パターンの一部であると判定する。一部の実施形態では、ダブルクリック入力を検出するための閾値の時間量は、第1のクリックのダウンクリックイベントが検出された時間に近接する強度変化率に従って動的に決定される。例えば、ダウンクリック強度閾値へのより高速なアプローチにより、ダブルクリック入力を検出するためにはより短い時間ウィンドウで済むので、シングルクリック入力のより迅速な確認は、(例えば、デバイスを操作/対話するときに適切な入力を提供するようにユーザを支援し、ユーザの誤りを削減することによって)デバイスの操作性を向上させ、ユーザデバイスインタフェースをもっと効率的にし、加えて、ユーザがデバイスを更に素早くかつ効率的に使用することを可能にすることによってデバイスの電力使用を削減し、バッテリ寿命を改善する。
ここで図17Bを参照すると、一部の実施形態では、第1の時点は、(例えば、図5B6及び図5B40に示すような)第1の押圧入力の特性強度が押圧強度閾値を上回って増大する時間(例えば、ITL)、及び(例えば、図5B8及び図5B42に示すような)第1の押圧入力の特性強度が解除強度閾値を下回って減少する時間(例えば、ITLR)、のうちの1つである(1710)。一部の実施形態では、第2の時点は、(例えば、図5B10及び図5B45に示すような)第2の押圧入力の特性強度が押圧強度閾値を上回って増大する時間(例えば、ITL)、及び第2の押圧入力の特性強度が解除強度閾値を下回って減少する時間(例えば、ITLR)、のうちの1つである(1712)。
一部の実施形態では、ホームボタン上の第1の押圧入力及び第2の押圧入力を含む入力シーケンスの検出に応じて、第1の押圧入力及び第2の押圧入力が別個の入力であるとの判定に従って(例えば、第2の時点は、第1の時点の後の閾値の時間量よりも大きいため)、デバイスは、(例えば、図5B39〜5B48に示すように)第2の押圧入力に関連する第3の動作を実行する(1714)。一部の実施形態では、第3の動作は、第1の押圧入力に関連する第1の動作とは異なる。一部の実施形態では、第3の動作は、入力パターンに関連する第2の動作とは異なる。一部の実施形態では、第3の動作は、第2のユーザインタフェース(例えば、図5B47のユーザインタフェース522などの、暗くしたホーム画面上に重ねられた拡大フォルダ)を停止し、ディスプレイ上に第4のユーザインタフェース(例えば、図5B48のユーザインタフェース520のなどのホーム画面)を表示することを含む。一部の実施形態では、第1の押圧入力に関連する第1の動作が実行された後、ホーム画面は既に表示され、第3の動作は影響を受けない。
一部の実施形態では、第1の押圧入力に関連する第1の動作を実行することは、第1の押圧入力の解除イベント(又はアップクリックイベント)に応じて(例えば、解除強度閾値を下回る接触強度の減少に応じて)、第1の動作を実行することを含む(1716)。
一部の実施形態では、第3の非視覚出力(例えば、触知出力573(例えば、利得0.8のミニタップ270Hz)、図5B10)の触知出力は、第1の非視覚出力の触知出力(例えば、触知出力571(例えば、利得1のミニタップ270Hz)、図5B6)とは異なる(1718)。
一部の実施形態では、第1の非視覚出力の第1の音声出力は、(図4Kに示すように)第3の非視覚出力の第2の音声出力とは異なる(1720)。一部の実施形態では、第1の非視覚出力の第1の音声出力が第3の非視覚出力の第2の音声出力と異なる場合、第1の非視覚出力の触知出力は第3の非視覚出力の触知出力と同じである。一部の実施形態では、第1の非視覚出力の第1の音声出力が、第3の非視覚出力の第2の音声出力と異なる場合、(例えば、利得1を有する触知出力571を図5B6に、利得0.8を有する触知出力573を図5B10に示すように)第1の非視覚出力の触知出力は、第3の非視覚出力の触知出力とは異なる。
一部の実施形態では、ホームボタン上の第1の押圧入力は、(図5B6〜5B8に示すように)押圧強度閾値を上回るホームボタン上の第1の接触の特性強度の増大に対応し、その後に解除強度閾値(すなわち、任意選択的に、押圧強度閾値よりも低い)を下回る第1の接触の特性強度の減少に対応する第1の解除イベントが続く、第1の押圧イベントであり、ホームボタン上の第2の押圧入力は、(図5B10に示すように)押圧強度閾値を上回るホームボタン上の第2の接触(例えば、第1の接触と同じ連続的な接触、又は第1の接触とは別個の接触)の特性強度の増大に対応する、第2の押圧イベントである(1722)。
ここで図17Cを参照すると、ホームボタン上の第1の押圧入力は、押圧強度閾値を上回るホームボタン上の第1の接触の特性強度の増大に対応し、その後に解除強度閾値(すなわち、任意選択的に、押圧強度閾値よりも低い)を下回る第1の接触の特性強度の減少に対応する第1の解除イベントが続く、第1の押圧イベントであり、ホームボタン上の第2の押圧入力は、押圧強度閾値を上回るホームボタン上の第2の接触(例えば、第1の接触と同じ連続的な接触、又は第1の接触とは別個の接触)の特性強度の増大に対応し、その後に解除強度閾値(すなわち、任意選択的に、押圧強度閾値よりも低い)を下回る第2の接触の特性強度の減少に対応する第2の解除イベントが続く、第2の押圧イベントである(1724)。
一部の実施形態では、ホームボタン上の第1の押圧入力を検出したことに応じて、第1の押圧入力の強度変化メトリックが第1の値を有する(例えば、第1の押圧入力における接触の特性強度が押圧強度閾値を上回って増大する時間に近接した、第1の押圧入力における接触の特性強度の変化が、強度変化メトリックに対する第1の値を有する)との判定に従って、デバイスは、強度変化メトリックに対する第1の値に対応する第1の振幅を有する第1の非視覚出力(例えば、触知出力590(例えば、利得0.5のマイクロタップ270Hz)、図5B63)を提供し(1726)、第1の押圧入力の強度変化メトリックが第1の値とは異なる第2の値を有する(例えば、第1の押圧入力における接触の特性強度が押圧強度閾値を上回って増大する時間に近接した、第1の押圧入力における接触の特性強度の変化が、強度変化メトリックの第1の値とは異なる強度変化メトリックに対する第2の値を有する)との判定に従って、強度変化メトリックに対する第2の値に対応する、第1の振幅とは異なる第2の振幅を有する第1の非視覚出力(例えば、触知出力592(例えば、利得1のミニタップ270Hz、図5B67))を提供する。強度変化メトリックに基づいて非視覚入力を選択する例を、方法1500を参照して、より詳細に上述した。
一部の実施形態では、ホームボタン上の第2の押圧入力を検出したことに応じて、第1の押圧入力及び第2の押圧入力が別々の入力であるという判定に従って、かつ、第2の押圧入力の強度変化メトリックが第3の値を有する(例えば、第2の押圧入力が押圧強度閾値を上回って増大する時間に近接する第2の押圧入力における接触の特性強度の変化が、強度変化メトリックに対する第3の値を有する)との判定に従って、デバイスは、強度変化メトリックに対する第3の値に対応する第3の振幅を有する第2の非視覚出力を提供し、第2の押圧入力に対する強度変化メトリックが、第3の値とは異なる第4の値を有する(例えば、第2の押圧入力が押圧強度閾値を上回って増大する時間に近接する第2の押圧入力における接触の特性強度の変化が、強度変化メトリックに対する第4の値を有する)という判定に従って、デバイスは、強度変化メトリックに対する第4の値に対応する、第3の振幅とは異なる第4の振幅を有する第2の非視覚出力を提供する(1728)。例えば、第1の押圧入力と第2の押圧入力が別々の押圧入力として解釈されると、第1及び第2の押圧入力に対する触知出力の振幅は、第1及び第2の押圧入力によって第1の強度閾値が交差した時間の押圧入力の強度の増大率に基づいて変化し、触知出力の波形及び周波数についても同様である。
また、ホームボタン上の第2の押圧入力を検出したことに応じて、第1の押圧入力及び第2の押圧入力が(所定の)入力パターンの一部であるとの判定に従って、かつ、第2の押圧入力の強度変化メトリックが第3の値を有する(例えば、第2の押圧入力が押圧強度閾値を上回って増大する時間に近接する第2の押圧入力における接触の特性強度の変化が、強度変化メトリックに対する第3の値を有する)との判定に従って、デバイスは、強度変化メトリックに対する第3の値に対応する第5の振幅を有する第3の非視覚出力を提供し、第2の押圧入力の強度変化メトリックが、第4の値を有する(例えば、第2の押圧入力が押圧強度閾値を上回って増大する時間に近接する第2の押圧入力における接触の特性強度の変化が、強度変化メトリックに対する第4の値を有する)という判定に従って、デバイスは、強度変化メトリックに対する第4の値に対応する、第5の振幅とは異なる第6の振幅を有する第3の非視覚出力を提供する(1728)。強度変化メトリックに基づいて非視覚入力を選択する例を、方法1500を参照して、より詳細に上述した。例えば、第1の押圧入力及び第2の押圧入力をダブルクリックのような同じ入力シーケンスの一部として解釈すると、第2の押圧入力に対する触知出力の振幅は、押圧入力の強度の増大率に基づいて変化する。2つの連続する押圧入力のそれぞれの押圧入力に対して提供される非視覚出力の振幅が、押圧入力に関連する強度変化メトリックの値に基づいて選択されても、2つの別々の入力の第2の押圧に対する非視覚出力の振幅は、たとえ2つの押圧入力が強度変化メトリックに対して同じ値を有していても、所定の入力パターンの第2の押圧入力に対する非視覚出力の振幅とは異なり、それによって、ユーザ入力とより一致したフィードバックをユーザに提供し(例えば、より強い押圧はより弱い押圧とは異なるフィードバックを生成する)、(例えば、ユーザが適切な入力を提供し、デバイスの操作/対話時のユーザミスを低減するよう支援することにより)デバイスの操作性を向上させ、ユーザデバイスインタフェースをより効率的にし、更に、ユーザがデバイスをより迅速かつ効率的に使用できるようにすることによって、デバイスの電力使用を低減し、バッテリ寿命を改善することができる。
ここで図17Dを参照すると、一部の実施形態では、(図5B6〜5B10に示すように)第1の押圧入力の検出に応じて、第1の押圧入力が、第2のユーザインタフェースへの遷移要求(例えば、ホーム画面に遷移するためのシングルクリック入力)、及び第3のユーザインタフェースへの遷移要求(例えば、マルチタスクユーザインタフェースに遷移するためのダブルクリック入力)に一致すると、デバイスは、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移の表示を開始する(1730)。第2の押圧入力の検出に応じて、第1のアニメーション遷移が表示されている間に第2の押圧入力が検出され、第2の押圧入力が第1の時間に受信された(例えば、ダブルクリック入力を検出するための閾値時間が経過する前に検出されたクリック)との判定に従って、デバイスは、第1のアニメーション遷移中の第1のポイントで(例えば、図5B10のユーザインタフェース525−5で)、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、第1のアニメーション遷移中の第1のポイントから第3のユーザインタフェース(例えば、図5B14のユーザインタフェース528)への第2のアニメーション遷移(例えば、図5B11〜5B13のユーザインタフェース526−1、526−2、及び526−3を含む第2のアニメーション遷移)を表示する。
また、第2の押圧入力の検出に応じて、第1の時間後の第2の時間に第2の押圧入力(例えば、ダブルクリック入力を検出するための閾値時間が経過する前に検出されたクリック)が受信されたとの判定に従って、デバイスは、第1のアニメーション遷移中の第1のポイント(例えば、図5B10のユーザインタフェース525−5)よりも後である第1のアニメーション遷移中の第2のポイント(例えば、図5B21のユーザインタフェース525−6)において、第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、第1のアニメーション遷移中の第2のポイントから第3のユーザインタフェースへの、第2のアニメーション遷移とは異なる第3のアニメーション遷移(例えば、図5B22〜5B24のユーザインタフェース527−1、527−2、及び527−3を含む第3のアニメーション遷移)を表示する。第2の押圧入力が検出されたときに基づいてアニメーションを中断する例をが、方法900を参照して上述した。
図17A〜17Dにおける動作について記載された特定の順序は単なる例示であり、記載された順序は、動作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法700、900、1100、1300、1500、及び1900)に関して本明細書に記載される他のプロセスの詳細はまた、図17A〜図17Dに関して上記した方法1700にも、類似の様式で適用可能であることに留意されたい。例えば、方法1700に関連して上述した接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションは、任意選択で、本明細書に記載の他の方法(例えば、方法700、900、1100、1300、1500、及び1900)に関連して本明細書に記載の接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションのうちの1つ以上の特性を有する。簡潔にするために、それらの詳細はここでは繰り返さない。
一部の実施形態によれば、図18は、説明される様々な実施形態の原理に従って構成された電子デバイス1800の機能ブロック図を示す。このデバイスの機能ブロックは、説明される様々な実施形態の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。図18で説明される機能ブロックが、説明される様々な実施形態の原理を実施するように、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図18に示すように、電子デバイス1800は、情報を表示するように構成されたディスプレイユニット1801(例えば、(タッチスクリーン及びタッチスクリーンディスプレイとも呼ばれる)タッチ感知ディスプレイシステム112、図1A)、タッチスクリーンディスプレイ上の接触、ジェスチャ、及び他のユーザ入力を受信するように構成された、タッチ感知面ユニット1804(例えば、ディスプレイコントローラ156及びタッチ感知ディスプレイシステム112、図1A)、タッチ感知面ユニット及び/又はデバイスのそれぞれのボタン(例えば、ホームボタン)との接触の強度を検出するように構成された1つ以上のセンサユニット1806、触知出力を生成するための1つ以上の触知出力生成ユニット1807、並びにディスプレイユニット1802、タッチ感知面ユニット1804、1つ以上のセンサユニット1806、及び1つ以上の触知出力生成ユニット1807に結合された処理ユニット1808、を含む。例示を容易にするため、図18は電子デバイス1800と一体化されたディスプレイユニット1802及びタッチ感知面ユニット1804を示すが、一部の実施形態では、これらのユニットが電子デバイスから物理的に分離しているが、(例えば、図3を参照して示され説明されているように)これらのユニットの一方又は両方は電子デバイスと通信している。一部の実施形態では、処理ユニットは、表示ユニット(例えば、表示ユニット1810)、入力検出ユニット(例えば、入力検出ユニット1812)、非視覚出力提供ユニット(例えば、非視覚出力提供ユニット1814)、判定ユニット(例えば、判定ユニット1816)、及び操作実行ユニット(例えば、操作実行ユニット1818)を含む。
一部の実施形態では、処理ユニット(又は、ユニット1810〜1818などの1つ以上のその構成要素)は、(例えば、表示ユニット1810を用いて)第1のユーザインタフェースを表示し、第1のユーザインタフェースを表示している間に、(例えば、入力検出ユニット1812を用いて)ホームボタン上の第1の押圧入力、及び、(例えば、入力検出ユニット1812を用いて)第1の押圧入力後に検出された、ホームボタン上の第2の押圧入力を検出し、第1の押圧入力を検出したことに応じ、かつ、第2の押圧入力を検出する前に、(例えば、非視覚出力提供ユニット1814を用いて)第1の非視覚出力プロファイルを有する第1の非視覚出力を提供し、ここで、第1の非視覚出力は、第1の押圧入力が検出され、かつ第1の非視覚出力が1つ以上の触知出力生成器によって提供される触知出力を含むことを示すフィードバックを提供し、ホームボタン上の第1の押圧入力及び第2の押圧入力を含む入力シーケンスを検出したことに応じて、第1の押圧入力に対応する第1の時点と第2の押圧入力に対応する第2の時点との間の時間量に基づいて、(例えば、動作実行ユニット1818を用いて)第1の押圧入力及び第2の押圧入力は、別々の入力であるとの判定に従って、第1の押圧入力に関連する第1の動作を実行し、(例えば、非視覚出力提供ユニット1814を用いて)第2の押圧入力が検出されたこと、及び第2の非視覚出力が1つ以上の触知出力生成器によって提供される触知出力を含むこと、を示すフィードバックを提供する、第1の非視覚出力プロファイルを有する第2の非視覚出力を提供し、第1の時点と第2の時点との間の時間量に基づいて、第1の押圧入力及び第2の押圧入力が入力パターンの一部であるとの判定に従って、(例えば、動作実行ユニット1818を用いて)入力パターンに関連する、第1の動作とは異なる第2の動作を実行し、(例えば、非視覚出力提供ユニット1814を用いて)第3の非視覚出力であって、第2の押圧入力が検出されたこと、及び第3の非視覚出力が1つ以上の触知出力生成器によって提供される触知出力を含むこと、を示すフィードバックを提供する、第1の非視覚出力プロファイルとは異なる第2の非視覚出力プロファイルを有する第3の非視覚出力を提供する、ように構成されている。
一部の実施形態では、第1の時点は、第1の押圧入力の特性強度が押圧強度閾値を上回って増大した時間、及び第1の押圧入力の特性強度が解除強度を下回って減少した時間、のうちの1つである。
一部の実施形態では、第2の時点は、第2の押圧入力の特性強度が押圧強度閾値を上回って増大した時間、及び第2の押圧入力の特性強度が解除強度閾値を下回って減少した時間、のうちの1つである。
一部の実施形態では、処理ユニットは、ホームボタン上の第1の押圧入力及び第2の押圧入力を含む入力シーケンスを検出したことに応じて、第1の押圧入力及び第2の押圧入力が別々の入力であるとの判定に従って、(例えば、動作実行ユニット1818を用いて)第2の押圧入力に関連する第3の動作を実行するように構成されている。
一部の実施形態では、第1の押圧入力に関連する第1の動作を実行することは、第1の押圧入力の解除イベントに応じて第1の動作を実行することを含む。
一部の実施形態では、第3の非視覚出力の触知出力は、第1の非視覚出力の触知出力とは異なる。
一部の実施形態では、第1の非視覚出力の第1の音声出力は、第3の非視覚出力の第2の音声出力とは異なる。
一部の実施形態では、ホームボタン上の第1の押圧入力は、押圧強度閾値を上回るホームボタン上の第1の接触の特性強度の増大に対応し、その後に解除強度閾値を下回る第1の接触の特性強度の減少に対応する第1の解除イベントが続く、第1の押圧イベントであり、ホームボタン上の第2の押圧入力は、押圧強度閾値を上回るホームボタン上の第2の接触の特性強度の増大に対応する第2の押圧イベントである。
一部の実施形態では、ホームボタン上の第1の押圧入力は、押圧強度閾値を上回るホームボタン上の第1の接触の特性強度の増大に対応し、その後に解除強度閾値を下回る第1の接触の特性強度の減少に対応する第1の解除イベントが続く、第1の押圧イベントであり、ホームボタン上の第2の押圧入力は、押圧強度閾値を上回るホームボタン上の第2の接触の特性強度の増大に対応し、その後に解除強度閾値を下回る第2の接触の特性強度の減少に対応する第2の解除イベントが続く、第2の押圧イベントである。
一部の実施形態では、処理ユニットは、ホームボタン上の第1の押圧入力を検出したことに応じて、第1の押圧入力の強度変化メトリックが第1の値を有するとの判定に従って、(例えば、非視覚出力提供ユニット1814を用いて)強度変化メトリックに対する第1の値に対応する第1の振幅を有する第1の非視覚出力を提供し、第1の押圧入力の強度変化メトリックが、第1の値とは異なる第2の値を有するとの判定に従って、(例えば、非視覚出力提供ユニット1814を用いて)強度変化メトリックに対する第2の値に対応する、第1の振幅とは異なる第2の振幅を有する第1の非視覚出力を提供する、ように構成されている。
一部の実施形態では、処理ユニットは、ホームボタン上の第2の押圧入力を検出したことに応じて、第1の押圧入力及び第2の押圧入力が別個の入力であるとの判定に従って、第2の押圧入力の強度変化メトリックが第3の値を有するとの判定に従って、(例えば、非視覚出力提供ユニット1814を用いて)強度変化メトリックに対する第3の値に対応する第3の振幅を有する第2の非視覚出力を提供し、第2の押圧入力の強度変化メトリックが、第3の値とは異なる第4の値を有するとの判定に従って、(例えば、非視覚出力提供ユニット1814を用いて)強度変化メトリックに対する第4の値に対応する、第3の振幅とは異なる第4の振幅を有する第2の非視覚出力を提供し、第1の押圧入力及び第2の押圧入力が入力パターンの一部であるとの判定に従って、第2の押圧入力の強度変化メトリックが第3の値を有するとの判定に従って、(例えば、非視覚出力提供ユニット1814を用いて)強度変化メトリックに対する第3の値に対応する第5の振幅を有する第3の非視覚出力を提供し、第2の押圧入力の強度変化メトリックが、第4の値を有するとの判定に従って、(例えば、非視覚出力提供ユニット1814を用いて)強度変化メトリックに対する第4の値に対応する、第5の振幅とは異なる第6の振幅を有する第3の非視覚出力を提供するように構成されている。
一部の実施形態では、処理ユニットは、第1の押圧入力を検出したことに応じて、第1の押圧入力が、第2のユーザインタフェースへの遷移要求及び第3のユーザインタフェースへの遷移要求と一致すると、(例えば、表示ユニット1810を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を開始し、第2の押圧入力の検出に応じて、第1のアニメーション遷移が表示されている間に、第2の押圧入力が検出され、第2の押圧入力が第1の時間に受信されたとの判定に従って、第1のアニメーション遷移中の第1のポイントにおいて、(例えば、表示ユニット1810を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、(例えば、表示ユニット1810を用いて)第1のアニメーション遷移中の第1のポイントから第3のユーザインタフェースへの第2のアニメーション遷移を表示し、第1の時間より後の第2の時間において第2の押圧入力を受信したとの判定に従って、第1のアニメーション遷移中の第1のポイントより後の、第1のアニメーション遷移中の第2のポイントにおいて、(例えば、表示ユニット1810を用いて)第1のユーザインタフェースから第2のユーザインタフェースへの第1のアニメーション遷移を中断し、(例えば、表示ユニット1810を用いて)第1のアニメーション遷移中の第2のポイントから第3のユーザインタフェースへの、第2のアニメーション遷移とは異なる第3のアニメーション遷移を表示するように構成されている。
上記説明された情報処理方法での動作は任意選択で、汎用プロセッサ(例えば、図1A及び図3に関連して上記説明されたようなもの)又は特定用途向けチップなどの、情報処理デバイス内の1つ以上の機能モジュールを実行することによって実施される。
図17A〜17Dを参照して上述された動作は、図1A、1B、又は図18に示す構成要素によって、任意選択的に実施される。例えば、表示動作1702、検出動作1704、応答動作1706、及び応答動作1708は、イベントソータ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に記される構成要素に基づいてどのように実装されるかは明らかであろう。
図19A〜19Cは、一部の実施形態に係る、デバイス上の永続的な非機械式ボタンのアクティブ化を示すための離散触知出力を提供する方法1900を示すフロー図である。方法1900は、ディスプレイ、タッチ感知面、及びタッチ感知面との接触の強度を検出するための1つ以上のセンサを備える電子デバイス(例えば、デバイス300、図3、又はポータブル多機能デバイス100、図1A)において実行される。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチ感知面がディスプレイ上にあるか又はこれに組み込まれている。一部の実施形態では、ディスプレイはタッチ感知面から分離している。一部の実施形態では、デバイスは触知出力を生成するための1つ以上の触知出力生成器を含む。一部の実施形態では、デバイスは、デバイスのそれぞれのボタン(例えば、物理ホームボタン又は仮想ホームボタンなどのホームボタン)との接触の強度を検出するための1つ以上のセンサを含む。一部の実施形態では、方法1900は、非一時的コンピュータ可読記憶媒体(例えば、非揮発性コンピュータ可読記憶媒体)に記憶され、デバイス100の1つ以上のプロセッサ122(図1A)などの電子デバイスの1つ以上のプロセッサによって実行される命令によって統制される。説明を簡単にするために、以下に、デバイス100により実行されるものとして方法1900を説明する。方法1900の一部の動作が任意選択で組み合わされ、及び/又は一部の動作の順序が任意選択で変更される。
方法1900は、デバイス上の永続的非機械式ボタンのアクティブ化を示すために提供される離散触知出力の特定の設計に関する。波形(例えば、中立位置を横切るアクチュエータによって行われた振動数)、及び触知出力の周波数範囲は共に、ボタンが押圧入力によってアクティブ化されたことを示す自然で簡潔なフィードバックを生成し、同時に、アクチュエータ(単数又は複数)の振動を継続して、触知出力を不必要に延長することにより、ユーザに過度の動揺をもたらすことなく、(例えば、デバイスを操作/対話するときに、ユーザが適切な入力を提供し、ユーザミスを減らすのを支援することによって)デバイスの操作性を向上させ、ユーザデバイスインタフェースをより効率的にし、更に、ユーザがデバイスをより迅速かつ効率的に使用できるようにすることによって、デバイスの電力使用を低減し、バッテリ寿命を向上させることができる。更に、きめ細かく選択された触知出力パターンにより、ユーザに提供されるフィードバックの効率を向上させ、デバイスの電池寿命を向上させることができる。
図19Aを参照すると、デバイスは、それぞれのボタン(例えば、図5A1のボタン204)上の入力を検出し、1つ以上の触知出力生成器は、それぞれのボタンが機械的に押し込まれたときにそれぞれのボタンのアクティブ化を検出する機械的スイッチの代わりにそれぞれのボタンがアクティブ化されたことを示す触知出力を生成するために用いられる(1902)。それぞれのボタンの入力を検出したことに応じて、(i)入力が、アクティブ化基準であって、入力がアクティブ化基準を満たすためにそれぞれの強度閾値(例えば、浅い押圧強度閾値ITL)を上回る強度を含むことの要求を含む、アクティブ化基準を満たすとの判定に従って(例えば、図5A9〜5A11)、デバイスは、1つ以上の触知出力生成器の1つ以上の対応する中立位置に対して、1つ以上の触知出力生成器の0.5〜4サイクルの振動を含む第1の触知出力パターンを有する第1の触知出力(例えば、図5A11の触知出力503(例えば、利得0.5のミニタップ270Hz))を提供し、1つ以上の触知出力生成器の振動は、80Hz〜400Hzの周波数(例えば、図4F1及び図4G1に示すように、ミニタップ80Hz、100Hz、125Hz、150Hz、200Hz、230Hz、270Hz又は300Hz)で生じる(1904)。入力がアクティブ化基準を満たさないとの判定に従って、デバイスは、(例えば、図5A4〜5A8に示す)第1の触知出力を提供することをやめる。
一部の実施形態では、第1の触知出力パターンは、1つ以上の触知出力生成器の1つ以上の対応する中立位置に対して、1つ以上の触知出力生成器の0.5〜2サイクルの振動(例えば、図4F1に示すように、2サイクルの振動のフルタップ、1サイクル振動のミニタップ、0.5サイクルの振動のマイクロタップ)を含む(1906)。
一部の実施形態では、第1の触知出力パターンは、1つ以上の触知出力生成器の1つ以上の対応する中立位置に対して、1つ以上の触知出力生成器の1〜2サイクルの振動の(例えば、図4F1に示すように、2サイクルの振動のフルタップ、1サイクルの振動のミニタップ)を含む(1908)。
一部の実施形態では、1つ以上の触知出力生成器の振動は、200Hz〜350Hzの間の周波数で生じる(図4F1に示すように)(1910)。
一部の実施形態では、1つ以上の触知出力生成器の振動は、225Hz〜325Hzの間の周波数(例えば、図4F1及び4Kに示すように、230Hzのミニタップ、270Hzのミニタップ、又は300Hzのミニタップ)で生じる(1912)。
一部の実施形態では、1つ以上の触知出力生成器の振動は、150Hz〜400Hzの間の2つ以上の周波数から選択される可変周波数(例えば、図4F1及び4Kに示すように、230Hzのミニタップ、270Hzのミニタップ、又は300Hzのミニタップ)で生じる(1914)。
ここで図19Bを参照すると、一部の実施形態では、ホームボタン上の入力を検出したことに応じて、入力がアクティブ化基準(例えば、入力がそれぞれの強度閾値を上回る強度を含む)を満たし、かつ、入力の特性強度がそれぞれの強度閾値を上回って増大する時間に近接する入力の特性強度の変化が、強度変化メトリックに対する第1の値(例えば、「弱い」強度)を有する、との判定に従って、デバイスは、強度変化メトリックの第1の値に対応する第1の振幅を有する第1の触知出力(例えば、触知出力590(例えば、利得0.5のミニタップ270Hz、図5B62)を提供し(1916)、入力がアクティブ化基準(例えば、入力がそれぞれの強度閾値を上回る強度を含む)を満たし、かつ、入力の特性強度がそれぞれの強度閾値を上回って増大する時間に近接する入力の特性強度の変化が、強度変化メトリックに対する第1の値とは異なる強度変化メトリックに対する第2の値(例えば、「通常の強度」)を有するとの判定に従って、デバイスは、強度変化メトリックの第2の値に対応する、第1の振幅とは異なる第2の振幅を有する第1の触知出力(例えば、触知出力592(例えば、利得1のミニタップ270Hz)、図5B67)を提供する。強度変化メトリックに基づいて触知出力の振幅を変化させる例を、方法1500を参照して、より詳細に上述した。
一部の実施形態では、ホームボタン上の入力を検出した後、ホームボタン上の第2の入力を検出する(1918)。第1の入力を検出したことに応じて、第2の入力を検出する前に、デバイスは、第3の振幅を有する第1の触知出力(例えば触知出力571(例えば、利得1のミニタップ270Hz)図5B6、又は触知出力582(例えば、利得1のミニタップ270Hz)、図5B40)を提供する(1918)。入力及び第2の入力を含む入力シーケンスを検出したことに応じて、デバイスは、第1の時点(例えば、入力に対する押圧イベントが検出された時間、又は入力に対する解除イベントが検出された時間)と、第2の入力に対応する第2の時点(例えば、第2の入力に対する押圧イベントが検出された時間、又は第2の入力に対する解除イベントが検出された時間)との間の時間量の少なくとも一部に基づいて、入力及び第2の入力が(例えば、図5B39〜5B48に示すように)別々の入力かどうか、又は(例えば、図5B5〜5B14に示すように)入力パターンの一部かどうかを判定する。
入力に対応する第1の時点と、第2の入力に対応する第2の時点との間の時間量に基づいて、(例えば、図5B39〜5B48に示すように)(例えば、第2の時点が、第1の時点の後の閾値の時間量よりも大きいため)入力及び第2の入力が別々の入力であるとの判定に従って、デバイスは、第3の振幅を有する第2の触知出力(例えば、触知出力584(例えば、利得1のミニタップ270Hz)、図5B45)を提供し、第2の触知出力は、第2の入力が検出されたことを示すフィードバックを提供する。第1の時点と第2の時点との間の時間量に基づいて、(例えば、図5B5〜5B14に示すように)入力及び第2の入力が(所定の)入力パターンの一部であるとの判定に従って(例えば、第2の時点が、第1の時点の後の閾値の時間量よりも小さいため)、デバイスは、第3の振幅とは別個の第4の振幅を有する第3の触知出力(例えば、触知出力573(例えば、利得0.8のミニタップ270Hz)、図5B10)を提供し、第3の触知出力は、第2の入力が検出されたことを示すフィードバックを提供する。一部の実施形態では、時間の閾値量は、イベント時間期間に押圧する押圧イベントである。一部の実施形態では、時間の閾値量は、イベント時間期間に解除する解除イベントである。時間閾値に基づいて触知出力の振幅を変化させる例を、方法1700を参照して、より詳細に上述した。
ここで図19Cを参照すると、一部の実施形態では、第1のユーザインタフェース(例えば、図5A3のユーザインタフェース512)(例えば、第1のアプリケーションのユーザインタフェース、暗くされたホーム画面に重ねられた拡大フォルダ、暗くされたホーム画面に重ねられた拡大通知、暗くされたホーム画面に重ねられたコントロールパネル、複数のユーザインタフェースを同時に提示するマルチタスクユーザインタフェース、マルチページホーム画面の2次ページ、通知画面、ウィジェット画面など)がディスプレイ上に表示されている間に、ホームボタン上の入力が検出された。ホームボタン上の入力を検出したことに応じて、(例えば、図5A11に示すように)入力がアクティブ化基準を満たすとの判定に従って、デバイスは、第1のユーザインタフェースの表示を停止し、ディスプレイ(例えば、ホーム画面、マルチページホーム画面の第1ページ)上に第2のユーザインタフェース(例えば、ユーザインタフェース510、図5A14)を表示し、(例えば、図5A4〜5A7に示すように)入力がアクティブ化基準を満たさないと判定したことに応じて、デバイスは、ディスプレイ上の第1のユーザインタフェース(例えば、ユーザインタフェース512、図5A8)の表示を維持する。
一部の実施形態では、第2のユーザインタフェースは、図5A14のユーザインタフェース510などのシステムユーザインタフェース(例えば、ホーム画面、マルチページホーム画面の主ページ、マルチタスキング画面、仮想アシスタント画面など)である。
図19A〜19Cにおける動作について記載された特定の順序は単なる例示であり、記載された順序は、操作を実行することができる唯一の順序であることを示すことを意図するものではないことを理解されたい。当業者であれば、本明細書で説明される動作を再順序付けるための様々な方法を認識するであろう。加えて、本明細書に記載される他の方法(例えば、方法700、900、1100、1300、1500、及び1700)に関して本明細書に記載される他のプロセスの詳細はまた、図19A〜図19Cに関して上記した方法1900にも、類似の様式で適用可能であることに留意されたい。例えば、方法1900に関連して上述した接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションは、任意選択で、本明細書に記載の他の方法(例えば、方法700、900、1100、1300、1500、及び1700)に関連して本明細書に記載の接触、ジェスチャ、ユーザインタフェースオブジェクト、触知出力、音声出力、強度閾値、時間閾値、フォーカスセレクタ、及びアニメーションのうちの1つ以上の特性を有する。簡潔にするために、それらの詳細はここでは繰り返さない。
一部の実施形態によれば、図20は、説明される様々な実施形態の原理に従って構成された電子デバイス2000の機能ブロック図を示す。このデバイスの機能ブロックは、説明される様々な実施形態の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。図20で説明される機能ブロックが、説明される様々な実施形態の原理を実施するように、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者には理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックのあらゆる可能な組み合わせ若しくは分割、又は更なる定義を、任意選択的に、支持する。
図20に示すように、電子デバイス2000は、情報を表示するように構成されたディスプレイユニット2001(例えば、(タッチスクリーン及びタッチスクリーンディスプレイとも呼ばれる)タッチ感知ディスプレイシステム112、図1A)、タッチスクリーンディスプレイ上の接触、ジェスチャ、及び他のユーザ入力を受信するように構成された、タッチ感知面ユニット2004(例えば、ディスプレイコントローラ156及びタッチ感知ディスプレイシステム112、図1A)、タッチ感知面ユニット及び/又はデバイスのそれぞれのボタン(例えば、ホームボタン)との接触の強度を検出するように構成された1つ以上のセンサユニット2006、触知出力を生成するための1つ以上の触知出力生成ユニット2007、並びにディスプレイユニット2002、タッチ感知面ユニット2004、1つ以上のセンサユニット2006、及び1つ以上の触知出力生成ユニット2007に結合された処理ユニット2008、を含む。例示を容易にするため、図20は電子デバイス2000と一体化されたディスプレイユニット2002及びタッチ感知面ユニット2004を示すが、一部の実施形態では、これらのユニットが電子デバイスから物理的に分離しているが、(例えば、図3を参照して示され説明されているように)これらのユニットの一方又は両方は電子デバイスと通信している。一部の実施形態では、処理ユニットは、表示ユニット(例えば、表示ユニット2009)、入力検出ユニット(例えば入力検出ユニット2010)、判定ユニット(例えば判定ユニット2012)、及び触知出力提供ユニット(例えば、触知出力提供ユニット2014)を含む。
一部の実施形態では、処理ユニット(又はユニット2010〜2014などの、その1つ以上の構成要素)は、(例えば、入力検出ユニット2010を用いて)それぞれのボタンの入力を検出し、それぞれのボタンが機械的に押し込まれたときにそれぞれのボタンのアクティブ化を検出する機械的スイッチの代わりに、(例えば、1つ以上の触知出力提供ユニット2007とともに触知出力提供ユニット2014を用いて)1つ以上の触知出力生成器を使用して、それぞれのボタンがアクティブ化されていることを示す触知出力を生成し、それぞれのボタンの入力を検出したことに応じて、(i)入力が、アクティブ化基準であって、入力がアクティブ化基準を満たすためにそれぞれの強度閾値を上回る強度を含むことの要求を含む、アクティブ化基準を満たすとの(例えば、判定ユニット2012を用いた)判定に従って、(例えば、1つ以上の触知出力提供ユニット2007とともに、触知出力提供ユニット2014を用いて)1つ以上の触知出力生成器の1つ以上の対応する中立位置に対して、1つ以上の触知出力生成器の0.5〜4サイクルの振動であって、1つ以上の触知出力生成器の振動が80Hz〜400Hzの周波数で生じる、振動を含む第1の触知出力パターンを有する第1の触知出力を提供し、(ii)入力が(例えば、判定ユニット2012を用いた)アクティブ化基準を満たさないとの判定に従って、第1の触知出力を提供することをやめる、ように構成されている。
一部の実施形態では、第1の触知出力パターンは、1つ以上の触知出力生成器の1つ以上の対応する中立位置に対して、1つ以上の触知出力生成器の0.5〜2サイクルの振動を含む。
一部の実施形態では、第1の触知出力パターンは、1つ以上の触知出力生成器の1つ以上の対応する中立位置に対して、1つ以上の触知出力生成器の1〜2サイクルの振動を含む。
一部の実施形態では、1つ以上の触知出力生成器の振動は、200Hz〜350Hzの周波数で生じる。
一部の実施形態では、1つ以上の触知出力生成器の振動は、225Hz〜325Hzの周波数で生じる。
一部の実施形態では、1つ以上の触知出力生成器の振動は、150Hz〜400Hzの2つ以上の周波数から選択される可変周波数で生じる。
一部の実施形態では、処理ユニットは、ホームボタン上の入力を検出したことに応じて、入力がアクティブ化基準を満たし、かつ、入力の特性強度がそれぞれの強度閾値を上回って増大する時間に近接する入力の特性強度の変化が、強度変化メトリックに対する第1の値を有する、との判定に従って、(例えば、1つ以上の触知出力提供ユニット2007とともに触知出力提供ユニット2014を用いて)強度変化メトリックの第1の値に対応する第1の振幅を有する第1の触知出力を提供し、入力がアクティブ化基準を満たし、かつ、入力の特性強度がそれぞれの強度閾値を上回って増大する時間に近接する入力の特性強度の変化が、強度変化メトリックに対する第1の値とは異なる強度変化メトリックに対する第2の値を有する、との判定に従って、(例えば、1つ以上の触知出力提供ユニット2007とともに触知出力提供ユニット2014を用いて)強度変化メトリックの第2の値に対応する、第1の振幅とは異なる第2の振幅を有する第1の触知出力を提供する、ように構成されている。
一部の実施形態では、処理ユニットは、ホームボタン上の入力を検出した後、(例えば、入力検出ユニット2010を用いて)ホームボタン上の第2の入力を検出し、第1の入力を検出したことに応じて、かつ、第2の入力を検出する前に、(例えば、1つ以上の触知出力提供ユニット2007とともに触知出力提供ユニット2014を用いて)第3の振幅を有する第1の触知出力を提供し、入力及び第2の入力を含む入力シーケンスを検出したことに応じて、入力に対応する第1の時点と第2の入力に対応する第2の時点との間の時間量に基づいて、入力及び第2の入力が別々の入力であるとの判定に従って、(例えば、1つ以上の触知出力提供ユニット2007とともに触知出力提供ユニット2014を用いて)第3の振幅を有する第2の触知出力を提供し、第2の触知出力は、第2の入力が検出されたことを示すフィードバックを提供し、第1の時点と第2の時点との間の時間量に基づいて、入力及び第2の入力が入力パターンの一部であるとの判定に従って、(例えば、1つ以上の触知出力提供ユニット2007とともに触知出力提供ユニット2014を用いて)第3の振幅とは別個の第4の振幅を有する第3の触知出力を提供し、第3の触知出力は、第2の入力が検出されたことを示すフィードバックを提供する、ように構成されている。
一部の実施形態では、ホームボタン上の入力は、第1のユーザインタフェースがディスプレイ上に表示されている間に検出されており、処理ユニットは、ホームボタン上の入力を検出したことに応じて、入力がアクティブ化基準を満たすとの判定に従って、(例えば、表示ユニット2009を用いて)第1のユーザインタフェースの表示を停止し、ディスプレイ上に(例えば、表示ユニット2009)に第2のユーザインタフェースを表示し、入力がアクティブ化基準を満たさないと判定したことに応じて、(例えば、表示部との表示ユニット2009を用いて)第1のユーザインタフェースの表示を維持する、ように構成されている。
一部の実施形態では、第2のユーザインタフェースは、システムユーザインタフェースである。
上記説明された情報処理方法での動作は任意選択で、汎用プロセッサ(例えば、図1A及び図3に関連して上記説明されたようなもの)又は特定用途向けチップなどの、情報処理装置内の1つ以上の機能モジュールを実行することによって実施される。
図19A〜図19Cを参照して上述された動作は、図1A〜1B、又は図20に示す構成要素によって、任意選択的に実施される。例えば、検出動作1902及び応答動作1904は、イベントソート部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に記される構成要素に基づいてどのように実装されるかは明らかであろう。
上述した説明は、説明の目的上、特定の実施形態を参照して説明されている。しかしながら、上記の例示的な議論は、網羅的であること、又は開示される厳密な形態に本発明を限定することを意図するものではない。上記の教示を鑑みて、多くの修正及び変形が可能である。本発明の原理及びその実際的な応用を最良の形で説明し、それによって他の当業者が、想到される特定の用途に好適な様々な改良で本発明及び様々な実施形態を最良の形で使用することを可能とするために、これらの実施形態を選択し説明した。