Как показать вертикальную линию между столбцами макета сетки в Android

Я делаю нативное приложение для Android, хочу нарисовать вертикальную линию между двумя столбцами в сетке, можно ли как-то это сделать?? На следующем снимке экрана вы можете увидеть линии между ячейками и между столбцом. По сути, я просто хочу отобразить сетку в своем собственном стиле. Это ссылка для просмотра скриншотов, очевидно, стек не позволяет мне публиковать фото


person Kaustubh Kadam    schedule 03.03.2016    source источник
comment
Проверьте этот ответ   -  person Amit Vaghela    schedule 03.03.2016
comment
Перейдите по ссылке ниже, вы можете найти свое решение /12109126/   -  person Dixit Panchal    schedule 03.03.2016
comment
Много хороших решений. что вы думаете, если бы мы пошли 1px ppl вместо 1dp. линия будет выглядеть красиво и тоньше на устройствах с высокими характеристиками. Это работает?   -  person hasan    schedule 03.03.2016


Ответы (3)


Добавьте verticalSpacing в свой макет сетки и установите фон GridView в качестве цвета линии, который вы хотите.

<GridView
        android:id="@+id/grid_view"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="#DADADA"
        android:verticalSpacing="1dp"
        android:numColumns="2" />
person Community    schedule 03.03.2016

Вы можете добавить вертикальную линию следующим образом:

<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#000000" />

Вы можете установить высоту в соответствии с требованиями и при необходимости добавить поля к приведенному выше View.

person Asutosh Panda    schedule 03.03.2016
comment
Я обычно использую это решение. но мне это не нравится по одной причине. линия толстая и не выглядит красиво. как мы можем сделать более тонкую линию, чем 1 dp. - person hasan; 03.03.2016
comment
я использую макет сетки - person Kaustubh Kadam; 03.03.2016
comment
даже если вы используете сетку. вы можете поместить его в макет кадра вместе с этим предлагаемым видом. - person hasan; 03.03.2016
comment
@ hasan83, у вас должен быть XML-макет для элементов сетки. Просто используйте этот код там, вы получите вертикальную линию. - person Asutosh Panda; 04.03.2016

если вы используете два LinearLayouts рядом, вы можете легко использовать функцию разделения фреймворков:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:divider="?android:listDivider"
    android:dividerPadding="2.5dp"
    android:orientation="horizontal"
    android:showDividers="middle"
    android:weightSum="2" > ... </LinearLayout>

См. также: http://developer.android.com/reference/android/widget/LinearLayout.html

person and_dev    schedule 03.03.2016