दिलचस्प पोस्ट
ASP.NET प्रमाणीकरण लॉगिन और ब्राउज़र बैक बटन के साथ लॉग आउट करें सी # में गतिशील रूप से निर्मित नियंत्रण हटा रहा है पीआईपी कनेक्शन विफलता: इंडेक्स बेस यूआरएल को नहीं लाया जा सकता http://pypi.python.org/simple/ HTML5 और जावास्क्रिप्ट के साथ वीडियो से फ्रेम कैप्चर करें एंड्रॉइड में माइम प्रकार की फ़ाइल का निर्धारण कैसे करें? टाइप किए गए स्मृति दृश्य के लिए मेमोरी आवंटित करने का अनुशंसित तरीका क्या है? ListAdapter और SectionIndexer के साथ फास्ट स्क्रॉल प्रदर्शन समस्या एंड्रॉइड स्टूडियो 3.0 बीटा 1 में उन्नयन के लिए ग्रिडल त्रुटि कैरियर वाह और rmagick का उपयोग करने के लिए एसईओ पर अपलोड करने के लिए EXIF ​​छवि रोटेशन समस्या पायथन के लिए SOAP क्लाइंट लाइब्रेरीज़ मौजूद हैं, और उनके लिए दस्तावेज कहां है? Android में "@ आईडी /" और "@ + id /" के बीच अंतर जीआईटी रीसेट के व्यावहारिक उपयोग – सॉफ्ट? आर में एक मैट्रिक्स घुमाएँ विधानसभा 8086 | एक सरणी का योग, बहु-अंकीय संख्या प्रिंट करना स्प्रिंग-डाटा फ़ेच जॉइन करें, पेजिंग के साथ काम नहीं कर रहा है

एंड्रॉइड टूलबार केंद्र शीर्षक और कस्टम फ़ॉन्ट

मैं उपकरण पट्टी के शीर्षक के लिए एक कस्टम फ़ॉन्ट का उपयोग करने का सही तरीका जानने का प्रयास कर रहा हूं, और इसे टूलबार (क्लाइंट आवश्यकता) में केन्द्रित कर रहा हूं।

फिलहाल, मैं अच्छे पुराने setCustomView का उपयोग कर रहा हूं, और मैं खाली मूल्य के लिए शीर्षक सेट कर रहा हूं, और मेरे कस्टम फॉन्ट setCustomView को setCustomView करने के लिए setCustomView का उपयोग करके और ActionBar.LayoutParams का उपयोग करने के लिए केंद्र का उपयोग कर रहा हूं।

क्या ऐसा करने का एक बेहतर तरीका है? मेरे टूलबार के रूप में नए टूलबार का उपयोग करना

Solutions Collecting From Web of "एंड्रॉइड टूलबार केंद्र शीर्षक और कस्टम फ़ॉन्ट"

अपने Toolbar में एक कस्टम शीर्षक का उपयोग करने के लिए आपको यह याद रखना चाहिए कि Toolbar सिर्फ एक फैंसी व्यू ग्रुप है ताकि आप एक कस्टम शीर्षक जोड़ सकें:

 <android.support.v7.widget.Toolbar android:id="@+id/toolbar_top" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="?attr/actionBarSize" android:background="@color/action_bar_bkgnd" app:theme="@style/ToolBarTheme" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Toolbar Title" android:layout_gravity="center" android:id="@+id/toolbar_title" /> </android.support.v7.widget.Toolbar> 

इसका मतलब यह है कि आप TextView को स्टाइल कर सकते हैं, हालांकि आप चाहेंगे क्योंकि यह सिर्फ एक नियमित TextView इसलिए आपकी गतिविधि में आप इस तरह शीर्षक का उपयोग कर सकते हैं:

 Toolbar toolbarTop = (Toolbar) findViewById(R.id.toolbar_top); TextView mTitle = (TextView) toolbarTop.findViewById(R.id.toolbar_title); 

