2012-03-02 7 views
1

私はアンドロイド:自分のフォントリストビュー

次のリンクを読んだ後のAndroid OSの2.3.x以降でJavaを使用してリストビューで自分のフォントを持ってしようとしている中、私はこだわっている:

http://developer.android.com/guide/topics/ui/themes.html http://stackoverflow.com/questions/4576441/custom-font-in-android-listview http://androidforums.com/android-lounge/143874-custom-typface-listview-row-layout.html

私はここで何か役に立つものを投稿できません。

私の主な問題は次のとおりである:

  • なぜ私はsetTypefaceを使用して、リストビューのフォントを変更することはできませんか?
  • 私のアプリケーションで、すべてのアクティビティに再度入れずに、すべてのテキストのフォントを定義できないのはなぜですか?
  • この問題を処理するドキュメントはありますか? Android SDKのドキュメントには、フォントのバージョンがどのようになっているかなど、詳細は不明です。

私は多くのことを学ばなければならないことを知っています。私はできる限りこのトピックについて多くの書籍を用意しています。しかし、2日間の推測と試行の後、私は助けを求めなければならない。

Propably誰かが正しい方向に私をプッシュすることができます。

は、私はいくつかのコードをクリーンアップしてみました、あなたの小さなアイデアを与えるために):から(RES /レイアウト/ scores.xmlスニペットを:

ファイルをそれは)

<ListView 
    android:id="@+id/android:list" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="#00000000" 
    android:cacheColorHint="#00000000" 
    android:transcriptMode="disabled" > 
</ListView> 

ファイル:SRC/notneededasinfo/ScoresActivity.java(それから抜粋)

Resources myResources = getResources(); 

Typeface tf = Typeface.createFromAsset(myResources.getAssets(),"fonts/searstower.ttf"); 
TextView tv = (TextView) findViewById(android.R.id.list); 
tv.setTypeface(tf); 

Thxが助けになりました!

+0

@あなたのコードはエラーを示していますか?または何が問題なのですか? –

+0

問題は、私は例外やエラーがなく、フォントが変更されていないということです。 私はこれが私の側では小さな問題であると仮定しています。 – MrMarco

+0

このmyResources.getAssets()をgetApplicationContext()。getAssets()に変更して試してみてください。 –

答えて

0
TextView tv = (TextView) findViewById(android.R.id.list); 

フォントを設定するには、テキストビューが必要です。リストの行ビューが欠落しています。

0

私は私が が再びすべての活動にそれを置くことなく、自分のアプリケーション内のすべてのテキストのフォントを定義することはできませんなぜ、あなたの質問の1

のための答えを持っていますか?

これは既知の問題ですが、解決しやすいものです。アクティビティを拡張し、setContentView()メソッドを上書きするカスタムアクティビティクラスを実装するだけです。この方法では、あなたの現在のビューのためにすべてのあなたのTextViewsを取得し、ここを参照してくださいTypfaceに

を設定することができます。Add custom font for complete android application

1

うーん...最初にすべてのAndroidの:TEXTSTYLEとsetTypeface(書体)は、プロパティと機能はありませんListViewから、それはTextViewからです。あなたが定義する必要があり、とにかくhttp://developer.android.com/resources/tutorials/views/hello-listview.html

は、このチュートリアルを使用してみてください。ListView内のitensのスタイルを定義するxmlファイル。

setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES)); 

だから、あなたがR.layoutとして上に使用されるファイルlist_item.xml上のListView項目のレイアウトを定義する必要があります:あなたがトピック4上で見ることができる前に、私は投稿のリンクで、ハンドラは次の行をOnCreate関数.list_item。このファイルlist_item.xmlでは、新しいTextViewsやEditTextsなどを定義し、それぞれのViewに対して個別にフォントを変更します。

あなたのお役に立てば幸いです...

+1

そして、あなたのR.id.listは、あなたの投稿XMLコードで定義されているListViewです。あなたはここで行ったようにTextViewに関連付けることはできません:TextView tv =(TextView)findViewById(android.R.id.list); – trebew

+0

AAHH ...それは私の問題かもしれません。私はListViewは通常のウィジェットだと思った。しかし、それは結果行のための唯一の容器です...大丈夫...時間を与えてください。私は仕事をすることを知っています。メルシ! – MrMarco

+0

私はそれを試しましたが、xmlファイルに独自のフォントを設定することはできません。フォントの色、フォントのスタイル(太字など)、フォントのサイズは変更できますが、フォントの種類は変更できません。 私は知識として極端に重要な何かを欠いています。私が逃したものを手に入れるとすぐに、私はこの質問に戻ります。 – MrMarco

関連する問題