दिलचस्प पोस्ट
$ (यह) AJAX सफलता के अंदर काम नहीं कर रहा है स्ट्रिंग में PHP कोड निष्पादित करें PHP PHP में एरेज़ विधानसभा, प्रिंटिंग आस्की नंबर क्या मैं छद्म तत्वों के लिए सिंगल या डबल कॉलन अंकन का उपयोग करना चाहिए? ओपन सीवी द्वारा फ़िशइए लेंस प्रभाव कैसे अनुकरण करना है? एक अमूर्त वर्ग के बजाय एक अंतरफलक का उपयोग करने के लिए और इसके विपरीत? Linq का उपयोग कर चर पूर्णांक श्रेणी से समूह माउस कर्सर को सी # का उपयोग कैसे करें? find_or_create के साथ स्वीकार करता है? सफारी में लोचदार स्क्रॉल करना अक्षम करें क्या भविष्य और मानचित्र के बीच अंतर है? सी # के लिए क्या स्थिर विश्लेषण उपकरण उपलब्ध हैं? PHP बफर ob_flush () बनाम फ्लश () JQuery $ .scrollTo () फ़ंक्शन का उपयोग करके विंडो को कैसे स्क्रॉल करें

कैसे एंड्रॉइड में एक दृश्य के लिए छाया सेट करने के लिए?

मैं जानना चाहता हूं कि एंड्रॉइड में किसी भी सामान्य व्यू के लिए छाया परत कैसे जोड़ें। उदाहरण के लिए: मान लीजिए मेरे पास लेआउट एक्सएमएल है, ऐसा कुछ दिखा रहा है ..

<?xml version="1.0" encoding="utf-8"?> <LinearLayout android:layout_height="wrap_content" android:layout_width="wrap_content" <Button.... ... </LinearLayout> 

अब जब इसे प्रदर्शित किया जाता है तो मुझे इसके चारों ओर एक छाया रखना है।

वेब के समाधान से एकत्रित समाधान "कैसे एंड्रॉइड में एक दृश्य के लिए छाया सेट करने के लिए?"

एक साधारण चाल है, दो विचारों का उपयोग करते हैं जो छाया बनाती हैं।

 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dp" android:background="#CC55CC"> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TableLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:stretchColumns="0"> <TableRow> <LinearLayout android:id="@+id/content" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#FFFFFF" android:text="@string/hello" /> </LinearLayout> <View android:layout_width="5dp" android:layout_height="fill_parent" android:layout_marginTop="5dp" android:background="#55000000"/> </TableRow> </TableLayout> <View android:layout_width="fill_parent" android:layout_height="5dp" android:layout_marginLeft="5dp" android:background="#55000000"/> </LinearLayout> </FrameLayout> 

उममीद है कि इससे मदद मिलेगी।

एक छाया बनाने का सबसे अच्छा तरीका दृश्य की पृष्ठभूमि के रूप में 9 9patch चित्र का उपयोग करना है (या व्यू समूह जो दृश्य को लपेटता है)।

पहला कदम उसके चारों ओर एक छाया के साथ एक पीजीजी छवि बनाना है। मैंने ऐसी तस्वीर बनाने के लिए फ़ोटोशॉप का उपयोग किया था इसकी वास्तव में सरल

  • फ़ोटोशॉप के साथ एक नई छवि बनाएं
  • एक परत जोड़ें और 4×4 का एक काला वर्ग बनाएं।
  • परत एक्सप्लोरर में परत को चुनकर और ड्रॉपबॉक्स चुनने वाले बटन पर क्लिक करके परत पर एक छाया बनाएं।
  • पीएनजी के रूप में छवि निर्यात करें

अगले कदम इस छवि से 9-पैच ड्रॉएबल बनाने के लिए है।

  • android-sdk/tools से ओपन draw9patch 9 draw9patch
  • draw9patch में छवि को draw9patch
  • निम्न की तरह वर्ग के चारों ओर 4 काले लाइनें बनाएं और फिर छवि को shadow.9.pngshadow.9.png रूप में shadow.9.png

अब आप इस छाया को उन दृश्यों की पृष्ठभूमि के रूप में जोड़ सकते हैं, जिन्हें आप छाया को जोड़ना चाहते हैं। res/drawables shadow.9.png लिए shadow.9.pngshadow.9.png को जोड़ें अब इसे पृष्ठभूमि के रूप में जोड़ें:

 <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/shadow" android:paddingBottom="5px" android:paddingLeft="6px" android:paddingRight="5px" android:paddingTop="5px" > 