टूलबार शीर्षक स्टाइलनीय है आप जो भी कस्टमाइज़ेशन करते हैं उसे थीम में बना दिया जाना चाहिए। मैं आपको एक उदाहरण देता हूँ

टूलबार लेआउट:

 <?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.Toolbar style="@style/ToolBarStyle.Event" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary" android:minHeight="@dimen/abc_action_bar_default_height_material" /> 

शैलियाँ:

 <style name="ToolBarStyle" parent="ToolBarStyle.Base"/> <style name="ToolBarStyle.Base" parent=""> <item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item> <item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item> </style> <style name="ToolBarStyle.Event" parent="ToolBarStyle"> <item name="titleTextAppearance">@style/TextAppearance.Widget.Event.Toolbar.Title</item> </style> <style name="TextAppearance.Widget.Event.Toolbar.Title" parent="TextAppearance.Widget.AppCompat.Toolbar.Title"> <!--Any text styling can be done here--> <item name="android:textStyle">normal</item> <item name="android:textSize">@dimen/event_title_text_size</item> </style> 

हमारे पास टूलबार शीर्षक पाठदृश्य तक सीधा पहुंच नहीं है इसलिए हम इसका उपयोग करने के लिए प्रतिबिंब का उपयोग करते हैं।

  private TextView getActionBarTextView() { TextView titleTextView = null; try { Field f = mToolBar.getClass().getDeclaredField("mTitleTextView"); f.setAccessible(true); titleTextView = (TextView) f.get(mToolBar); } catch (NoSuchFieldException e) { } catch (IllegalAccessException e) { } return titleTextView; } 

यह @Juneik और @Rick Sanchez के साथ उत्तर @EyeEngineer13 उत्तर का उपयोग करके सभी टुकड़ों में शामिल होने में मदद करने के लिए सही ढंग से शीर्षक प्राप्त करने में सहायता करने के लिए सही क्रम के साथ टिप्पणियां हैं !!

TextAppearance.AppCompat.Widget.ActionBar.Title साथ लेआउट:

  <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay"> <TextView android:id="@+id/toolbar_title" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title" android:layout_gravity="center" /> </android.support.v7.widget.Toolbar> 

सही क्रम से प्राप्त करने का तरीका:

  Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); TextView mTitle = (TextView) toolbar.findViewById(R.id.toolbar_title); setSupportActionBar(toolbar); mTitle.setText(toolbar.getTitle()); getSupportActionBar().setDisplayShowTitleEnabled(false); 

कृपया @ मि। ईंजिनियर 13 उत्तर को अपवर करने के लिए मत भूलना !!!

यहां एक नमूना प्रोजेक्ट टूलबारसेंटरटाइटल नमूना है

यहां छवि विवरण दर्ज करें

किसी और को मदद करने की आशा;)

