Android的微调改变字体字样 [英] android spinner change font typeface

查看:134
本文介绍了Android的微调改变字体字样的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要去改变文字的字体在我的微调器arialbold我如何去这样做。下面是我的code: -

  ArrayAdapter< CharSequence的> genderAdap = ArrayAdapter.createFromResource(getActivity(),R.array.gender,R.layout.spinner_item);


genderAdap.setDropDownViewResource(R.layout.spinner_item);

ddlGender.setAdapter(genderAdap);
 

解决方案
  

类:

 公共类testActivity延伸活动{

    私有静态最后的String [] COUNTRIES =新的String [] {比利时,
            法国,意大利,德国,西班牙};
    私人微调mySpinner;
    私人字样myFont;

    @覆盖
    保护无效的onCreate(包savedInstanceState){
        // TODO自动生成方法存根
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.newlay);

        mySpinner =(微调)findViewById(R.id.spinner1);
        myFont = Typeface.createFromAsset(getAssets(),gujarti.ttf);
        MyArrayAdapter MA =新MyArrayAdapter(本);
        mySpinner.setAdapter(MA);
    }

    私有类MyArrayAdapter扩展了BaseAdapter {

        私人LayoutInflater mInflater;

        公共MyArrayAdapter(testActivity CON){
            // TODO自动生成构造函数存根
            mInflater = LayoutInflater.from(CON);
        }

        @覆盖
        公众诠释getCount将(){
            // TODO自动生成方法存根
            返回COUNTRIES.length;
        }

        @覆盖
        公共对象的getItem(INT位置){
            // TODO自动生成方法存根
            返回的位置;
        }

        @覆盖
        众长getItemId(INT位置){
            // TODO自动生成方法存根
            返回的位置;
        }

        @覆盖
        公共查看getView(INT位置,查看convertView,ViewGroup中父){
            // TODO自动生成方法存根
            最后的listContent持有人;
            视图V = convertView;
            如果(V == NULL){
                V = mInflater.inflate(R.layout.my_spinner_style,NULL);
                持有人=新的listContent();

                holder.name =(TextView中)v.findViewById(R.id.textView1);

                v.setTag(保持器);
            } 其他 {

                支架=(的listContent)v.getTag();
            }

            holder.name.setTypeface(myFont);
            holder.name.setText(+国[位置]);

            返回伏;
        }

    }

    静态类的listContent {

        TextView的名称;

    }
}
 

  

布局:

 < LinearLayout中的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
   机器人:layout_width =FILL_PARENT
   机器人:layout_height =FILL_PARENT
   机器人:方向=垂直>
   <微调
     机器人:ID =@ + ID / spinner1
     机器人:layout_width =match_parent
     机器人:layout_height =WRAP_CONTENT/>
 < / LinearLayout中>
 

  

my_spinner_style.xml

 < LinearLayout中的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
   机器人:layout_width =FILL_PARENT
   机器人:layout_height =FILL_PARENT>
   <的TextView
     机器人:ID =@ + ID / textView1
     机器人:layout_width =match_parent
     机器人:layout_height =WRAP_CONTENT
     机器人:文本=大文本
     机器人:textAppearance =:/>中的Andr​​oid ATTR / textAppearanceLarge?
 < / LinearLayout中>
 

TTF文件

i'm going to change text typeface to arialbold in my spinner how i'm going to do so. Below is my code :-

ArrayAdapter<CharSequence> genderAdap = ArrayAdapter.createFromResource(getActivity(), R.array.gender,R.layout.spinner_item);


genderAdap.setDropDownViewResource(R.layout.spinner_item);

ddlGender.setAdapter(genderAdap);

解决方案

Class :

public class testActivity extends Activity {

    private static final String[] COUNTRIES = new String[] { "Belgium",
            "France", "Italy", "Germany", "Spain" };
    private Spinner mySpinner;
    private Typeface myFont;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.newlay);

        mySpinner = (Spinner) findViewById(R.id.spinner1);
        myFont = Typeface.createFromAsset(getAssets(), "gujarti.ttf");
        MyArrayAdapter ma = new MyArrayAdapter(this);
        mySpinner.setAdapter(ma);
    }

    private class MyArrayAdapter extends BaseAdapter {

        private LayoutInflater mInflater;

        public MyArrayAdapter(testActivity con) {
            // TODO Auto-generated constructor stub
            mInflater = LayoutInflater.from(con);
        }

        @Override
        public int getCount() {
            // TODO Auto-generated method stub
            return COUNTRIES.length;
        }

        @Override
        public Object getItem(int position) {
            // TODO Auto-generated method stub
            return position;
        }

        @Override
        public long getItemId(int position) {
            // TODO Auto-generated method stub
            return position;
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            // TODO Auto-generated method stub
            final ListContent holder;
            View v = convertView;
            if (v == null) {
                v = mInflater.inflate(R.layout.my_spinner_style, null);
                holder = new ListContent();

                holder.name = (TextView) v.findViewById(R.id.textView1);

                v.setTag(holder);
            } else {

                holder = (ListContent) v.getTag();
            }

            holder.name.setTypeface(myFont);
            holder.name.setText("" + COUNTRIES[position]);

            return v;
        }

    }

    static class ListContent {

        TextView name;

    }
}

Layout :

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
   android:layout_width="fill_parent"  
   android:layout_height="fill_parent"  
   android:orientation="vertical" >  
   <Spinner  
     android:id="@+id/spinner1"  
     android:layout_width="match_parent"  
     android:layout_height="wrap_content" />  
 </LinearLayout> 

my_spinner_style.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
   android:layout_width="fill_parent"  
   android:layout_height="fill_parent" >  
   <TextView  
     android:id="@+id/textView1"  
     android:layout_width="match_parent"  
     android:layout_height="wrap_content"  
     android:text="Large Text"  
     android:textAppearance="?android:attr/textAppearanceLarge" />  
 </LinearLayout> 

TTF FILES

这篇关于Android的微调改变字体字样的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