Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Android

कोटलिन का उपयोग करके एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करें?

<घंटा/>

यह उदाहरण दर्शाता है कि कोटलिन का उपयोग करके एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करें।

चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।

चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।

  

चरण 4 − नीचे बताए अनुसार कोटलिन क्लास फाइल बनाएं और संबंधित कोड जोड़ें

Contacts.kt -

कक्षा संपर्क { var id =0 var नाम:स्ट्रिंग var phno:स्ट्रिंग आंतरिक कंस्ट्रक्टर (नाम:String, phno:String) {this.name =name this.phno =phno} आंतरिक कंस्ट्रक्टर (आईडी:इंट, नाम:स्ट्रिंग, फोनो:स्ट्रिंग) {this.id =id this.name =name this.phno =phno}}

ContactViewHolder.kt -

आयात करें .id.contactName) var tvPhoneNum:TextView =itemView.findViewById(R.id.phoneNum) var deleteContact:ImageView =itemView.findViewById(R.id.deleteContact) var editContact:ImageView =itemView.findViewById(R.id.editContact) }

ContactAdapter.kt -

<पूर्व>आयात android.app.Activityimport android.content.Contextimport android.text.TextUtilsimport android.view.LayoutInflaterimport android.view.ViewGroupimport android.widget.EditTextimport android.widget.Filterimport android.widget.Filterableimport android.widget.Toastimport androidx .appcompat.app.AlertDialogimport androidx.recyclerview.widget.RecyclerViewimport java.util। * आंतरिक वर्ग संपर्क एडाप्टर (निजी वैल संदर्भ:संदर्भ, सूची संपर्क:ArrayList<संपर्क>):RecyclerView.Adapter(), var listContacts {निजी वर :ArrayList Private val mArrayList:ArrayList Private val mDatabase:SqliteDatabase init {this.listContacts =listContacts this.mArrayList =listContacts mDatabase =SqliteDatabase (संदर्भ)} क्रिएट व्यूहोल्डर (पैरेंट:व्यू ग्रुप) पर फन को ओवरराइड करें:ContactViewHolder {वैल व्यू =LayoutInflater.from(parent.context).inflate(R.layout.contact_list_layout, पैरेंट, असत्य) रेटू आरएन कॉन्टैक्ट व्यूहोल्डर (देखें) } बाइंड व्यूहोल्डर (होल्डर:कॉन्टैक्ट व्यूहोल्डर, स्थिति:इंट) पर फन को ओवरराइड करें { वैल कॉन्टैक्ट्स =लिस्ट कॉन्टैक्ट्स [पोजिशन] होल्डर.टीवीनाम.टेक्स्ट =कॉन्टैक्ट्स.नाम होल्डर.टीवीफोननम.टेक्स्ट =कॉन्टैक्ट्स। editTaskDialog(contacts) } Holder.deleteContact.setOnClickListener {mDatabase.deleteContact(contacts.id) (संदर्भ गतिविधि के रूप में)। खत्म () संदर्भ। startActivity (context.intent)}} फन को ओवरराइड करें getFilter ():फ़िल्टर {वापसी वस्तु:फ़िल्टर () { ओवरराइड फन परफॉर्मफिल्टरिंग (charSequence:CharSequence):FilterResults {वैल charString =charSequence.toString () सूची संपर्क =अगर (charString.isEmpty ()) {mArrayList} और {वैल फ़िल्टर्डलिस्ट =ArrayList<संपर्क>() के लिए (संपर्क में) mArrayList) { अगर (contacts.name.toLowerCase ()। इसमें शामिल है (charString)) { filteredList.add(contacts) } } filteredList } val filterResults =FilterResults() filterResults.values ​​=listContacts return filterResults } फन पब्लिश रिजल्‍ट को ओवरराइड करें (charSequence:CharSequence, filterResults:FilterResults) =नहीं {listResultsContacts. } } } फन को ओवरराइड करें getItemCount ():इंट {रिटर्न लिस्ट कॉन्टैक्ट्स। साइज} प्राइवेट फन एडिट टास्कडिअलॉग (संपर्क:संपर्क) { वैल इन्फ्लेटर =लेआउटइन्फ्लेटर.फ्रॉम (संदर्भ) वैल सबव्यू =inflater.inflate(R.layout.add_contacts, null) वैल nameField:EditText =subView.findViewById (R.id.enterName) वैल contactField:EditText =subView.findViewById (R.id.enterPhoneNum) nameField.setText (contacts.name) contactField.setText (contacts.phno) वैल बिल्डर =AlertDialog. बिल्डर (संदर्भ) बिल्डर.सेटटाइटल ("संपर्क संपादित करें") निर्माता। phNo =contactField.text.toString() अगर (TextUtils.isEmpty(name)) { Toast.makeText(संदर्भ, "कुछ गलत हो गया। अपने इनपुट मानों की जाँच करें", Toast.LENGTH_LONG)। शो ()} और {mDatabase.updateContacts (संपर्क (वस्तुएँ। ) संदर्भ.स्टार्टएक्टिविटी (संदर्भ.इरादा) } }builder.setNegativeButton("CANCEL") { _, _ -> Toast.makeText(संदर्भ, "कार्य रद्द", Toast.LENGTH_LONG).show() }builder.show() }}

SqliteDatabase.kt -