Toolbar से TextView उदाहरण ढूंढने के लिए यहां शीर्षक पाठ निर्भर दृष्टिकोण है

  public static TextView getToolbarTitleView(ActionBarActivity activity, Toolbar toolbar){ ActionBar actionBar = activity.getSupportActionBar(); CharSequence actionbarTitle = null; if(actionBar != null) actionbarTitle = actionBar.getTitle(); actionbarTitle = TextUtils.isEmpty(actionbarTitle) ? toolbar.getTitle() : actionbarTitle; if(TextUtils.isEmpty(actionbarTitle)) return null; // can't find if title not set for(int i= 0; i < toolbar.getChildCount(); i++){ View v = toolbar.getChildAt(i); if(v != null && v instanceof TextView){ TextView t = (TextView) v; CharSequence title = t.getText(); if(!TextUtils.isEmpty(title) && actionbarTitle.equals(title) && t.getId() == View.NO_ID){ //Toolbar does not assign id to views with layout params SYSTEM, hence getId() == View.NO_ID //in same manner subtitle TextView can be obtained. return t; } } } return null; } 

किसी ने भी इसका उल्लेख नहीं किया है, लेकिन Toolbar लिए कुछ विशेषताएं हैं:

app:titleTextColor शीर्षक पाठ रंग सेट करने के लिए शीर्षक app:titleTextColor

app:titleTextAppearance शीर्षक टेक्स्ट उपस्थिति सेट करने के लिए शीर्षक टेक्स्ट app:titleTextAppearance

app:titleMargin मार्जिन सेट करने के लिए app:titleMargin मार्जिन

और मार्जिन marginStart जैसे अन्य विशिष्ट साइड मार्जिन आदि हैं।

  public class TestActivity extends AppCompatActivity { private Toolbar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.activity_test); toolbar = (Toolbar) findViewById(R.id.tool_bar); // Attaching the layout to the toolbar object setSupportActionBar(toolbar); customizeToolbar(toolbar); } public void customizeToolbar(Toolbar toolbar){ // Save current title and subtitle final CharSequence originalTitle = toolbar.getTitle(); final CharSequence originalSubtitle = toolbar.getSubtitle(); // Temporarily modify title and subtitle to help detecting each toolbar.setTitle("title"); toolbar.setSubtitle("subtitle"); for(int i = 0; i < toolbar.getChildCount(); i++){ View view = toolbar.getChildAt(i); if(view instanceof TextView){ TextView textView = (TextView) view; if(textView.getText().equals("title")){ // Customize title's TextView Toolbar.LayoutParams params = new Toolbar.LayoutParams(Toolbar.LayoutParams.WRAP_CONTENT, Toolbar.LayoutParams.MATCH_PARENT); params.gravity = Gravity.CENTER_HORIZONTAL; textView.setLayoutParams(params); // Apply custom font using the Calligraphy library Typeface typeface = TypefaceUtils.load(getAssets(), "fonts/myfont-1.otf"); textView.setTypeface(typeface); } else if(textView.getText().equals("subtitle")){ // Customize subtitle's TextView Toolbar.LayoutParams params = new Toolbar.LayoutParams(Toolbar.LayoutParams.WRAP_CONTENT, Toolbar.LayoutParams.MATCH_PARENT); params.gravity = Gravity.CENTER_HORIZONTAL; textView.setLayoutParams(params); // Apply custom font using the Calligraphy library Typeface typeface = TypefaceUtils.load(getAssets(), "fonts/myfont-2.otf"); textView.setTypeface(typeface); } } } // Restore title and subtitle toolbar.setTitle(originalTitle); toolbar.setSubtitle(originalSubtitle); } } 

मैं इस समाधान का उपयोग करता हूं:

 static void centerToolbarTitle(@NonNull final Toolbar toolbar) { final CharSequence title = toolbar.getTitle(); final ArrayList<View> outViews = new ArrayList<>(1); toolbar.findViewsWithText(outViews, title, View.FIND_VIEWS_WITH_TEXT); if (!outViews.isEmpty()) { final TextView titleView = (TextView) outViews.get(0); titleView.setGravity(Gravity.CENTER); final Toolbar.LayoutParams layoutParams = (Toolbar.LayoutParams) titleView.getLayoutParams(); layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT; toolbar.requestLayout(); //also you can use titleView for changing font: titleView.setTypeface(Typeface); } } 

टूलबार के बिना TextView हम नीचे कोड का उपयोग करके फ़ॉन्ट अनुकूलित कर सकते हैं

 getSupportActionBar().setDisplayShowTitleEnabled(false); or getActionBar().setDisplayShowTitleEnabled(false); public void updateActionbar(String title){ SpannableString spannableString = new SpannableString(title); spannableString.setSpan(new TypefaceSpanString(this, "futurastdmedium.ttf"), 0, spannableString.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); mToolbar.setTitle(spannableString); } 

लेआउट:

 <android.support.v7.widget.Toolbar android:id="@+id/toolbar_top" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="?attr/actionBarSize" android:background="@color/action_bar_bkgnd" app:theme="@style/ToolBarTheme" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Toolbar Title" android:layout_gravity="center" android:gravity="center" android:id="@+id/toolbar_title" /> </android.support.v7.widget.Toolbar> 

कोड:

  Toolbar mToolbar = parent.findViewById(R.id.toolbar_top); TextView mToolbarCustomTitle = parent.findViewById(R.id.toolbar_title); //setup width of custom title to match in parent toolbar mToolbar.postDelayed(new Runnable() { @Override public void run () { int maxWidth = mToolbar.getWidth(); int titleWidth = mToolbarCustomTitle.getWidth(); int iconWidth = maxWidth - titleWidth; if (iconWidth > 0) { //icons (drawer, menu) are on left and right side int width = maxWidth - iconWidth * 2; mToolbarCustomTitle.setMinimumWidth(width); mToolbarCustomTitle.getLayoutParams().width = width; } } }, 0); 

आप निम्न की तरह उपयोग कर सकते हैं

  <android.support.v7.widget.Toolbar android:id="@+id/top_actionbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/AppThemeToolbar"> <TextView android:id="@+id/pageTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center" /> </android.support.v7.widget.Toolbar> 

मुझे नहीं पता है कि ऐपपरपेट लाइब्रेरी में कुछ भी बदल गया है, लेकिन यह काफी तुच्छ है, प्रतिबिंब की कोई ज़रूरत नहीं है।

 Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); // loop through all toolbar children right after setting support // action bar because the text view has no id assigned // also make sure that the activity has some title here // because calling setText() with an empty string actually // removes the text view from the toolbar TextView toolbarTitle = null; for (int i = 0; i < toolbar.getChildCount(); ++i) { View child = toolbar.getChildAt(i); // assuming that the title is the first instance of TextView // you can also check if the title string matches if (child instanceof TextView) { toolbarTitle = (TextView)child; break; } } 

समाधान जो मैंने इस समस्या के लिए उपयोग किया था:

  public static void applyFontForToolbarTitle(Activity a){ Toolbar toolbar = (Toolbar) a.findViewById(R.id.app_bar); for(int i = 0; i < toolbar.getChildCount(); i++){ View view = toolbar.getChildAt(i); if(view instanceof TextView){ TextView tv = (TextView) view; if(tv.getText().equals(a.getTitle())){ tv.setTypeface(getRuneTypefaceBold(a)); break; } } } } 

केंद्र के गुरुत्वाकर्षण के लिए मुझे लगता है कि यह मैच-पैरेंट को क्षैतिज रूप से लेआउट पैरामीटर बदलना होगा और फिर:

 tv.setGravity(Gravity.CENTER); 

मैंने इस समाधान का समाधान किया, और यह निम्नलिखित कोड है:

 <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Order History" android:layout_gravity="center" android:id="@+id/toolbar_title" android:textSize="17sp" android:textStyle="bold" android:textColor="@color/colorWhite" /> </android.support.v7.widget.Toolbar> 

और आप शीर्षक / लेबल को गतिविधि में बदल सकते हैं, नीचे दिए गए कोड लिख सकते हैं:

 Toolbar toolbarTop = (Toolbar) findViewById(R.id.toolbar_top); 

TextView mTitle = (TextView) टूलबारटॉप.फ़ीन्डव्यूबीआईआईडी (आर.ड.टोलबार_टाइटल); mTitle.setText ( "@ स्ट्रिंग / ….");

निम्न वर्ग को परिभाषित करें:

 public class CenteredToolbar extends Toolbar { private TextView centeredTitleTextView; public CenteredToolbar(Context context) { super(context); } public CenteredToolbar(Context context, @Nullable AttributeSet attrs) { super(context, attrs); } public CenteredToolbar(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } @Override public void setTitle(@StringRes int resId) { String s = getResources().getString(resId); setTitle(s); } @Override public void setTitle(CharSequence title) { getCenteredTitleTextView().setText(title); } @Override public CharSequence getTitle() { return getCenteredTitleTextView().getText().toString(); } public void setTypeface(Typeface font) { getCenteredTitleTextView().setTypeface(font); } private TextView getCenteredTitleTextView() { if (centeredTitleTextView == null) { centeredTitleTextView = new TextView(getContext()); centeredTitleTextView.setTypeface(...); centeredTitleTextView.setSingleLine(); centeredTitleTextView.setEllipsize(TextUtils.TruncateAt.END); centeredTitleTextView.setGravity(Gravity.CENTER); centeredTitleTextView.setTextAppearance(getContext(), R.style.TextAppearance_AppCompat_Widget_ActionBar_Title); Toolbar.LayoutParams lp = new Toolbar.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); lp.gravity = Gravity.CENTER; centeredTitleTextView.setLayoutParams(lp); addView(centeredTitleTextView); } return centeredTitleTextView; } } 

… और फिर इसे नियमित Toolbar बजाय इसका उपयोग करें:

 <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/colorAccent"> <your.packagename.here.CenteredToolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary" android:minHeight="?attr/actionBarSize" android:theme="?attr/actionBarTheme" app:title="@string/reset_password_page_title"/> <!-- Other views --> </RelativeLayout> 

आपको अभी भी अपनी Activity में कोड की इन 2 लाइनों (मानक Toolbar साथ) की आवश्यकता है:

 Toolbar toolbar = (Toolbar) findViewByid(R.id.toolbar); // note that your activity doesn't need to know that it is actually a custom Toolbar setSupportActionBar(binding.toolbar); 

बस! आपको मानक बायां संरेखित शीर्षक को छिपाने की आवश्यकता नहीं है, उसी एक्सएमएल कोड को और अधिक से अधिक डुप्लिकेट करने की आवश्यकता नहीं है, आदि। बस CenteredToolbar Toolbar उपयोग करें जैसे कि यह डिफ़ॉल्ट Toolbar था। आप अपने कस्टम फ़ॉन्ट को प्रोग्रामुसार भी सेट कर सकते हैं क्योंकि अब आपके पास TextView लिए सीधी पहुंच है। उम्मीद है की यह मदद करेगा।

textviewtextview बाद से android.support.v7.appcompat 24.2 Toolbar में विधि setTitleTextAppearance और आप अपने textview को बाहरी textview बिना सेट कर सकते हैं।

styles.xml में नई शैली बनाएं

 <style name="RobotoBoldTextAppearance"> <item name="android:fontFamily">@font/roboto_condensed_bold</item> </style> 

और इसका इस्तेमाल करें

 mToolbar.setTitleTextAppearance(this, R.style.RobotoBoldTextAppearance); 

हालांकि टूलबार पर पाठ दृश्य जोड़ने से शीर्षक स्टाइल के प्रतिबंध की समस्या हल हो सकती है, इसके साथ एक समस्या है चूंकि हम इसे किसी लेआउट में नहीं जोड़ रहे हैं, इसलिए इसकी चौड़ाई पर हमारे पास बहुत अधिक नियंत्रण नहीं है। हम या तो wrap_content या match_parent का उपयोग कर सकते हैं

अब एक परिदृश्य पर विचार करें जहां हमारे पास टूलबार के दाहिने किनारे पर एक बटन के रूप में एक searchView है यदि शीर्षक सामग्री अधिक है, तो यह बटन को छिपाने के शीर्ष पर होगा। इस लेबल को चौड़ाई सेट करने के लिए इस छोटे को नियंत्रित करने का कोई तरीका नहीं है और ऐसा कुछ है जिसे आप उत्तरदायी डिजाइन करना चाहते हैं।

तो, यह एक ऐसा समाधान है जो मेरे लिए काम करता है जो टूलबार में एक पाठ दृश्य जोड़ने से थोड़ा अलग है। इसके बजाय, एक सापेक्ष लेआउट में टूलबार और पाठ दृश्य जोड़ें और सुनिश्चित करें कि पाठ दृश्य टूलबार के शीर्ष पर है इसके बाद हम उपयुक्त मार्जिन का उपयोग कर सकते हैं और यह सुनिश्चित कर लें कि टेक्स्ट दृश्य दिखाता है कि हम कहां दिखाना चाहते हैं।

सुनिश्चित करें कि आपने शीर्षक को दिखाने के लिए टूलबार सेट नहीं किया है।

इस समाधान के लिए XML यहां है:

 <RelativeLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary"> <android.support.v7.widget.Toolbar android:theme="@style/ThemeOverlay.AppCompat.Dark" android:id="@+id/activity_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:titleTextAppearance="@style/AppTheme.TitleTextView" android:layout_marginRight="40dp" android:layoutMode="clipBounds"> <android.support.v7.widget.SearchView android:id="@+id/search_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:layout_centerVertical="true" android:layout_alignParentRight="true" android:foregroundTint="@color/white" /> </android.support.v7.widget.Toolbar> <TextView android:id="@+id/toolbar_title" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="90dp" android:text="@string/app_name" android:textSize="@dimen/title_text_size" android:textColor="@color/white" android:lines="1" android:layout_marginLeft="72dp" android:layout_centerVertical="true" /> </RelativeLayout> 

ऊपर बताए गए अंकुर-चौधरी के मुद्दे को सुलझता है।

प्रयत्न

 @Override public void onBackPressed() { if(getTitle().equals(getResources().getString(R.string.app_name))) { super.onBackPressed();} else { //set visiblity } } 
 private void makeTitleCenter(String title, Toolbar toolbar) { if (title != null && !TextUtils.isEmpty(title.trim())) { final String tag = " "; if (getSupportActionBar() != null) { getSupportActionBar().setTitle(tag); } TextView titleTv = null; View leftBtn = null; for (int i = 0; i < toolbar.getChildCount(); i++) { View view = toolbar.getChildAt(i); CharSequence text = null; if (view instanceof TextView && (text = ((TextView) view).getText()) != null && text.equals(tag)) { titleTv = (TextView) view; } else if (view instanceof ImageButton) { leftBtn = view; } } if (titleTv != null) { final TextView fTitleTv = titleTv; final View fLeftBtn = leftBtn; fTitleTv.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { @Override public void onGlobalLayout() { fTitleTv.getViewTreeObserver().removeOnGlobalLayoutListener(this); int leftWidgetWidth = fLeftBtn != null ? fLeftBtn.getWidth() : 0; fTitleTv.setPadding(DimenUtil.getResources().getDisplayMetrics().widthPixels / 2 - leftWidgetWidth - fTitleTv.getWidth() / 2, 0, 0, 0); fTitleTv.requestLayout(); } }); } } } 

android:gravity="center" सेटिंग android:gravity="center" मेरे लिए काम किया है

कोई भी स्टाइल नहीं है टूलबार मूल रूप से एक ViewGroup समूह है जिसे आपको करने की ज़रूरत है उसमें तत्वों का गुरुत्वाकर्षण निर्धारित किया गया है।

  <android.support.v7.widget.Toolbar android:id="@+id/htab_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:layout_gravity="top" android:background="@color/partial_transparent" android:gravity="center" app:layout_collapseMode="pin" app:layout_scrollFlags="scroll|enterAlways" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> 
  <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Toolbar Title" android:textSize="25sp" android:textStyle="bold" android:textColor="@color/white" android:layout_gravity="center" android:id="@+id/toolbar_title" /> </android.support.v7.widget.Toolbar> 

उपरोक्त समाधानों में से कोई भी मेरे लिए काम नहीं करता मैंने पाया कि डिफ़ॉल्ट कार्यवाहक व्यवहार को ओवरराइड करते हुए मैं अपने कस्टम दृश्य को लागू कर सकता था

इस कोड को आज़माएं:

getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); getSupportActionBar().setCustomView(R.layout.toolbar_home);

 Typeface face= Typeface.createFromAsset(getAssets(), "font/font.ttf"); // your custom font Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar.setTypeface(face); setSupportActionBar(toolbar); 

अन्य ट्यूटोरियल:

  1. एंड्रॉइड टूलबार उदाहरण
  2. एंड्रॉइड में कस्टम फ़ॉन्ट का उपयोग करना
  3. उदाहरण के साथ एक्शनबार ट्यूटोरियल