Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:
null
. null
. null
, как если бы это был массив. null
, как если бы это был массив. null
как будто это было значение Throwable. Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null
.
Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html
Стиль в вашей пользовательской теме изменения
<item name="android:tabWidgetStyle">@android:style/Widget.TabWidget</item>
и
<style name="Widget.TabWidget">
<item name="android:textAppearance">@style/TextAppearance.Widget.TabWidget</item>
<item name="android:ellipsize">marquee</item>
<item name="android:singleLine">true</item>
</style>
<style name="TextAppearance.Widget.TabWidget">
<item name="android:textSize">14sp</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">@android:color/tab_indicator_text</item>
</style>
Вот новый ответ, который я нашел от Фреда Гротта ( http://knol.google.com/k/fred-grott/advance-tabs/ ) после небольшого поиска в Интернете.
Это позволяет вам установить селектор
для цвета текста, чтобы можно было использовать другой цвет, когда вкладка выбрана или нет. Это может быть очень полезно, если вы используете другой цвет фона для вкладки, если он выбран. Конечно, вы также можете использовать простой цвет, а не селектор.
final TextView tv = (TextView) tabWidget.getChildAt(i).findViewById(android.R.id.title);
tv.setTextColor(this.getResources().getColorStateList(R.color.text_tab_indicator));
Где R.color.text_tab_indicator - это XML-файл селектора , расположенный в папке res / drawable.
Другими словами, текст индикатора на самом деле является TextView
, который можно получить с помощью объекта View
, к которому можно получить доступ из объекта TabWidget
.
Взгляните на примеры Фреда для получения дополнительной информации и контекста относительно объявления переменных, а также других уловок.