1

3つのアクティビティを持つアプリがあります。オープニング アクティビティ (メイン アクティビティ) で、アプリのフォントに static キーワードを設定して、再利用できるようにしました。他の 2 つのアクティビティは、メイン アクティビティからフォントを取得します。これにより問題が発生します。たとえば、ユーザーがアクティビティ番号 3 にいて、アプリケーションを閉じずにホーム (デスクトップ) に戻り、アプリケーションを再度開いた場合、カスタム フォントではなくデフォルト フォントが取得されます。

つまり、それを回避するには、各アクティビティで TypeFace を初期化する必要があります。私の質問は、それを行う権利は何ですか? 各アクティビティでそれらを初期化する必要がありますか? メソッド内のメイン アクティビティにフォントを配置し、さまざまなアクティビティからそのメソッドを呼び出すだけでよいでしょうか? 私がここで見逃している他の方法はありますか?

4

1 に答える 1

1

カスタムフォントを設定するさまざまな種類のビューの数が少ない場合(たとえば、のみ)、 AndroidウィジェットのカスタムフォントTextViewに従って、XMLでそれを行う方法を理解してください。これにより、すべてのビューでそれを行う必要がなくなります。アクティビティ。

アクティビティ間で本当に共有したい場合は、メンバー変数としてを含むTypeFaceサブクラスを作成することをお勧めします。次に、このクラスをすべてのアクティビティの親として使用する必要があります。ActivityTypeFace

于 2012-05-11T07:20:03.087 に答える