0

ユーザーにフォントのリストを表示し、選択したフォントに従ってテキストビューのテキストを変更したいと考えています。そのためには、利用可能なすべてのフォントファミリにアクセスしてスピナーに表示する必要があり、ユーザーが特定のフォントを選択すると、テキストビューのフォントが変更されます。Androidでフォントリストをユーザーに提供するには? 提案を提供してください

4

2 に答える 2

1

スピナーにフォント名を追加します。

Spinner fname = (Spinner) findViewById(R.id.spinner1);

        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
                this, R.array.fname_array, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        fname.setAdapter(adapter);
        fname.setOnItemSelectedListener(new MyOnItemSelectedListener());

R.array.fname_arrayフォントリストを保持する場所。また、アプリケーションで外部フォントを使用するには、ttf(font) ファイルを assets フォルダーに配置する必要があります。

public class MyOnItemSelectedListener implements OnItemSelectedListener {
            TextView ptext=(TextView) findViewById(R.id.textView3);
            public void onItemSelected(AdapterView<?> parent,
                View view, int pos, long id) {
                Integer idpos;
                idpos=pos;
                if(idpos==0)
                {
                    Typeface font1 = Typeface.createFromAsset(getAssets(),"Molot.otf"); 

                    ptext.setTypeface(font1);   


                }

                if(idpos==1)
                {
                    //Toast.makeText(parent.getContext(), "The Font name is " +
                            //parent.getItemAtPosition(pos).toString(), Toast.LENGTH_LONG).show();
                    Typeface font1 = Typeface.createFromAsset(getAssets(),"MTCORSVA.TTF"); 
                    ptext.setTypeface(font1);                   

                }
                if(idpos==2)
                {
                    Typeface font1 = Typeface.createFromAsset(getAssets(),"TIMES.TTF"); 

                    ptext.setTypeface(font1);   
                } 

                ptext.setText(text.getText().toString());
            }

            public void onNothingSelected(AdapterView parent) {
              // Do nothing.
            }        
    }
于 2012-09-04T11:19:40.157 に答える
0

Android では、組み込みのフォントの選択肢は次のとおりです。

  • ドロイド・サンズ
  • ドロイド・サンズ・モノ
  • ドロイドセリフ

.ttf ファイルをコピーして assets フォルダーに配置することで、カスタム フォントを読み込むことができます。カスタム フォントを読み込むには、Typeface のオブジェクトを作成し、それをビューに設定します。

Typeface type = Typeface.createFromAsset(getAssets(),"fonts/arial.ttf");
txtyour.setTypeface(type);
于 2012-09-04T11:22:53.670 に答える