<पूर्व>आयात android.content.ContentValuesimport android.content.Contextimport android.database.sqlite.SQLiteDatabaseimport android.database.sqlite.SQLiteOpenHelperimport java.util.*class SqliteDatabase आंतरिक निर्माता (संदर्भ:प्रसंग?):SQLiteOpenHelper (संदर्भ, DATABASE_NAME, नल, DATABASE_VERSION) {ओवरराइड फन ऑनक्रिएट (डीबी:SQLiteDatabase) { वैल createContactTable =("टेबल बनाएं" + TABLE_CONTACTS + "(" + COLUMN_ID + "पूर्णांक प्राथमिक कुंजी," + COLUMN_NAME + "पाठ," + COLUMN_NO "+" + ")") db.execSQL(createContactTable)} फन ऑन अपग्रेड (डीबी:SQLiteDatabase, OldVersion:Int, newVersion:Int) {db.execSQL("DROP TABLE IF EXISTS $TABLE_CONTACTS") onCreate(db)} fun listContacts( ):ArrayList { val sql ="$TABLE_CONTACTS से * सेलेक्ट करें" वैल डीबी =this.readableDatabase val storeContacts =ArrayList() वैल कर्सर =db.rawQuery(sql, null) if (cur sor.moveToFirst ()) { करना {वैल आईडी =कर्सर। गेटस्ट्रिंग (0)। toInt () वैल नाम =कर्सर। गेटस्ट्रिंग (1) वैल फोनो =कर्सर। गेटस्ट्रिंग (2) स्टोर कॉन्टैक्ट्स। एड (संपर्क (आईडी, नाम, phno))} जबकि (कर्सर.moveToNext ())} कर्सर.क्लोज़ () रिटर्न स्टोर कॉन्टैक्ट्स } फन ऐड कॉन्टैक्ट्स (संपर्क:संपर्क) {वैल वैल्यू =कंटेंटवैल्यूज () वैल्यू।पुट (COLUMN_NAME, कॉन्टैक्ट्स.नाम) वैल्यू।पुट (COLUMN_NO) , contact.phno) वैल डीबी =this.writableDatabase db.insert (TABLE_CONTACTS, नल, मान) } मजेदार अद्यतन संपर्क (संपर्क:संपर्क) { वैल मान =सामग्री मान () मान। पुट (COLUMN_NAME, संपर्क। नाम) मान। COLUMN_NO, contact.phno) val db =this.writableDatabase db.update(TABLE_CONTACTS, मान, "$COLUMN_ID =?", arrayOf(contacts.id.toString ())) } fun deleteContact(id:Int) { val db =this.writableDatabase db.delete(TABLE_CO NTACTS, "$COLUMN_ID =?", arrayOf (id.toString ()))} साथी वस्तु {निजी कॉन्स्ट वैल DATABASE_VERSION =5 निजी कॉन्स्ट वैल DATABASE_NAME ="संपर्क" निजी कॉन्स्ट वैल TABLE_CONTACTS ="संपर्क" निजी कॉन्स्ट वैल COLUMN_ID =" _id" प्राइवेट कॉन्स्टेबल वैल COLUMN_NAME ="contactName" प्राइवेट कॉन्स्टेबल वैल COLUMN_NO ="phoneNumber" }}

चरण 5 - एक लेआउट संसाधन फ़ाइलें बनाएं (add_contacts.xml और contact_list_layout.xml) और निम्न कोड जोड़ें

add_contacts.xml -

  <एडिटटेक्स्ट एंड्रॉइड:आईडी ="@ + आईडी / एंटरफोननम" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:layout_marginEnd="8dp" android:hint="Enter Number" android:inputType="phone" android:maxLines="1" android:padding="12dp" android:textSize="12sp" />

contact_list_layout.xml -

  <रिलेटिव लेआउट एंड्रॉइड:लेआउट_विड्थ ="रैप_कंटेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट"> <टेक्स्ट व्यू एंड्रॉइड:आईडी ="@ + आईडी / कॉन्टैक्टनाम" एंड्रॉइड:लेआउट_विड्थ ="220 डीपी" एंड्रॉइड:लेआउट_हाइट ="wrap_content" android:textSize="12sp" android:textStyle="bold" />     

चरण 6 - निम्नलिखित कोड को androidManifest.xml में जोड़ें

 <एप्लिकेशन android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android) :theme="@style/AppTheme"> <गतिविधि android:name=".MainActivity"> <इरादे-फ़िल्टर> <कार्रवाई android:name="android.intent.action.MAIN" /> <श्रेणी android:name=" android.intent.category.LAUNCHER" />   

आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फाइलों में से एक को खोलें और रन पर क्लिक करें टूलबार से कोटलिन का उपयोग करके एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करें? आइकन। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा

कोटलिन का उपयोग करके एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करें?

कोटलिन का उपयोग करके एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करें?

कोटलिन का उपयोग करके एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करें?


  1. पुनर्चक्रण के साथ बाधा लेआउट का उपयोग कैसे करें?

    यह उदाहरण दिखाता है कि पुनर्चक्रण के साथ बाधा लेआउट का उपयोग कैसे करें चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें। उपरोक्त कोड में, हम

  1. एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करें?

    यह उदाहरण दर्शाता है कि मैं एंड्रॉइड में डेटाबेस के साथ रीसाइक्लरव्यू का उपयोग कैसे करूं। चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। निम्नलिखित निर्भरता को build.gradle में जोड़ें (मॉड्यूल:ऐप) कार्यान्

  1. एंड्रॉइड एप्लिकेशन के साथ SQLite डेटाबेस का उपयोग कैसे करें?

    यह उदाहरण दर्शाता है कि मैं एंड्रॉइड एप्लिकेशन के साथ SQLite डेटाबेस का उपयोग कैसे करूं। चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें। चर