Android: как объявить стиль в R.java?
Я пытаюсь использовать это ViewPager
расширение. Этот плагин помогает мне использовать SwipeyTab
, Мне удалось запустить пример в виде одного приложения. Поэтому я хочу интегрировать расширение в свое приложение. Затем я скопировал java-файлы и изменил имена пакетов, все в порядке. Но у меня есть некоторые ошибки в этих строках:
mTextColorCenter = a.getColor(R.styleable.ViewPagerExtensions_textColorSelected, mTextColorCenter);
mLineColorCenter = a.getColor(R.styleable.ViewPagerExtensions_lineColorSelected, mLineColorCenter);
mLineHeightSelected = a.getDimensionPixelSize(R.styleable.ViewPagerExtensions_lineHeightSelected, mLineHeightSelected);
Затмение говорит: Styleable cannot be resolved or is not a field
, Другие строки, содержащие styleable, также дают те же ошибки. Если я попытаюсь нажать кнопку, решить эту проблему, ничего не изменится.
Когда я посмотрел на расширение файла R.java, я увидел следующие строки:
public static final class styleable {
public static final int[] ViewPagerExtensions = {
0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003,
0x7f010004, 0x7f010005, 0x7f010006, 0x7f010007,
0x7f010008, 0x7f010009, 0x7f01000a
};
public static final int ViewPagerExtensions_dividerColor = 7;
// there is more
}
Я знаю, что редактировать R.java невозможно. Как я могу определить styleable в R.java для этого расширения? Какие-либо предложения?
1 ответ
Вы должны определить атрибуты, которые вам понадобятся, в отдельном XML-файле. Я имею в виду создать values.xml и использовать <declare-styleable name="ViewPagerExtensions"></declare-styleable>
теги.
Позвольте мне привести пример:
<declare-styleable name="ViewPagerExtensions">
<attr format="integer" name="dividerColor" />
</declare-styleable>
Кстати, в проекте уже есть файл attrs.xml, проверьте это: