1
私はListView
を持っていて、アイテム間の間隔を2つのアイテムによって増減したいと考えています。私は基本的に項目をランダムに交互に並べ、項目が反対側にあるときに間隔を広げたいと思う。 すべてのアイテムの間隔を均等に増やす方法はわかっていますが、特定の行については紛失してしまいます。アイテム間の特定の間隔を持つリストビュー
私はListView
を持っていて、アイテム間の間隔を2つのアイテムによって増減したいと考えています。私は基本的に項目をランダムに交互に並べ、項目が反対側にあるときに間隔を広げたいと思う。 すべてのアイテムの間隔を均等に増やす方法はわかっていますが、特定の行については紛失してしまいます。アイテム間の特定の間隔を持つリストビュー
対応するリスト行のデータを比較し、View
に適切なマージンまたはパディングを追加するだけです。
単なる例(あなたのコードのいずれかを見ることなく、特定の助けを与えることがちょっと難しい):
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = LayoutInflater.from(someContext)
View row = inflater.inflate(R.layout.some_layout, parent, false);
if (position > 0) {
Data previous = someDataset.get(position - 1);
Data current = someDataset.get(position);
if (previous.something() == current.something()) {
// add margin or padding to row
}
}
// set TextView texts, ImageView images etc., whatever your row has
return row;
}
あなたがプログラムでView
にマージンを追加する方法がわからない場合は、のために多くの既存の質問がありますそれはhere's an answerです。
埋め込みを追加する場合は、View
でsetPadding()
メソッドを呼び出します。
これは素晴らしい仕事でした。 –