XML Android स्टूडियो में ऑर्डर करता है


84

मैं Android स्टूडियो में XML विशेषताओं का उचित क्रम रखने के साथ समस्या का सामना कर रहा हूं। जैसा कि आप नीचे देख सकते हैं, styleविशेषता विशेषताओं के बीच layout_*है, लेकिन मैं चाहता हूं कि इसे नाम से आदेश दिया जाए (जैसे कि ग्रहण में)। मैं मानक इंटेलीज कोड फॉर्मैटर का उपयोग कर रहा हूं और एंड्रॉइड स्टूडियो उपयोगकर्ताओं को एक्सएमएल ऑर्डरिंग के बारे में अपने स्वयं के नियमों को सेट करने की क्षमता देता है। सेटिंग में स्थित हैं Code Style -> XML -> Arrangement, लेकिन ऐसा लगता है कि यह काम नहीं कर रहा है या मैं इसका गलत उपयोग कर रहा हूं। डिफ़ॉल्ट कोड फ़ॉर्मेटर का उपयोग करके किसी भी विचार को XML विशेषताओं को कैसे नाम दिया जाए?

<TestView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    style="@style/BackgroundLight"
    android:layout_height="wrap_content">

</TestView>

ध्यान दें कि जब तक एंड्रॉइड स्टूडियो में लेआउट पूर्वावलोकन में एक बग नहीं होता है, तब कांस्टेंटलिंउट के लिए, लेआउट विशेषताओं के क्रम पर निर्भर होता है। उदाहरण के लिए, यदि मैं constraintX_toYof के बाद लेआउट_हाइट और लेआउट_ एक्सपोज़र डाल देता हूं, तो मुझे अलग-अलग परिणाम मिलते हैं जैसे कि मैंने नहीं किया।
nsandersen

जवाबों:


188

आखिरकार मिल गया।

  1. चुनें File > Settings > Code Style > XML > Set from > Predefined Style > Android
  2. सेट File > Settings > Editor > Formatting > Show "Reformat Code" dialog
  3. XML फ़ाइल पर स्वरूपण चलाएं ( CTRL+ALT+Lडिफ़ॉल्ट रूप से)
  4. आपको एक पॉपअप विंडो दिखाई देगी, Rearrange entriesझंडे को सेट करें
  5. Reformat Codeसेटिंग्स में संवाद अक्षम करें

इस तरह हर XML फ़ाइल स्वरूपण एक उचित क्रम में विशेषताओं को सेट करेगा।

संपादित करें: एंड्रॉइड स्टूडियो 0.2.6 के साथ शुरू होने पर XML एंड्रॉइड स्टाइल फॉर्मेटिंग डिफ़ॉल्ट रूप से सेट होती है, लेकिन आपको अभी भी Rearrange Entriesध्वज को मैन्युअल रूप से सेट करना होगा।

http://tools.android.com/recent/androidstudio026released

यदि कोड शैली पहले से ही अनुकूलित नहीं है, तो स्वचालित रूप से Android XML कोड शैली लागू करें। इससे एक्सएमएल विशेषताओं को स्वचालित रूप से ऑर्डर करने के लिए संभव हो जाएगा ("कोड> रिफॉर्मैट कोड ..." संवाद में "रीइनरेंज एंट्री" चेकबॉक्स की जांच करें)।


1
यह गुण rearranges, लेकिन यह उन दोनों के बीच खाली लाइनों को नहीं हटाता है
Maksim Dmitriev

1
ubuntu इसकी CTRL + Shift + ALT + L
H रावल

प्लेटफॉर्म और कॉन्फ़िगरेशन के आधार पर कीबोर्ड शॉर्टकट अलग-अलग हो सकते हैं। इसे जांचने या बदलने के लिए सेटिंग्स -> कीमैप -> रिफॉर्मेट कोड
आईआईटी

यह उत्तर पुराना है, दूसरा नंबर बदल गया है। Ctrl + Alt + Shift + L.
CoolMind

22

अद्यतन: नीचे वर्णित विधि, इस ज्ञात समस्या को ठीक करने का एक आधिकारिक तरीका है, देखें: https://developer.android.com/studio/releases

