Вы можете передать стиль в конструктор представления.Это можно сделать двумя способами:
Используйте ContextThemeWrapper
и настройте для него свой стиль:
ContextThemeWrapper wrappedContext = new ContextThemeWrapper(yourContext, R.style.test);
TextView testView = new TextView(wrappedContext, null, 0);
ИВажное замечание - чтобы правильно установить стиль с помощью ContextThemeWrapper
, мы должны использовать конструктор с тремя аргументами и установить для параметра defStyleAttr
значение 0. В противном случае стиль кнопки по умолчанию будет применен к представлению.
Начиная с API 21 мы можем использовать конструктор с 4 параметрами:
View (Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
Где defStyleRes
- ваш идентификатор стиля
С тем жепримечание - defStyleAttr должно быть 0