Я использую Three NumberPicker для создания DatePicker в другой календарной системе и пытаюсь установить шрифт для элементов управления NumberPicker. согласно этому сообщению на SO, я просмотрел number_picker.xml. средство выбора номера создается с использованием двух кнопок ImageButton и одного EditText следующим образом:
<merge>
<ImageButton ... />
<EditText .../>
<ImageButton ... />
</merge>
поэтому в качестве примера я использовал следующий код для года NumberPickers:
NumberPicker date_y = (NumberPicker) findViewById(R.id.np_year);
Typeface tf;
tf = Typeface.createFromAsset(getAssets(),"fonts/bnazaninbd.ttf");
EditText et = (EditText) date_y.getChildAt(0);
et.setTypeface(tf);
Первая проблема заключается в том, почему getChildAt(0) работает для редактирования текста, хотя текст редактирования является вторым объектом, и он должен быть getChildAt(1).
Во-вторых, шрифт editText изменяется при загрузке Activity (но только EditText, а не текстов сверху и снизу от него), но по мере перемещения средства выбора номера шрифт возвращается к исходному.