ListViewを使用している場合は、確かにダリルの答えに従ってください。ただし、最後の項目の後にもディバイダが存在します。 ListViewの前バージョンであるRecyclerViewに切り替えることをお勧めします。 RecyclerViewでは、次のように入力します。
ラインディバイダを作成します。 (あなたの必要に応じてサイズと色を変えてください)。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<size
android:width="4dp"
android:height="4dp"/>
<solid android:color="#d5d5d5" />
DividerItemDecoratorクラスを作成します。
public class DividerItemDecorator extends RecyclerView.ItemDecoration {
private Drawable mDivider;
public DividerItemDecorator(Context context) {
mDivider = ContextCompat.getDrawable(context, R.drawable.line_divider);
}
@Override
public void onDrawOver(Canvas c, RecyclerView parent, RecyclerView.State state) {
int left = parent.getPaddingLeft();
int right = parent.getWidth() - parent.getPaddingRight();
int childCount = parent.getChildCount();
for (int i = 0; i < childCount; i++) {
View child = parent.getChildAt(i);
RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child.getLayoutParams();
int top = child.getBottom() + params.bottomMargin;
int bottom = top + mDivider.getIntrinsicHeight();
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(c);
}
}
}
最後に、このコード行を使用して、リサイクラービューでDividerItemDecoratorを設定します。
recyclerView.addItemDecoration(new DividerItemDecorator(getApplicationContext()));
レイアウトを分割線として使用することはできません。描画可能なもののみを受け入れます。おそらくあなたが必要とするのは、カスタムdrawable.xmlで達成することができます – MatPag
分割可能なイメージを描画したいですか? – rafsanahmad007
@MatPagもしそうなら、私にいくつかの例を与えることができます。 – itmani1990