2013-05-23 7 views
5

मेरे पास मेरे रैखिक लेआउट में 4 बटन हैं और मुझे पहले बटन पर लाने की आवश्यकता है।एंड्रॉइड - रैखिक लेआउट लाने के लिए टॉफ्रंट()

सामान्य आदेश

Button 1 | Button 2 | Button 3 | Button 4 

है लेकिन जब मैं button1.bringToFront फोन() फ़ंक्शन, BUTTON1 तरह

Button 2 | Button 3 | Button 4 | Button 1 

मैं कैसे इस समस्या को हल कर सकते हैं समाप्त करने के लिए जा रहा है। सापेक्ष लेआउट इस समस्या का कारण नहीं बनता है लेकिन मुझे LinearLayout का उपयोग करना होगा क्योंकि बटन लंबवत क्रमबद्ध करेंगे और मैं कुछ स्थितियों में एक बटन हटा रहा हूं।

धन्यवाद

+0

क्या उत्पादन के लिए आप देख रहे हैं? –

उत्तर

7

LinearLayout z- अक्ष के साथ काम नहीं करता है, इसलिए, यह नाम linear है। वांछित प्रभाव प्राप्त करने के लिए RelativeLayout का उपयोग करने का प्रयास करें और फिर bringToFront() पर कॉल करें। RelativeLayout के साथ आप लंबवत दृश्यों को ऑर्डर करने के लिए layout_alignBollow पर कॉल कर सकते हैं। या उदाहरण के लिए, आप अपने LinearLayout घोंसला तीन RelativeLayout के भीतर अपने Buttons (इस दृष्टिकोण से सावधान रहें क्योंकि बहुत सारे विचार जोड़ना एक बुरी चीज हो सकती है) के भीतर दृश्य और लेआउट घोंसला कर सकते हैं।

+0

layout_alignBollow क्या है? – dracula

+0

मेरे पास ओवरलैपिंग बटन की एक पंक्ति थी। एक LinearLayout के बजाय एक रिलेवेटिवआउट का उपयोग करने की आपकी युक्ति मेरे लिए काम करती है (कॉलिंग अनुरोध Layout() के साथ संयोजन में और उस रिलेटिवलायआउट (यह ओवरलैपिंग बटन के अभिभावक) पर अमान्य() है। – MacD

+0

@ ड्रेकुला: वह शायद लेआउट_लाइन साइन करें .. – GeertVc

0

अपना लेआउट लेआउट को फिर से व्यवस्थित करने के लिए बल Layout() को कॉल करें।

+0

क्या आप विस्तृत कर सकते हैं? –

1

bringToFront के बाद से भोजनालयों अप LinearLayout आदेश, मैं एक RelativeLayout का उपयोग करें और "टॉप" (देखें ऊपर मैं चाहता हूँ) एक्सएमएल में पिछली बार देखे जाने का निर्णय लिया।

उदाहरण:

<RelativeLayout ...> 

    <ViewBelow 
     android:layout_below="@+id/view_on_top" 
     ... 
     /> 

    <!-- Last view in XML appears above other views on screen --> 
    <ViewOnTop 
     android:id="@+id/view_on_top" 
     ... 
     /> 

</RelativeLayout> 

इस सवाल के विशिष्ट मामले में, ViewOnTop बटन 1 होगा, और ViewBelow एक LinearLayout अन्य बटन से युक्त होगा।

0

यदि आपको लाइनरलाइट में जेड-अक्ष के साथ काम करना है, तो आप setTranslationZ फ़ंक्शन का उपयोग कर सकते हैं।

उदाहरण:

yourView.setTranslationZ(100); 
संबंधित मुद्दे