arrayadapter android的settype

时间:2012-12-19 11:29:24

标签: android spinner typeface

这是我的代码如何设置我的微调器,我想在其项目上设置自定义字体我的类是扩展活动,我的部分代码是这样的

  Spinner supportSpinner = (Spinner) findViewById(R.id.supportSpinner);
  ArrayAdapter supportAdapter = new ArrayAdapter(this,
            android.R.layout.simple_spinner_item,supports);

  supportSpinner.setAdapter(supportAdapter);

btw支持是我的微调器的项目的字符串arraylist 我想做这样的事情,但它不允许

     Typeface type = Typeface.createFromAsset(getAssets(), "comic.ttf");
     supportSpinner.setTypeface(type); 

如何更改我的微调文字视图字体?

3 个答案:

答案 0 :(得分:1)

而不是使用

 android.R.layout.simple_spinner_item

创建您自己的布局,然后您将使用当前代码

 Typeface type = Typeface.createFromAsset(getAssets(), "comic.ttf");
 supportSpinner.setTypeface(type); 

但是在每个微调器项目的自定义布局中的textview上设置它

答案 1 :(得分:1)

而不是使用android.R.layout.simple_spinner_item创建自己的布局,而在XML布局编辑器中,您可以选择所需的TypeFace。无需做任何代码。

答案 2 :(得分:1)

用于数组适配器::

Typeface typeNormal = Typeface.createFromAsset(getAssets(), "roboto_lite.ttf");



timearray = new ArrayAdapter<String>(DetailsActivity.this,R.layout.floorrow,R.id.txt, flor){


                         public View getView(int pos, View convertView, android.view.ViewGroup parent) {


                                View v = convertView;
                                if(v== null){
                                    LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                                    v=vi.inflate(R.layout.floorrow, null);
                                }
                                TextView tv = (TextView)v.findViewById(R.id.txt);
                                tv.setText(flor.get(pos));
                                tv.setTypeface(typeNormal);

                                return v;


                         };




                     };


                    lv_building.setAdapter(timearray);