मुझे एंड्रॉइड स्टूडियो के लेआउट से परेशानी हो रही हैएंड्रॉइड स्टूडियो 2.2.1 (स्थिर चैनल से) को अपडेट करने के बाद संपादक। संपादक कभी-कभी UI से "कांस्ट्रेन्ड लेआउट" को छुपाता है, जैसा कि नीचे स्क्रीनशॉट पर दिखाया गया है:
मैं बाधा लेआउट अल्फा 9 और डेटा बाइंडिंग का उपयोग कर रहा हूं इसलिए लेआउट "लेआउट" टैग में लिपटा हुआ है। यहां उदाहरण के लिए कोड है:
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="viewModel"
type="my.package.name.DashboardViewModel"/>
</data>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.constraint.ConstraintLayout>
</layout>
जब मैं लेआउट से तत्वों को जोड़ता / हटाता हूं तो नियंत्रण गायब हो जाते हैं और दिखाई देते हैं। क्या यह नए एंड्रॉइड स्टूडियो या बाधा लेआउट में एक बग है? या मुझ से कुछ गलत हो रहा है?
उत्तर:
जवाब के लिए 3 № 1चलो एक बग कहते हैं :)
(मैंने अभी इसे यहाँ दायर किया है: https://code.google.com/p/android/issues/detail?id=224973)
क्या हो रहा है कि हम केवल उन नियंत्रणों को दिखाते हैं जो वर्तमान चयन पर लागू हो सकते हैं, या यदि चीजें चुनी हुई हैं तो रूट लेआउट टैग के कारण, रूट isn "t a ConstraintLayout
, इसलिए हम आपके द्वारा चुने जाने तक नियंत्रण नहीं दिखाते हैंएक तत्व। यह एक ऐसा मुद्दा है जिसका सामना आप तब भी करेंगे जब आप एक सीएल को किसी अन्य लेआउट के अंदर एम्बेड करेंगे, लेकिन कम से कम डेटाबाइंडिंग के मामले में हमें शायद ऐसा व्यवहार करना चाहिए जैसे कि रूट सीएल तत्व था।
धन्यवाद, हम "इस asap को ठीक करने का प्रयास करेंगे।
जवाब के लिए 0 № 2
अद्यतन करें
एंड्रॉइड स्टूडियो 2.3 बीटा 1 में हल किया गया।