現在のオプションはViews
または古いListView
に依存しているので、私のアプリケーションのホイールピッカーを実装しようとしていますので、RecyclerView
のソリューションをベースにしたいと思います。私が今までやったRecyclerViewで選択したアイテムを垂直に中央に配置する
は、最初と最後の項目を上下にRecyclerView
に集中されるようにPADDING_TYPE
という名前の、異なるタイプの開始時およびの終わりに設定しました。
recyclerView.post(new Runnable() {
@Override
public void run() {
//80dp is the height of a regular list item
int paddingHeight = ((recyclerView.getHeight()-SettingsManager.dptopixels(80))/2);
binding.getRoot().getLayoutParams().height = paddingHeight;
}
});
ここでは、選択した項目を垂直に中央に維持する方法を理解しようとしています。
私がこれまで試したどのような:予想通り
LinearSnapHelper helper = new LinearSnapHelper();
helper.attachToRecyclerView(mRecyclerView);
の1- LinearSnapHelperが動作しない、私も(おそらく間違った方法で)いくつかのメソッドをオーバーライドしようとしたが、私ができます自動的に選択範囲を垂直方向に中央にします。そしてそれは十分にうまくいっていない、選択された項目は、垂直の中心にロックされるのではなく、 "移動"。 Iコードを適応させる試み
2-カスタムRecyclerView.OnScrollListener
は、垂直スクロール差と
allPixelsDate += dx;
RecyclerView.OnScrollListener
この行を変更することにより、水平方向のスクロールを使用するhereを提案:
allPixelsDate += dy;
この実装nはリストの垂直中心に最も近い項目を選択するが、中心にロックすることはないため、近い位置にいる。
このような結果を得ることは可能でしょうか?どうやって?
もっと明確にするために、私はhereを1:10とした結果を得たいと思います。選択は中央でロックされます。
参考文献[link](http://developer.samsung.com/s-pen-sdk/samples/Circle-Launcher) – Moinkhan
私はこれをhttps://github.com/ai212983/で行っています。 android-spinnerwheelと私はあなたが垂直Mannner https://github.com/Jaouan/Carousel-Browsing-Example – Nepster
でこれを必要と思うこれを達成するために垂直にこのメソッドを使用することができます[これを開く](http://stackoverflow.com/a/38411582/2587027) – wadali