いくつかの条件に基づいて表示されるいくつかのイメージを含むRecyclerViewアイテムがJava上にあります。しかし、条件のほとんどが満たされていると、多くの画像が表示され、親のレイアウトから外れてしまうことに気付きました。 3つのビューを表示し、条件に基づいて他のものを非表示にします。
作業コードは例えば、RecyclerView内の各画像のために簡単です:
以下は私の意図は、この目的のためにある方法を示しただし
if (iJobType == 1) {
imageView1.setVisibility(View.VISIBLE)
} else {
imageView1.setVisibility(View.GONE)
}
if (iJobType == 2) {
imageView2.setVisibility(View.VISIBLE)
} else {
imageView2.setVisibility(View.GONE)
}
、私はわからないものに3つの条件が満たされると3つの画像しか表示されません。与えられたiJobType
が1,2,3,4,5,6であるとしましょう。そのような条件に基づいて6枚の画像が表示されますが、今は3枚の画像が必要です。
私はそれが十分にはっきりしていることを願って、これをより良く理解するためにコメントを残しておきましょう。乾杯!私はこのような場合にはどうなるのか
あなたの画像の幅と画面の幅を確認する必要があります。 like ..setVisibility(Visible)のすべての設定でoccupiedSpace変数を増やし、使用可能な合計でチェックします。そのようなもの – Farhan
@ファハンそれは実際には理にかなっています!提案していただきありがとうございます! –
おそらく可視性が最良の選択肢ではないかもしれません。使用可能なスペースに応じてgetItemCount()を増やしてください。したがって、アダプタはスペースがある場合にのみbindViewHolder(VHホルダ、int位置)を呼び出します –