質問はかなり明確で、なぜ一部の回答者が混乱しているのかしかわかりません。あなたは、http://code.google.com/p/android-wheel/のVertical Wheelコンポーネントを、水平のジェスチャーとスクロールで動作させる方法を尋ねました。
私は最近自分のプロジェクトでこれを行っています。すべての
まず、著者の主張概念的枠組みを提供します。実際には、実現するためにはるかに多くの作業が必要です。 HorizontalWheelを作成するには、WheelViewとWheelScrollerを拡張し、高さに基づいて両方のクラスのすべてのロジックをオーバーライドするコードを書きました。これを行うために、WheelViewとWheelScrollerのいくつかのフィールドにはゲッター/セッターが必要でした。プライベートではなく保護されたものとして公開されるようにする必要がある定数やメソッドもあります。したがって、オーバーライドすることができます。たとえば、WheelViewはWheelScrollerを挿入する方法やカスタムScrollingListenerを設定する方法を提供しません。
最後に、私はカスタマイズ全体で苦労してきた部品の設計における根本的な問題があります。私は今問題に苦しんでいます。コンポーネントは基本的に、それが含まれているビューのリストを、「現在のアイテム」==ウィジェットの中央にあるビューとして扱います。これは、ウィジェットの中心に最も近いビューの中点に基づいて、スクロールと位置揃えを測定します。これにより、ウィジェットにスナップツーミドル効果が与えられます。 1つの要素だけが表示されるような影がある場合、スナップ効果は素晴らしいです。しかし、そのユースケースから逸脱して、シャドウ間に複数のアイテムが表示されたり、異なるスナップ動作が必要な場合は、問題が発生します。コンポーネントのビューリサイクラは複数のビュータイプもサポートしていません。
私はこれらの事柄のほとんどを修正し、すぐに公開します。私はこのコンポーネントを再構築して最初の完全に表示可能なアイテム== first_itemを呼び出すことができました。それから、スクリーンショットのユースケースにしか意味をなさないので、「現在のアイテム」の概念を取り除き、コンポーネントを不必要に拡張してカスタマイズすることを難しくしています。途切れることなく、中間、左、右にスナップすることも必要な機能のように思えます。設定が必要です。
お返事ありがとうございます。私はあなたが「レイアウトxmlを回転させる」ことによって何を意味するのかを正確に理解することができません。これは、initResourcesIfNecessary()をオーバーライドすることによって、あるいは水平ホイールが定義されているxmlに何らかの形でプログラムで実行されますか? – Matt
ええと、もう一度見てみると、実際には画像がロードされています。私はその前回のことを忘れていたとは思わない。バックグラウンドリソースがキャンバスで回転しない可能性がありますか?イメージエディタでイメージを回転するだけですか? – BoredAndroidDeveloper
申し訳ありませんが、私を失った。イメージはどこにありますか?私はwheelviewプロジェクト内の画像に気付かなかった。 – Matt