0

我有 ArrayAdapter 有微调项目的字符串

如何务实地更改代码

注意:我知道我应该覆盖并实现 View .. 等,但我需要更多细节:

  Typeface font = Typeface.createFromAsset(getAssets(), "extrafine.ttf");  



    String array_spinner[];
    array_spinner=new String[3];
    array_spinner[0]="general";
    array_spinner[1]="quisiton";
    array_spinner[2]="suggsution";

    final Spinner spinner = (Spinner) findViewById( R.id.spinner1 ); 

        ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(
                this, android.R.layout.simple_spinner_item, array_spinner);
        spinnerArrayAdapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item );


        spinner.setAdapter(spinnerArrayAdapter);   
4

2 回答 2

12

在您的适配器中尝试这样的事情:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                R.layout.spinaca, items) {

     public View getView(int position, View convertView, ViewGroup parent) {
             View v = super.getView(position, convertView, parent);

             Typeface externalFont=Typeface.createFromAsset(getAssets(), "fonts/HelveticaNeueLTCom-Lt.ttf");
             ((TextView) v).setTypeface(externalFont);

             return v;
     }


     public View getDropDownView(int position,  View convertView,  ViewGroup parent) {
              View v =super.getDropDownView(position, convertView, parent);

             Typeface externalFont=Typeface.createFromAsset(getAssets(), "fonts/HelveticaNeueLTCom-Lt.ttf");
             ((TextView) v).setTypeface(externalFont);

             return v;
     }
};
于 2013-02-28T02:33:45.007 回答
0

创建数组适配器时,您传递的是“android.R.layout.simple_spinner”。这是微调器中每个细节行的默认布局。您需要使用 textview 提供您自己的版本。然后,您可以在 textview 上指定“textSize”属性并将其设置为您想要的任何大小。

查看“android.R.layout.simple_spinner”以了解您可以进行哪些其他更改。您甚至可以将该文件复制到布局目录中,并将其用作更改的起点。

于 2013-02-28T02:24:55.937 回答