@string/bottom_sheet_behavior
で定義されている動作のボトムシートを使用するアプリケーションを実装しています。また、paddingをアニメーション化するためにonSlide()メソッドを使用したいので、プログラムでBottomSheetBehavior.BottomSheetCallback()
を設定しました。したがって、設定する新しいパディングを計算するには、slideOffset値が本当に必要です。 私はdocsを読んでいます。そこでは、状態が隠れた状態と折り畳まれた状態の間にあるとき、値の範囲は-1から0までです。私は携帯電話やタブレットがポートレートモードで、アンドロイドのバージョンとは独立している場合にのみ、この動作を見ることができます。しかし、風景モードでは、範囲はすべて1から-1になります。Android BottomSheetBehaviorコールバックメソッドonSlide()は、紛らわしいslideOffset値を返します
D/SLIDE: -0.86160713
D/SLIDE: -0.5714286
D/SLIDE: -0.29910713
D/SLIDE: -0.0625
D/SLIDE: 0.11382114
D/SLIDE: 0.27235773
D/SLIDE: 0.40650406
D/SLIDE: 0.51626015
D/SLIDE: 0.6300813
D/SLIDE: 0.69512194
D/SLIDE: 0.75609756
D/SLIDE: 0.8130081
D/SLIDE: 0.8577236
D/SLIDE: 0.8943089
D/SLIDE: 0.9186992
D/SLIDE: 0.9430894
D/SLIDE: 0.9593496
D/SLIDE: 0.97154474
D/SLIDE: 0.9796748
D/SLIDE: 0.9878049
D/SLIDE: 0.9918699
D/SLIDE: 0.99593496
D/SLIDE: 1.0
は、私が唯一のボタンのクリックでボトムシートの新しい状態を設定します。ここでは詳細に は拡大して隠されたから行くボトムシートの値の歴史です。 希望の値は-1から始まり0.0で終わります。この歴史の中でも値は増加しますが、+1になります。
他の誰かが同じ奇妙な行動に直面しなければならなかったのですか?
追加のコードが必要な場合は、私の質問を更新します。
ありがとうございます。文書によると
- STATE_EXPANDED
- STATE_COLLAPSED
- STATE_HIDDEN
:
ピーター