在使用TableLayout布局时,使用tableLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);已经设置了分隔线样式,横向分隔线可以显示, 纵向分隔线不显示
时间: 2024-03-15 21:45:20 浏览: 110
如果你使用`setShowDividers()`方法设置了分隔线样式,但是纵向分隔线不显示,可以尝试添加以下代码:
```
tableLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.your_divider_drawable));
```
其中,`your_divider_drawable`是自定义的分隔线drawable。你可以在drawable文件夹下新建一个drawable文件,然后定义一个分隔线drawable,比如:
```
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<size android:height="1dp" />
<solid android:color="@color/divider_color" />
</shape>
```
然后在`setDividerDrawable()`方法中传入这个drawable即可。注意,这里设置的是纵向分隔线的drawable,如果想要设置横向分隔线的drawable,可以使用`setDividerDrawableHorizontal()`方法。
相关问题
在使用TableLayout布局时,使用tableLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);设置竖线分隔线不生效
在使用TableLayout布局时,使用`tableLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);`设置竖线分隔线不生效,可能是因为没有设置竖线分隔线的样式。可以通过代码设置竖线分隔线的样式,如下所示:
```
// 设置竖线分隔线的样式
tableLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.divider_vertical));
```
其中,`R.drawable.divider_vertical`是自定义的竖线分隔线的样式。你可以在drawable文件夹下创建一个xml文件,定义竖线分隔线的样式,如下所示:
```
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<size android:width="1dp" />
<solid android:color="@color/divider_color" />
</shape>
```
其中,`@color/divider_color`是定义的颜色值。
这样设置后,应该就能看到竖线分隔线了。
TableLayout布局中,设置了android:showDividers="middle"后, 还是不显示横线竖线 分隔线
在使用TableLayout布局时,设置了android:showDividers="middle"后,需要再设置分隔线的颜色和宽度,才能显示出横线竖线的分隔线。可以通过以下方式设置:
1. 设置横线分隔线的颜色和宽度:
```
tableLayout.setDividerDrawable(new ColorDrawable(Color.BLACK));
tableLayout.setDividerPadding(10);
```
2. 设置竖线分隔线的颜色和宽度:
```
tableLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
tableLayout.setDividerDrawable(new ColorDrawable(Color.BLACK));
tableLayout.setDividerPadding(10);
```
注意:设置分隔线的颜色和宽度需要在代码中进行,而不能在xml文件中设置。
阅读全文