Это связано с тем, что атрибуты / ассоциации на самом деле являются методами (getters / seters), а не локальными переменными. Когда вы укажете «parent = value», Ruby предполагает, что вы хотите присвоить значение локальной родительской переменной.
Где-то в стеке есть метод setter «def parent =» и для вызова того, что вы должны использовать « self.parent = ", чтобы сказать рубину, что вы на самом деле хотите вызвать сеттер, а не просто установить локальную переменную.
Когда дело доходит до геттеров, Ruby смотрит, есть ли первая локальная переменная, t find, то он пытается найти метод с тем же именем, поэтому ваш метод getter работает без «я».
Другими словами, это не ошибка Rails, но это то, как Ruby работает по своей сути.
Надеюсь, что это поможет.
Я думаю, что слишком опаздываю, но возможно это решение, полезное для других. Для использования пользовательского шрифта помещают Ваш файл шрифтов в Ваш каталог шрифта.
textView.setTypeface(ResourcesCompat.getFont(this, R.font.lato));
Один простой путь путем добавления желаемого шрифта в проекте.
Переходят к Файлу-> Новый-> Новый Выбор Каталога Ресурса шрифт
, Это создаст новый каталог, шрифт, в Ваших ресурсах.
Загрузка Ваш шрифт (.ttf). Я использую , https://fonts.google.com для того же
Добавляет, что к Вашей папке шрифтов затем используют их в XML или программно.
XML -
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/your_font"/>
Programatically -
Typeface typeface = getResources().getFont(R.font.your_font);
textView.setTypeface(typeface);
При использовании Android Studio 3.5 + Изменение шрифта супер просто. Выберите текстовый виджет на Режиме конструктора и проверьте семейство шрифтов на Окне Атрибута. Выпадающее значение содержит все доступные шрифты, из которых можно выбрать тот. Если Вы ищете Google Fonts, опцию Click More Fonts.
Атрибута