android – 自定义微调器字体

前端之家收集整理的这篇文章主要介绍了android – 自定义微调器字体前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个带有简单列表的微调器.我想知道我是否可以在我的微调器中替换字体的样式.或者无论如何我可以用来改变字体样式,大小和颜色.

任何许可都非常感谢.

解决方法

没试过,但 androidXML中的字体或代码中的setTypeface()应该可以工作.

编辑:请按照指导here.

首先,在res / layout目录中创建一个名为“my_spinner_style.xml”的新XML文件,并输入类似以下内容

  1. android:layout_width="fill_parent"
  2. android:layout_height="wrap_content"
  3. android:textSize="9pt"
  4. android:singleLine="True"
  5. android:id="@+id/spinnerTarget"
  6. android:textColor="#000000"
  7. android:gravity="center"/>

然后在您的代码中,使用以下内容

  1. Spinner mySpinner = (Spinner) findViewById(R.id.my_spinner);
  2. mySpinnerArrayAdapter = new MyCustomArrayAdapter(this,R.layout.my_spinner_style);
  3. mySpinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

通常,您将为第二行创建一个新的ArrayAdapter,但在这种情况下,您需要创建一个自定义ArrayAdapter并覆盖从我们的自定义微调器样式获取TextView的方法.

因此,您需要为自定义ArrayAdapter输入代码,如下所示:

  1. private class MyArrayAdapter extends ArrayAdapter {
  2.  
  3. public MyArrayAdapter(Context context,int textViewResourceId) {
  4. super(context,textViewResourceId);
  5. }
  6.  
  7. public TextView getView(int position,View convertView,ViewGroup parent) {
  8. TextView v = (TextView) super.getView(position,convertView,parent);
  9. v.setTypeface(myFont);
  10. return v;
  11. }
  12.  
  13. public TextView getDropDownView(int position,parent);
  14. v.setTypeface(myFont);
  15. return v;
  16. }
  17.  
  18. }

您要使用的字体需要驻留在assets / fonts目录中,您可以像这样访问它:

  1. Typeface myFont = Typeface.createFromAsset(getAssets(),"fonts/myfont.ttf");

这就是它.

猜你在找的Android相关文章