मुझे पता है कि गतिविधि के शीर्षक को स्थापित करने के दो तरीके हैं। एक तरीका यह एंड्रॉइड मेनिफेस्ट में इस एंड्रॉइड की तरह सेटिंग है: लेबल = "@ स्ट्रिंग/एप_नाम"। दूसरा प्रोग्राम गतिविधि में प्रोग्रामिंग रूप से सेटटाइटल ("हैलो वर्ल्ड!") है। दोनों तरफ बाईं तरफ स्थित हैं लेकिन मैं इसे केंद्र में कैसे रख सकता हूं?गतिविधि में शीर्षक या लेबल को केंद्र कैसे संरेखित करें?
उत्तर
आपको एक कस्टम शीर्षक शैली/विषय परिभाषित करने की आवश्यकता होगी। Com.example.android.apis.app.CustomTitle के लिए नमूने देखें।
मैं शीर्षक केंद्र स्थापित करने का एक और रास्ता मिल गया, बस setContentView (R.layout.new) के तहत कोड डाल ...
((TextView)((FrameLayout)((LinearLayout)((ViewGroup) getWindow().getDecorView()).getChildAt(0)).getChildAt(0)).getChildAt(0)).setGravity(Gravity.CENTER);
आशा इस मदद करता है। धन्यवाद!
@ ef2011, कोई समस्या नहीं! – exception01
इस के साथ एकमात्र समस्या यह है कि यह विंडो सामग्री की संरचना के तरीके के बारे में अनियंत्रित पहलुओं पर निर्भर करता है। Google मूल रूप से अनियंत्रित डेटा संरचनाओं को बदलने के लिए जाना जाता है, और इस बात की कोई गारंटी नहीं है कि यह विशेष तकनीक भविष्य में काम करेगी। –
ठीक है, Google बेकार (ओएस डिजाइन पर) और यह मेरे लिए काम नहीं करता है। लेकिन यह करता है: ((TextView) ((LinearLayout) ((ViewGroup) getWindow()। GetDecorView()) getChildAt (0))। GetChildAt (0))। SetGravity (Gravity.CENTER); – HardCoder
यह ठीक काम करेंगे ..
TextView customView = (TextView)
LayoutInflater.from(this).inflate(R.layout.actionbar_custom_title_view_centered,
null);
ActionBar.LayoutParams params = new ActionBar.LayoutParams(
ActionBar.LayoutParams.MATCH_PARENT,
ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER);
customView.setText("Some centered text");
getSupportActionBar().setCustomView(customView, params);
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); // must come before setContentView
setContentView(R.layout.activity_calculator);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar);
लेआउट/title_bar.xml में अपने लेआउट रखो
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myTitle"
android:text="Custom Centered Title"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textColor="@android:color/black"
android:gravity="center"
/>
मैं minSdk 14. का उपयोग कर रहा हूं फिर भी यह मेरे लिए काम नहीं कर रहा है। मेरे प्रश्न देखें: http://stackoverflow.com/questions/17605282/center-title-of-activity-in-android-action-bar –
[AndroidRuntimeException] (http: // stackoverflow। कॉम/क्यू/11254366): आप अन्य शीर्षक सुविधाओं के साथ कस्टम शीर्षक को जोड़ नहीं सकते हैं। – ateiob
@ateiob - हां, विचार यह है कि यदि आप अपने कस्टम शीर्षक में "अन्य शीर्षक सुविधाएं" चाहते हैं, तो आपको उन विशेषताओं को अपने कस्टम शीर्षक में स्वयं बनाना होगा। एंड्रॉइड नहीं जानता कि स्टॉक फीचर्स को कैसे गठबंधन किया जाए जबतक कि यह शीर्षक को ही नियंत्रित न करे। –