परिचय
यह उदाहरण दर्शाता है कि Kotlin का उपयोग करके एंड्रॉइड में TransitionManager और Slide ट्रांजिशन का उपयोग करके लेफ्ट-टू-राइट और राइट-टू-लेफ्ट स्लाइड एनिमेशन कैसे बनाया जाए।
चरण 1: नया प्रोजेक्ट बनाएं
Android Studio खोलें, File → New Project पर जाएं और नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2: लेआउट XML कॉन्फ़िगर करें
res/layout/activity_main.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:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="8dp"
tools:context=".MainActivity">
<Button
android:id="@+id/btnSlideLeft"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="30dp"
android:text="बाएं से स्लाइड" />
<Button
android:id="@+id/btnSlideRight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/btnSlideLeft"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="दाएं से स्लाइड" />
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="क्रिस्टियानो रोनाल्डो दुनिया के सर्वश्रेष्ठ खिलाड़ी हैं"
android:textSize="16sp"
android:textStyle="bold"
android:visibility="invisible" />
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/textView"
android:layout_centerInParent="true"
android:text="मेस्सी दुनिया के सर्वश्रेष्ठ खिलाड़ी हैं"
android:textSize="16sp"
android:textStyle="bold"
android:visibility="invisible" />
</RelativeLayout>
चरण 3: Kotlin कोड लागू करें
src/MainActivity.kt में निम्नलिखित कोड जोड़ें:
import android.os.Bundle
import android.transition.Slide
import android.transition.TransitionManager
import android.view.Gravity
import android.view.View
import android.widget.Button
import android.widget.RelativeLayout
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
private lateinit var btnSlideLeft: Button
private lateinit var btnSlideRight: Button
private lateinit var textView: TextView
private lateinit var textView1: TextView
private lateinit var relativeLayout: RelativeLayout
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
title = "KotlinApp"
textView = findViewById(R.id.textView)
textView1 = findViewById(R.id.textView1)
btnSlideLeft = findViewById(R.id.btnSlideLeft)
btnSlideRight = findViewById(R.id.btnSlideRight)
relativeLayout = findViewById(R.id.relativeLayout)
btnSlideLeft.setOnClickListener {
val slide = Slide().apply {
slideEdge = Gravity.START // बाएं से स्लाइड
duration = 500
}
TransitionManager.beginDelayedTransition(relativeLayout, slide)
textView.visibility = View.VISIBLE
}
btnSlideRight.setOnClickListener {
val slide = Slide().apply {
slideEdge = Gravity.END // दाएं से स्लाइड
duration = 500
}
TransitionManager.beginDelayedTransition(relativeLayout, slide)
textView1.visibility = View.VISIBLE
}
}
}
चरण 4: मैनिफेस्ट कॉन्फ़िगर करें
androidManifest.xml में निम्नलिखित कोड जोड़ें:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
package="app.com.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 आइकन पर क्लिक करें। अपना मोबाइल डिवाइस चुनें और ऐप का डिफॉल्ट स्क्रीन देखें।
अन्य ट्रांजिशन प्रकार
- Fade: फेड इन/आउट
- Explode: स्क्रीन किनारों से व्यू बाहर/अंदर आते हैं
- AutoTransition: डिफॉल्ट (फेड + मूव + रिसाइज)
- ChangeBounds: लेआउट बाउंड्स परिवर्तन एनिमेट करता है
// Fade उदाहरण
val fade = Fade().apply { duration = 300 }
TransitionManager.beginDelayedTransition(container, fade)
view.visibility = View.VISIBLE