How do i add custom font on menu item in Android?
I have been trying to add a font to my menu items and have tried few solutions i found but none of them worked for me.
Method 1 :How to set custom typeface to items in NavigationView?
Method 2:
Menu XML
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_notification1"
android:icon="@mipmap/filter_button"
android:title="action_notification"
app:showAsAction="always">
<menu>
<item
android:id="@+id/navmenu_cat"
android:icon="@mipmap/categories"
android:orderInCategory="100"
android:title="@string/categories" />
<item
android:id="@+id/navmenu_date"
android:icon="@mipmap/calendar"
android:orderInCategory="100"
android:title="@string/date" />
</menu>
</item>
</menu>
MyClass
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.work_history, menu);
for (int i = 0; i < menu.size(); i++) {
Typeface face = Typeface.createFromAsset(getAssets(), "ar_regular.ttf");
SpannableStringBuilder title = new SpannableStringBuilder(menu.getItem(i).getTitle().toString());
title.setSpan(face, 0, title.length(), 0);
MenuItem menuItem = menu.getItem(i);
menuItem.setTitle(title);
}
return true;
}
java android xml
add a comment |
I have been trying to add a font to my menu items and have tried few solutions i found but none of them worked for me.
Method 1 :How to set custom typeface to items in NavigationView?
Method 2:
Menu XML
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_notification1"
android:icon="@mipmap/filter_button"
android:title="action_notification"
app:showAsAction="always">
<menu>
<item
android:id="@+id/navmenu_cat"
android:icon="@mipmap/categories"
android:orderInCategory="100"
android:title="@string/categories" />
<item
android:id="@+id/navmenu_date"
android:icon="@mipmap/calendar"
android:orderInCategory="100"
android:title="@string/date" />
</menu>
</item>
</menu>
MyClass
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.work_history, menu);
for (int i = 0; i < menu.size(); i++) {
Typeface face = Typeface.createFromAsset(getAssets(), "ar_regular.ttf");
SpannableStringBuilder title = new SpannableStringBuilder(menu.getItem(i).getTitle().toString());
title.setSpan(face, 0, title.length(), 0);
MenuItem menuItem = menu.getItem(i);
menuItem.setTitle(title);
}
return true;
}
java android xml
try this link stackoverflow.com/questions/21942533/…
– Android Team
Jun 4 '18 at 12:08
add a comment |
I have been trying to add a font to my menu items and have tried few solutions i found but none of them worked for me.
Method 1 :How to set custom typeface to items in NavigationView?
Method 2:
Menu XML
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_notification1"
android:icon="@mipmap/filter_button"
android:title="action_notification"
app:showAsAction="always">
<menu>
<item
android:id="@+id/navmenu_cat"
android:icon="@mipmap/categories"
android:orderInCategory="100"
android:title="@string/categories" />
<item
android:id="@+id/navmenu_date"
android:icon="@mipmap/calendar"
android:orderInCategory="100"
android:title="@string/date" />
</menu>
</item>
</menu>
MyClass
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.work_history, menu);
for (int i = 0; i < menu.size(); i++) {
Typeface face = Typeface.createFromAsset(getAssets(), "ar_regular.ttf");
SpannableStringBuilder title = new SpannableStringBuilder(menu.getItem(i).getTitle().toString());
title.setSpan(face, 0, title.length(), 0);
MenuItem menuItem = menu.getItem(i);
menuItem.setTitle(title);
}
return true;
}
java android xml
I have been trying to add a font to my menu items and have tried few solutions i found but none of them worked for me.
Method 1 :How to set custom typeface to items in NavigationView?
Method 2:
Menu XML
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_notification1"
android:icon="@mipmap/filter_button"
android:title="action_notification"
app:showAsAction="always">
<menu>
<item
android:id="@+id/navmenu_cat"
android:icon="@mipmap/categories"
android:orderInCategory="100"
android:title="@string/categories" />
<item
android:id="@+id/navmenu_date"
android:icon="@mipmap/calendar"
android:orderInCategory="100"
android:title="@string/date" />
</menu>
</item>
</menu>
MyClass
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.work_history, menu);
for (int i = 0; i < menu.size(); i++) {
Typeface face = Typeface.createFromAsset(getAssets(), "ar_regular.ttf");
SpannableStringBuilder title = new SpannableStringBuilder(menu.getItem(i).getTitle().toString());
title.setSpan(face, 0, title.length(), 0);
MenuItem menuItem = menu.getItem(i);
menuItem.setTitle(title);
}
return true;
}
java android xml
java android xml
asked Jun 4 '18 at 12:04
mandip girimandip giri
466
466
try this link stackoverflow.com/questions/21942533/…
– Android Team
Jun 4 '18 at 12:08
add a comment |
try this link stackoverflow.com/questions/21942533/…
– Android Team
Jun 4 '18 at 12:08
try this link stackoverflow.com/questions/21942533/…
– Android Team
Jun 4 '18 at 12:08
try this link stackoverflow.com/questions/21942533/…
– Android Team
Jun 4 '18 at 12:08
add a comment |
2 Answers
2
active
oldest
votes
you can use this lib https://github.com/chrisjenx/Calligraphy. It will set the default font to your menuItem when you attach it to a context
add a comment |
There is a library https://github.com/chrisjenx/Calligraphy,
Add this dependency to your build gradle
dependencies {
compile 'uk.co.chrisjenx:calligraphy:2.3.0'
}
Then in your activity override this method
@Override
public void onCreate() {
super.onCreate();
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("fonts/Roboto-RobotoRegular.ttf")
.setFontAttrId(R.attr.fontPath)
.build()
);
//....
}
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f50680187%2fhow-do-i-add-custom-font-on-menu-item-in-android%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
you can use this lib https://github.com/chrisjenx/Calligraphy. It will set the default font to your menuItem when you attach it to a context
add a comment |
you can use this lib https://github.com/chrisjenx/Calligraphy. It will set the default font to your menuItem when you attach it to a context
add a comment |
you can use this lib https://github.com/chrisjenx/Calligraphy. It will set the default font to your menuItem when you attach it to a context
you can use this lib https://github.com/chrisjenx/Calligraphy. It will set the default font to your menuItem when you attach it to a context
answered Jun 4 '18 at 12:24
TibiGTibiG
5001415
5001415
add a comment |
add a comment |
There is a library https://github.com/chrisjenx/Calligraphy,
Add this dependency to your build gradle
dependencies {
compile 'uk.co.chrisjenx:calligraphy:2.3.0'
}
Then in your activity override this method
@Override
public void onCreate() {
super.onCreate();
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("fonts/Roboto-RobotoRegular.ttf")
.setFontAttrId(R.attr.fontPath)
.build()
);
//....
}
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
add a comment |
There is a library https://github.com/chrisjenx/Calligraphy,
Add this dependency to your build gradle
dependencies {
compile 'uk.co.chrisjenx:calligraphy:2.3.0'
}
Then in your activity override this method
@Override
public void onCreate() {
super.onCreate();
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("fonts/Roboto-RobotoRegular.ttf")
.setFontAttrId(R.attr.fontPath)
.build()
);
//....
}
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
add a comment |
There is a library https://github.com/chrisjenx/Calligraphy,
Add this dependency to your build gradle
dependencies {
compile 'uk.co.chrisjenx:calligraphy:2.3.0'
}
Then in your activity override this method
@Override
public void onCreate() {
super.onCreate();
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("fonts/Roboto-RobotoRegular.ttf")
.setFontAttrId(R.attr.fontPath)
.build()
);
//....
}
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
There is a library https://github.com/chrisjenx/Calligraphy,
Add this dependency to your build gradle
dependencies {
compile 'uk.co.chrisjenx:calligraphy:2.3.0'
}
Then in your activity override this method
@Override
public void onCreate() {
super.onCreate();
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("fonts/Roboto-RobotoRegular.ttf")
.setFontAttrId(R.attr.fontPath)
.build()
);
//....
}
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
answered Jun 4 '18 at 12:25
prsandroidprsandroid
6528
6528
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f50680187%2fhow-do-i-add-custom-font-on-menu-item-in-android%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
try this link stackoverflow.com/questions/21942533/…
– Android Team
Jun 4 '18 at 12:08