नवीनतम को अपडेट करने के बाद Android Studio v3.4.2मैंने पाया कि यह XML कोड को ठीक से प्रारूपित नहीं करता है। उदाहरण के लिए, attributes ordering didn't work in layouts। इसने केवल आदेश देने के लिए इंडेंटेशन और नेमस्पेस किया।

मैं इसका कारण नहीं जानता कि इसे अपडेट के बाद क्यों तोड़ा गया लेकिन इसे ठीक करने के लिए भाग्यशाली था:

  1. मैक पर जाएं Settings( CMD + ,)।
  2. formatसर्च बॉक्स में टाइप करें और Editor -> XMLसेटिंग पर क्लिक करें ।
  3. Androidटैब पर क्लिक करें और यहां वही सेटिंग करें जैसा कि यह किसी चित्र पर है:

XML स्वरूपण सेटिंग में Android टैब एक तस्वीर पर सेटिंग्स काफी सामान्य है, लेकिन निश्चित रूप से आप इस टैब को आपके ऊपर सेट कर सकते हैं।

  1. Arrangementटैब पर जाएं और आपको कुछ इस तरह दिखाई देगा:

XML फॉर्मेट सेटिंग में व्यवस्था टैब विशेषताएँ छँटाई नहीं होने का कारण - छँटाई नियम खाली हैं।

  1. इसे ठीक करने के लिए:

    1. चुनें Schemeऔर के साथ खेलते हैं Default IDEऔर Projectविकल्प। उनके बीच स्विच करने से मदद मिल सकती है।
    2. या वह चुनें Schemeजो आपकी आवश्यकताओं को पूरा करता है और फिर Set from...दाहिने ऊपरी कोने में नीले पाठ पर क्लिक करें -> Predefined Style -> Android। आप खिड़की में बहाल नियम देखेंगे:

अंत में आपको यहां पर बहाल नियम दिखाई देंगे मैंने भी चुना Force rearrange - Always

परिणाम बचाने के लिए - क्लिक करें Apply

इसके अलावा, आप पास गियर आइकन पर क्लिक करें Schemeऔर सेटिंग्स को कॉपी करें या यहां तक ​​कि डिफॉल्ट को भी पुनर्स्थापित कर सकते हैं।

PS मेरे लिए मानक नियम आरामदायक हैं, लेकिन इसे आगे भी अनुकूलित किया जा सकता है। यहाँ एक लेख है जो ऐसा करने में मदद कर सकता है: https://medium.com/@VeraKern/formatting-xml-layout-files-for-android-47aec62722fc


6

अपने लेआउट पर जाएं XML
ट्राई करें Ctrl + alt + shift + L फिर पाएं चेकबॉक्स लेबल Rearrange कोड है और इसकी जांच की।


5

उनके बीच की खाली लाइनों को हटाने के लिए:

प्राथमिकताएँ> कोड शैली> XML> अन्य> रिक्त लाइनें रखें: 0

और फिर बस अपनी XML फ़ाइलों का सुधार करें।


1
मेरे लिए बहुत अच्छा काम करता है। विजेट्स के बीच रिक्त लाइनें हैं लेकिन विजेट कोड के अंदर नहीं।
Matwosk

एंड्रॉइड स्टूडियो में xml फाइलें कैसे फॉर्मेट करें? ctrl + alt + L मैक में मेरे लिए काम नहीं करता
Rethinavel

0

IntelliJ के लिए एक प्लगइन है जो आप के बाद क्या कर सकता है ...

http://plugins.jetbrains.com/plugin/?idea&pluginId=6546


मैं इस प्लगइन का उपयोग जावा स्रोत कोड को प्रारूपित करने के लिए कर रहा हूं लेकिन यह XML फ़ाइलों को प्रारूपित नहीं करता है।
टॉमहॉर्ब

0

फ़ाइल> सेटिंग्स> संपादक> एक्सएमएल> व्यवस्था योजना का चयन करें और डिफ़ॉल्ट चुनें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.