दिलचस्प पोस्ट
क्या मैं दूसरी फ़ाइल से चर का उपयोग कर सकता हूं? सैक पार्सर का उपयोग करके एक्सएमएल को कैसे पार्स करना है I गैर लालची regex मिलान में sed? अधिक से अधिक 2 दशमलव स्थानों पर गोल करें (यदि आवश्यक हो तो) UIButton को छुआ नहीं जा सकता जबकि एनिमेटेड UIView एनाइटमथडिअरीशन के साथ कॉमा ऑपरेटर क्या करता है? क्या प्रकार के नाम के बाद कोष्ठक नए के साथ एक अंतर बनाते हैं? निर्भरता के साथ एक जार बनाने के लिए Gradle का उपयोग करना दृश्य स्टूडियो – कोड के सभी वर्गों को संक्षिप्त करने के लिए कमान? PHP SimpleXML – एक्सपेथ नोड हटाएं क्या एक सरणी एक आदिम प्रकार या वस्तु है (या पूरी तरह से कुछ)? AngularJS में पेजिंग कैसे करें? जावा: MySQL में तैयार की गई कई पंक्तियों को तैयार की गई है सक्रिय निर्देशिका से मैं उपयोगकर्ताओं की सूची कैसे प्राप्त करूं? एंड्रॉइड में कस्टम रेडियो बटन जोड़ना

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

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

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

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

  android:onClick="click_event" 

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

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

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

एक बटन जोड़ना

यह रेखा

 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 को बनाया गया था।