为微调器android的所选项设置外部字体

时间:2016-06-16 05:57:31

标签: android android-arrayadapter textview android-spinner android-fonts

我已经为数组适配器设置了一个文本视图,以显示微调器的选定项。这是数组适配器的代码。

ArrayAdapter<CharSequence> adapterDitrict =  ArrayAdapter.createFromResource(this, R.array.district_array,
                    R.layout.spinner_item);
adapterDitrict.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerDitrict.setAdapter(adapterDitrict);`

`

此处R.layout.spinner_item是用于显示微调器的选定项目的文本框。请注意,此文本视图不在活动的布局中。现在我想将外部字体应用于此文本框。但我无法使用findviewbyid获取对此文本视图的引用,因为它不在活动布局中。我正在使用setTypeface来设置外部字体。因此,如何显示微调器的选定项是使用外部字体的文本视图。请帮忙。

1 个答案:

答案 0 :(得分:2)

您可以通过两种方式实现此目的,第一种方法是使用自定义适配器并管理您的视图,第二种方法仅覆盖此当前适配器的getView方法。

对于链接下方的自定义适配器的第一个选项

http://androidexample.com/Custom_Spinner_With_Image_And_Text_-_Android_Example/index.php?view=article_discription&aid=84&aaid=107

第二个选项请查看我的答案

  ArrayAdapter<CharSequence> adapterDitrict = ArrayAdapter
            .createFromResource(this, R.array.district_array,
                    R.layout.spinner_item)
  {
       @Override
       public View getView(int position, View convertView, ViewGroup parent) 
       {

            View v = super.getView(position, convertView, parent);
            ((TextView) v).setTypeFace(Your Tyope Face);
            return v;
       }
  };

检查答案并根据您的要求使用任何答案。