Обновлено 2018
Убедитесь, что ваша таблица содержит класс table
. Это потому, что таблицы Bootstrap 4 являются «opt-in» , поэтому класс table
должен быть намеренно добавлен в таблицу.
http://codeply.com / go / zJLXypKZxL
Bootstrap 3.x также имел некоторый CSS для сброса ячеек таблицы, чтобы они не плавали ..
table td[class*=col-], table th[class*=col-] {
position: static;
display: table-cell;
float: none;
}
t знать, почему это не так, это Bootstrap 4 alpha, но он может быть добавлен обратно в финальную версию. Добавление этого CSS поможет всем столбцам использовать ширины, установленные в thead
..
UPDATE ( начиная с Bootstrap 4.0.0)
Теперь, когда Bootstrap 4 является flexbox, ячейки таблицы не будут принимать правильную ширину при добавлении col-*
. Обходным путем является использование класса d-inline-block
в ячейках таблицы, чтобы предотвратить отображение по умолчанию: flex of columns.
Еще одна опция в BS4 - использовать классы utils для ширины ...
25
50
25
Наконец, вы можете использовать d-flex
в строках таблицы (tr), а классы сетки col-*
на столбцы (th, td) ...
25%
25%
50%
..
..
..
Измените <view
на <View
, потому что view
не находится в пустом представлении. Это для пользовательского представления, определенного через class
attr, как показано ниже:
<view
android:layout_width="wrap_content"
android:layout_height="wrap_content"
class="com.your.package.YourCustomView" />
И вы получили
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
из-за LayoutInflater
пытается разобрать class
attr:
LayoutInflater
Исходный код
//...
View createViewFromTag(View parent, String name, Context context, AttributeSet attrs,
boolean ignoreThemeAttr) {
if (name.equals("view")) { // line 724
name = attrs.getAttributeValue(null, "class"); // line 725
}
// Apply a theme wrapper, if allowed and one is specified.
if (!ignoreThemeAttr) {
final TypedArray ta = context.obtainStyledAttributes(attrs, ATTRS_THEME);
final int themeResId = ta.getResourceId(0, 0);
if (themeResId != 0) {
context = new ContextThemeWrapper(context, themeResId);
}
ta.recycle();
}
if (name.equals(TAG_1995)) { // line 738
// Let's party like it's 1995!
return new BlinkLayout(context, attrs);
}
//...
view
и получает true
class
attr и получает null
blink
и получает сбой Кроме того, есть любопытная вещь, разработчики Android добавили пасхальное яйцо, вы можете попробовать:
<view
android:layout_width="wrap_content"
android:layout_height="wrap_content"
class="blink">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Some text" />
</view>
Через 2 дня я решил эту проблему использовать View вместо view
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#faf4f4"></View>