दिलचस्प पोस्ट
जावास्क्रिप्ट में कॉलर फ़ंक्शन को कैसे पता चलेगा? पीएसडी की तरह पृष्ठांकित दस्तावेज बनाने के लिए सीएसएस 2 के बजाय एक्सएसएल-एफओ, CSS3 का उपयोग करें? मैं कोडा के माध्यम से पायथन ओपनसीवी कैसे स्थापित करूं? एंड्रॉइड-स्टूडियो परियोजना के लिए निर्भरता के रूप में गिथबब लाइब्रेरी जोड़ें क्यों मैं सी # विधियों आभासी और स्थिर घोषित नहीं कर सकता? डेटाबेस डिजाइन में 1-to-1 संबंध का उपयोग क्यों करें? डी 3 बल निर्देशित आलेख में लिंक पर पाठ / लेबल जोड़ें स्विफ्ट में विशेषता स्ट्रिंग का उपयोग करके टेक्स्ट बोल्ड करना फ़ाइल को स्विफ्ट में कैसे डाउनलोड करें? ScrollView प्रोग्राम को अक्षम करें? सभी तत्वों के सबसे ऊंचेतम को खोजने के लिए jQuery / CSS का उपयोग करें रन टाइम एंड्रॉइड पर लेआउट की ऊंचाई और चौड़ाई प्राप्त करें ऐप प्रतिनिधि से वर्तमान दृश्य नियंत्रक प्राप्त करें सी # नई टी बनाएं () जावा में कन्स्ट्रक्टर ओवरलोडिंग – सर्वोत्तम अभ्यास

एक बटन जोड़ने का सबसे अच्छा तरीका क्या है?

मैं एंड्रॉइड डेवलपमेंट के लिए नया हूँ। मुझे संदेह है मुझे पता है कि आप एक बटन जोड़ सकते हैं और इसे इनिशियलाइज़ कर सकते हैं

Button b1=(Button) findViewById(R.id.button1); 

और मैं एक्सएमएल फ़ाइल में एक एक्शन नाम भी दे सकता हूं।

  android:onClick="click_event" 

मेरा शक है, जो सबसे अच्छा और कारगर तरीका है? जैसे कि यह कहता है कि हार्ड कोड वाले एक के बजाय @string संसाधन का उपयोग करना बेहतर है

Solutions Collecting From Web of "एक बटन जोड़ने का सबसे अच्छा तरीका क्या है?"

मुझे लगता है कि आप भ्रमित हैं। आपके द्वारा दिए गए उदाहरण दो भिन्न चीजें हैं

एक बटन जोड़ना

यह रेखा

 Button b1=(Button) findViewById(R.id.button1); 

एक Button नहीं जोड़ता है यह घोषित करता है और Button का एक उदाहरण आरंभ करता है जो आपके वर्तमान में फुलाए गए एक्सएमएल में एक Button को इंगित करता है जिसमें Button 1 का id है

तो आपके एक्सएमएल में आपको कहीं न कहीं होगा

 <Button android:id="@+id/button1" <!-- other properties --> /> 

आप प्रोग्राम के साथ एक Button को जोड़ सकते हैं

 Button bt1 = new Button(this); // give it properties 

लेकिन यह आमतौर पर XML में करना आसान होता है क्योंकि यहां आपको प्रोग्रामेटिक रूप से इसे पैरामीटर, प्रॉपर्टी देना है, और उसे फुलाए गए layout जोड़ना है

क्लिक पर

जहाँ तक onClick() यह आपके हालात पर सबसे आसान और सबसे अच्छा है, आपको क्या लगता है पर निर्भर करता है। मैं इसे XML में उस तरह अक्सर घोषित करना चाहता हूं लेकिन आप इसे कई तरीकों से कर सकते हैं इस पद्धति का उपयोग करके आपको यह सुनिश्चित करना होगा कि आपके पास ऐसा फ़ंक्शन है जो public और केवल एक पैरामीटर लेता है और यह पैरामीटर एक View होना चाहिए

  public void clickEvent(View v) { // code here } 

मैंने भी नाम बदल दिया है ताकि आपका एक्सएमएल ऐसा होगा

 <Button android:id="@+id/button1" <!-- other properties --> android:onClick="clickEvent"/> 

आप अपने जावा में कुछ तरह के साथ onClick() सेट कर सकते हैं

 Button b1=(Button) findViewById(R.id.button1); b1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // code here } }); 

या

  Button b1=(Button) findViewById(R.id.button1); b1.setOnClickListener(this); @Override public void onClick(View v) { // code here } 

ध्यान दें कि अंतिम Activity अपने Activity घोषणा में implements OnClickListener को जोड़ने की आवश्यकता होगी

 public class MyActivity extends Activity implements OnClickListener { 

आप अपनी खुद की क्लिक Listener बना सकते हैं जैसे कि इसे बदलकर

 b1.setOnClickListener(myBtnClick); 

तो कुछ की तरह इसे के साथ एक उदाहरण बना

 public OnClickListener myBtnClick = new OnClickListener() { @Override public void onClick(View v) { // click code here } }; 

आप इसे कई Button लिए उपयोग कर सकते हैं और id पर स्विच कर सकते हैं या View परम का पता लगा सकते हैं कि किस Button पर क्लिक किया गया था या अलग Button लिए अलग-अलग Listeners को बनाया गया था।