我在我的项目中使用Yuri Kanivets的WheelView。
出于翻译目的,我制作了一个带有自定义字体的自定义TextView。WheelView使用TextView来显示文本。我想在Wheelview中使用自定义的Textview,以便它以自定义字体显示文本。我该怎么做?
我不想更改轮视图的原始来源,以防我不得不将其用于其他应用程序。
轮视图适配器代码:
/**
* Adapter for string based wheel. Highlights the current value.
*/
private class DateArrayAdapter extends ArrayWheelAdapter<String> {
// Index of current item
int currentItem;
// Index of item to be highlighted
int currentValue;
/**
* Constructor
*/
public DateArrayAdapter(Context context, String[] items, int current) {
super(context, items);
this.currentValue = current;
setTextSize(16);
}
@Override
protected void configureTextView(TextView view) {
super.configureTextView(view);
if (currentItem == currentValue) {
view.setTextColor(getResources().getColor(R.color.holo_blue));
}
view.setTypeface(Typeface.SANS_SERIF);
view.setTextSize(18);
}
@Override
public View getItem(int index, View cachedView, ViewGroup parent) {
currentItem = index;
return super.getItem(index, cachedView, parent);
}
}
使用自己的视图创建布局xml。假设它是layout_item.xml
。使用android:id="@+id/text"
将视图(自定义文本视图)的id设置为文本
在你的适配器上使用这个:
adapter.setItemResource(R.layout.layout_item);
adapter.setItemTextResource(R.id.text);
我想现在它应该工作