मैंने हाल ही में एक ब्लॉग पोस्ट लिखा है जो इसे विस्तार से बताता है और इसमें 9 पैच वाली छवि शामिल होती है जिसका उपयोग मैं छाया बनाने के लिए करता हूं

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

activity_main

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/vertical" android:layout_width="match_parent" android:layout_height="150dp" android:background="@drawable/layout_back_bgn" android:orientation="vertical" > </LinearLayout> <View android:layout_below="@+id/vertical" android:layout_width="match_parent" android:layout_height="10dp" android:background="@drawable/shadow" > </View> </LinearLayout> 

layout_back_bgn.xml

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <solid android:color="#FF4500" /> </shape> 

shadow.xml

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:startColor="#4D4D4D" android:endColor="#E6E6E6" android:angle="270" > </gradient> </shape> 

मैंने ऊपर दिए गए कोड का उपयोग करने के बाद मेरे पास एक इमेज पोस्ट करने की कोशिश की, लेकिन स्टैकवॉवरफ्लो मुझे कॉज़ की अनुमति नहीं देता है, मुझे प्रतिष्ठा नहीं है..उसके बारे में क्षमा करें।

एपीआई स्तर 21 के बाद से आप उन्नयन का उपयोग कर सकते हैं

जेड प्रॉपर्टी द्वारा दर्शाया गया एक दृश्य की ऊंचाई, इसकी छाया का दृश्य स्वरूप निर्धारित करती है: उच्च जेड मान वाले विचार बड़े, नरम छाया को कहते हैं। उच्च Z मान वाले दृश्यों को कम Z मान वाले दृश्य दिखाई देते हैं; हालांकि, किसी दृश्य के Z मान दृश्य के आकार को प्रभावित नहीं करता है। किसी दृश्य की ऊंचाई तय करने के लिए:

एक लेआउट परिभाषा में, का उपयोग करें

 android:elevation 

विशेषता। किसी गतिविधि के कोड में एक दृश्य की ऊंचाई को सेट करने के लिए, का उपयोग करें

 View.setElevation() 

तरीका।

स्रोत

यहां समाधान का मेरा प्यारा संस्करण है … यह यहां दिए गए समाधान का संशोधन है

मुझे नहीं लगता कि कोनों को कैसे दिखता है, इसलिए मैं उन सभी को मोहित कर देता हूं …

 <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <!--Layer 0--> <!--Layer 1--> <!--Layer 2--> <!--Layer 3--> <!--Layer 4 (content background)--> <!-- dropshadow --> <item> <shape> <gradient android:startColor="@color/white" android:endColor="@color/white" android:centerColor="#10CCCCCC" android:angle="180"/> <padding android:top="0dp" android:right="0dp" android:bottom="2dp" android:left="0dp" /> </shape> </item> <item> <shape> <gradient android:startColor="@color/white" android:endColor="@color/white" android:centerColor="#20CCCCCC" android:angle="180"/> <padding android:top="0dp" android:right="0dp" android:bottom="2dp" android:left="0dp" /> </shape> </item> <item> <shape> <gradient android:startColor="@color/white" android:endColor="@color/white" android:centerColor="#30CCCCCC" android:angle="180"/> <padding android:top="0dp" android:right="0dp" android:bottom="2dp" android:left="0dp" /> </shape> </item> <item> <shape> <gradient android:startColor="@color/white" android:endColor="@color/white" android:centerColor="#40CCCCCC" android:angle="180"/> <padding android:top="0dp" android:right="0dp" android:bottom="2dp" android:left="0dp" /> </shape> </item> <item> <shape> <gradient android:startColor="@color/white" android:endColor="@color/white" android:centerColor="#50CCCCCC" android:angle="180"/> <padding android:top="0dp" android:right="0dp" android:bottom="2dp" android:left="0dp" /> </shape> </item> <!-- content background --> <item> <shape> <solid android:color="@color/PostIt_yellow" /> </shape> </item> 

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

 </LinearLayout> <View android:layout_width="match_parent" android:layout_height="2dp" android:background="@color/dropShadow" /> 

रेखा के नीचे बस का उपयोग करें

एक अन्य विधि

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

बनाओ "rounded_corner_bg.xml" इन / ड्रायबल फ़ोल्डर में

 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <solid android:color="@color/primaryColor" /> <corners android:radius="4dp" /> </shape> </item> <item android:bottom="2dp" android:left="0dp" android:right="0dp" android:top="0dp"> <shape android:shape="rectangle"> <solid android:color="#F7F7F7" /> <corners android:radius="4dp" /> </shape> </item> </layer-list> 

android:background="@drawable/rounded_corner_bg" लेआउट का उपयोग करने के लिए android:background="@drawable/rounded_corner_bg"