web-dev-qa-db-ja.com

Android

バックグラウンド:

Androidには、長いクリックが行われたときに発生するポップアップメニュー(右クリックのようなもの)の機能があります。これは通常、リストビューで行われますが、どこでも行うことができます。そして、リストビューでさえ、それは一貫して行われません。

質問:

多くのユーザーがこのロングクリックのメタファーに気付いていないので(まだ?)、同じメニューを表示するフルオンボタンよりも小さいロングクリックオプションが利用できることを示すための合意されたベストプラクティスがありますか?

2011年12月12日更新: MusicなどのGoogleの最新アプリやHoneycombのその他のアプリでは、ICSとOSのバージョンが低いほど、ロングクリックオプションがなくなったようです。ドードーの道と、リスト行の右側のアイコン(ほとんどの場合、小さな三角形)に置き換えられました。

34
Manfred Moser

これを行う1つの方法は、オレンジから白へのカラーランプでListViewが行うように、遷移またはアニメーションを使用することです。これを行う方法については、 TransitionDrawable を参照してください。ここで関連するソースを確認することもできます。

クイックアップデート:トランジションを使用する理由は、ユーザーがこのアイテムが「アクティブ」であるというフィードバックをすぐに取得できるためです-少しだけ操作すると何かが発生します。これは、「適切なフィードバックを表示する」- Android UIデザインのヒント とうまく適合します。

別のオプションは、リソースで説明されているように、長押しの代わりにQuick Actionsパターンの使用を開始することです未満:

ただし、現時点ではクイックアクションはAndroidフレームワークに含まれていません。

17
Roman Nurik

実際に長押しアクションにはいくつかの問題があります。a)長押しアクションは、ListViewのフェード色の遷移でも実際には発見できません。 Androidデバイスをしばらく(場合によっては1年ほど)使用したことがある人をたくさん見かけましたが、「はい、できます。ロングクリックして「コールログから削除」を選択して、コールログエントリを削除します。通常の答えは、「本当ですか?アプリの一部を長押しするだけで、いくつかの秘密のオプションが表示されますか?! 「したがって、これらのアクションを発見した後でも、一部のユーザーはこれらがいくつかの秘密の隠された機能であり、実際にはアプリケーションの通常の使用法の一部ではないと考えています。しかし、もう一度これを理解したら、おそらく他のアプリケーションで試してみるでしょうまた:)

b)クイックアクションは現在、単なるパターンであり、アプリにプラグインするだけの実際の統合されたUIコンポーネントではありません(利用可能なAPIはありません)。そのために独自のウィジェットをロールして、場所を変えて、プラットフォームのクイックアクションUIコンポーネントとは異なるものにする必要があります。または、Androidのソースコードからコードや画像を取り込んで、一部のOEM/Operatorカスタマイズデバイスや将来のプラットフォームバージョンで壊れているように見えることもあります。悲しい部分は、QuickActionsの標準APIが導入された場合でも、おそらくしばらくの間、Android 1.6/2.1/2.2をサポートする必要があるでしょう:/

ローマンが指摘した2つのソリューションの1つを使用する必要があると思います。これらのコンテキスト固有のアクションを処理するまったく異なる方法を実装すると、ユーザーに不慣れに見える危険性があります。長押しメニューを使用すると、実装がはるかに簡単になりますが、発見が難しくなります。クイックアクションパターンを使用すると、実装に多くの労力が必要になりますが、発見がはるかに簡単になります(おそらく:))。

3
Tauno Talimaa