ツールバーのタイトルを「動画(4)」に設定したい場合は、「動画」部分が1色で、「(4)」部分が別の色です。私は自分のcolors.xml
リソースファイルの色を使いたいです。ツールバーのタイトルに複数の色がありますか?
どうすればいいですか?あなたがspannableでカスタムフォントや色を設定することができます
getSupportActionBar().setTitle("Videos (" + numVideos + ")");
ツールバーのタイトルを「動画(4)」に設定したい場合は、「動画」部分が1色で、「(4)」部分が別の色です。私は自分のcolors.xml
リソースファイルの色を使いたいです。ツールバーのタイトルに複数の色がありますか?
どうすればいいですか?あなたがspannableでカスタムフォントや色を設定することができます
getSupportActionBar().setTitle("Videos (" + numVideos + ")");
:ここ
は、どのように私は、ツールバーのタイトルを設定しています。
これを試してください:あなたのケースで
protected void setActionBarTitle(String title) {
//if API level below 18, there is a bug at Samsung and LG devices
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR2) {
getSupportActionBar().setTitle(title);
} else {
SpannableString s = new SpannableString(title);
s.setSpan(new TypefaceSpan(this, "Your-Font.ttf"), 0, s.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
s.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getApplicationContext(), R.color.colorAccent)), 0, s.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
getSupportActionBar().setTitle(s);
}
}
が、これは動作するはずです:
getSupportActionBar().setTitle(firstPart + lastPart);
またはこのような:
SpannableString firstPart = new SpannableString("Videos ");
SpannableString lastPart = new SpannableString(" (4)");
firstPart.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getApplicationContext(), R.color.white)), 0, firstPart.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
lastPart.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getApplicationContext(), R.color.black)), 0, lastPart.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
は、このthikeあなたのタイトルを設定
getSupportActionBar().setTitle(TextUtils.concat(firstPart, lastPart));
String text = "<font color=#cc0029>Videos</font> <font color=#ffcc00>(" + numVideos + ")</font>";
getSupportActionBar().setTitle(Html.fromHtml(text));
"私の' colors.xml'リソースファイルの色を使いたいです。 " – user486123
これらのケースでは、フォントタグ – sasikumar
の中に色を直接記述していますが、これは単一のツールバータイトルで複数の色を使用する方法については説明していません。また、フォントを変更したくない。 – user486123
@ user486123最初、私はあなたにこれの背後にある論理を語った。ただ答えを更新しました/ –
'firstPart + lastPart'の代わりに' TextUtils.concat(firstPart、lastPart) 'を使う必要がありましたが、ありがとう! – user486123