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

एंड्रॉइड में Kotlin का उपयोग करके GridView स्क्रॉलिंग को कैसे अक्षम करें?

परिचय

यह उदाहरण दर्शाता है कि एंड्रॉइड में Kotlin का उपयोग करके GridView की स्क्रॉलिंग कार्यक्षमता को कैसे अक्षम किया जाए। यह तब उपयोगी होता है जब आप ग्रिड आइटम को स्थिर रखना चाहते हैं और उपयोगकर्ता को स्क्रॉल करने से रोकना चाहते हैं।

चरण 1: नया प्रोजेक्ट बनाएं

Android Studio में जाएं, File → New Project चुनें और सभी आवश्यक विवरण भरकर एक नया प्रोजेक्ट बनाएं।

चरण 2: लेआउट फ़ाइल में कोड जोड़ें

res/layout/activity_main.xml में निम्नलिखित XML कोड जोड़ें:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="8dp"
    tools:context=".MainActivity">

    <GridView
        android:id="@+id/gridLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</RelativeLayout>

चरण 3: MainActivity.kt में कोड जोड़ें

src/MainActivity.kt में निम्नलिखित Kotlin कोड जोड़ें:

import android.content.Context
import android.os.Bundle
import android.view.MotionEvent
import android.view.View
import android.view.ViewGroup
import android.widget.*
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {
    private lateinit var gridView: GridView
    private var imageIDs = arrayOf(
        R.drawable.ronaldo,
        R.drawable.andre,
        R.drawable.bernado,
        R.drawable.carvalho,
        R.drawable.bruno,
        R.drawable.patricio,
        R.drawable.pepe,
        R.drawable.felix,
        R.drawable.semedo,
        R.drawable.ronaldo
    )

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        title = "KotlinApp"

        gridView = findViewById(R.id.gridLayout)
        gridView.numColumns = 3
        gridView.adapter = ImageAdapterGridView(this)

        // स्क्रॉलिंग अक्षम करने के लिए OnTouchListener सेट करें
        gridView.setOnTouchListener { _, event ->
            Toast.makeText(this@MainActivity, "स्क्रॉलिंग अक्षम है", Toast.LENGTH_SHORT).show()
            event.action == MotionEvent.ACTION_MOVE
        }
    }

    inner class ImageAdapterGridView internal constructor(c: Context) : BaseAdapter() {
        private val context: Context = c

        override fun getCount(): Int = imageIDs.size

        override fun getItem(position: Int): Any? = null

        override fun getItemId(position: Int): Long = 0

        override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {
            val imageView: ImageView
            if (convertView == null) {
                imageView = ImageView(context)
                imageView.layoutParams = AbsListView.LayoutParams(
                    ViewGroup.LayoutParams.WRAP_CONTENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT
                )
                imageView.scaleType = ImageView.ScaleType.CENTER_CROP
                imageView.setPadding(30, 30, 30, 30)
            } else {
                imageView = convertView as ImageView
            }
            imageView.setImageResource(imageIDs[position])
            return imageView
        }
    }
}

चरण 4: AndroidManifest.xml कॉन्फ़िगर करें

androidManifest.xml में निम्नलिखित कोड सुनिश्चित करें:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="com.example.q11">

    <application
        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">

        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>

ऐप चलाएं

अपने एंड्रॉइड डिवाइस को कंप्यूटर से कनेक्ट करें। Android Studio में प्रोजेक्ट की एक्टिविटी फ़ाइल खोलें और टूलबार से Run आइकन पर क्लिक करें। अपना मोबाइल डिवाइस चुनें और देखें कि GridView स्क्रॉल नहीं करता है।

  1. एंड्रॉइड में ब्लूटूथ कैसे अक्षम करें? एंड्रॉइड में ब्लूटूथ कैसे अक्षम करें?

    एंड्रॉइड में प्रोग्रामेटिक रूप से ब्लूटूथ अक्षम करें यह ट्यूटोरियल दिखाता है कि BluetoothManager और BluetoothAdapter.disable() का उपयोग करके ब्लूटूथ कैसे बंद करें। ⚠️ महत्वपूर्ण चेतावनी Android 10 (API 29) से: BluetoothAdapter.disable() और enable() डिप्रिकेटेड हैं और सामान्य ऐप्स के लिए काम नहीं क

  1. - Kotlin का उपयोग करके Android पर स्क्रॉल करने योग्य TextView कैसे बनाएं?

    परिचय यह उदाहरण दर्शाता है कि Kotlin का उपयोग करके Android पर स्क्रॉल करने योग्य TextView कैसे बनाया जाए। चरण 1: नया प्रोजेक्ट बनाएं Android Studio खोलें, File → New Project पर जाएं और आवश्यक विवरण भरकर एक नया प्रोजेक्ट बनाएं। चरण 2: activity_main.xml लेआउट जोड़ें res/layout/activity_main.xml में

  1. - Kotlin का उपयोग करके Android पर JSON ऑब्जेक्ट्स कैसे पार्स करें?

    परिचय यह उदाहरण दर्शाता है कि Kotlin का उपयोग करके Android पर JSON ऑब्जेक्ट्स कैसे पार्स किए जाएं। चरण 1: नया प्रोजेक्ट बनाएं Android Studio खोलें, File → New Project पर जाएं और आवश्यक विवरण भरकर एक नया प्रोजेक्ट बनाएं। चरण 2: activity_main.xml लेआउट जोड़ें res/layout/activity_main.xml में निम्न क