جابجایی بین اکتیویتی ها در کاتلین

سلام میکنم خدمت دوستان

از اونجایی که به تازگی خودم برنامه نویسی کاتلین رو شروع کردم و همینطور ممکنه خیلی از شما عزیزان هم بخواید کاتلین رو یاد بگیرید و یا حتی درخصوص این زبان کنجکاو باشید قضد دارم شروعی از این زبان برنامه نویسی رو با شما عزیزان به اشتراک بگذارم

در این مطلب با آموزش جابجایی بین اکتیویتی ها در کاتلین در خدمت شما هستم

اگر به یاد داشته باشید ما در زبان جاوا از این کد برای جابجایی بین اکتیویتی ها استفاده میکردیم

در کاتلین کدها بسیار خلاصه تر و سریع تر هستتند

مشابه زبان جاوا ابتدا باید یک دکمه یا متن در اکتیویتی اصلی خودمون ایجاد بکنیم

و اکتیویتی دوم خودمون رو هم ایجاد کرده باشیم

در کاتلین دیگه نیازی به تعریف آیدی و findviewbyid کردن نداریم و مستقیما وارد مرحله setOnClick میشم

برای مثال به کدهای زیر توجه کنید :

 

لایه xml اکتیویتی اول

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

<TextView
android:layout_centerInParent="true"
android:background="@drawable/orange_button"
android:layout_width="160dp"
android:layout_height="40dp"
android:gravity="center"
android:textColor="@color/colorWhite"
android:id="@+id/tv_affilate"
android:text="Hello World!">

</RelativeLayout>

 

کدهای کلاس اکتیویتی اول

class MainActivity : AppCompatActivity() {

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

tv_affilate.setOnClickListener {
val intent = Intent(this, SecendActivity::class.java)
startActivity(intent)
}
}
}

خیلی خب همونطور که در کد xml اکتیویتی اول میبینید در خط ۱۷ آیدی متن من tv_affilate تعریف شده

پس من مستقیما به کلاس جاوا اکتیویتی اول خودم میام و با نوشتن آییدی و setOnClick کردن اون کار انتقال به اکتیویتی دوم رو انجام میدم

بصورت خلاصه کد من میشه :


tv_affilate.setOnClickListener {
val intent = Intent(this, SecendActivity::class.java)
startActivity(intent)
}

که در خط دوم میبینید اسم اکتیویتی دوم من SecendActivity هست

و اگر کد رو کپی میکنید کافیه تا اسم اکتیویتی خودتون رو جایگزین بکنید

 

امیدوارم این آموزش ابتدایی کاربر کافی برای شما عزیزان داشته باشه

درصورت نیاز به یک آموزش خاص از کاتلین و یا رفع خطاهای شما میتونید در کامنت ها به من اطلاع بدید تا مطلب مناسب درخواست شما ثبت بشه

مطالب مرتبط
کامنت های شما

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.