Razieh Shahraki

چند زبانه کردن برنامه

1 ارسال در این موضوع قرار دارد

برنامه نویسی اندروید

در این آموزش میخواهیم برنامه ای ایجاد کنیم که قابلیت تعویض بین چند زبان را داشته باشد.

این آموزش ابتدایی می باشد و برای کمک به دوستانی که میخواهند این قابلیت را به برنامه های خود اضافه کنند می باشد.

برای شروع پروژه جدیدی ایجاد کنید و کد زیر را در آن قرار دهید.

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context=".MainActivity" >

   

        android:id="@+id/textView1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_centerHorizontal="true"

        android:text="@string/hello_world" />

   

        android:id="@+id/button1"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_below="@+id/textView1"

        android:layout_marginTop="43dp"

        android:text="@string/btn1" />

   

        android:id="@+id/button2"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_below="@+id/button1"

        android:layout_centerHorizontal="true"

        android:layout_marginTop="49dp"

        android:text="@string/btn2" />

   

        android:id="@+id/radioGroup1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentBottom="true"

        android:layout_centerHorizontal="true"

        android:layout_marginBottom="36dp" >

       

            android:id="@+id/radio0"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:checked="true"

            android:text="فارسی" />

       

            android:id="@+id/radio1"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="English" />

       

            android:id="@+id/radio2"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="French" />

   

 

در کد فوق ما یک تکست ویو، دو دکمه و سه رادیو باتن برای سه زبان فارسی، انگلیسی و فرانسه داریم.

برای هر زبانی که میخواهید ایجاد کنید یک پوشه به سبک زیر در پوشه res ایجاد کنید.

برنامه نویسی اندروید

[align=right]همانطور که در جدول بالا می بینید باید پوشه مربوط به زبان مورد نظر را ساخته و در آن فایل string.xml را قرار دهیم و هنگام تشخیص زبان از locale استفاده کنیم.[/align]

[align=right]پوشه values پوشه پیش فرض پروژه می باشد که ما برای زبان انگلیسی در نظر گرفته ایم و کد زیر را در فایل string قرار داده ایم.[/align]

<?xml version="1.0" encoding="utf-8"?>

    MultiLanguage

    Settings

    Hello world!

    Button 1

    Button 2

 

 

[align=right]پوشه دیگری به اسم values-ar برای زبان عربی ساخته و کد زیر را در فایل string آن قرار می دهیم.(بجای کلمات عربی فارسی نوشتم:D)[/align]

[align=right][shcode=xml]<?xml version="1.0" encoding="utf-8"?>

    چند زبانه

    تنظیمات

    سلام جهان

    دکمه 1

    دکمه 2

[/shcode][/align]

[align=right]پوشه دیگری به اسم values-fr برای زبان فرانسه ساخته و در فایل string آن کد زیر را قرار می دهیم.[/align]

<?xml version="1.0" encoding="utf-8"?>

    multilingue

    Paramètres

    Bonjour tout le monde!

    bouton 1

    bouton 2

 

خب کار ما با زبان ها تمام شد و به فایل جاوا می رویم.[/align]
در فایل جاوا کد زیر را قرار می دهیم.

package com.example.multilanguage;

import java.util.Locale;

import android.app.Activity;

import android.content.Intent;

import android.content.res.Configuration;

import android.content.res.Resources;

import android.os.Bundle;

import android.util.DisplayMetrics;

import android.widget.RadioButton;

import android.widget.RadioGroup;

public class MainActivity extends Activity {

    RadioGroup rg;

    RadioButton rb0, rb1, rb2;

    String lang;

    Locale myLocale;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        rg = (RadioGroup) findViewById(R.id.radioGroup1);

        rb0 = (RadioButton) findViewById(R.id.radio0);

        rb1 = (RadioButton) findViewById(R.id.radio1);

        rb2 = (RadioButton) findViewById(R.id.radio2);

        if (rb0.isChecked()) {

            setLocale("ar");

        } else if (rb1.isChecked()) {

            setLocale("en");

        } else if (rb2.isChecked()) {

            setLocale("fr");

        }

    }

    public void setLocale(String lang) {

        myLocale = new Locale(lang);

        Resources res = getResources();

        DisplayMetrics dm = res.getDisplayMetrics();

        Configuration conf = res.getConfiguration();

        conf.locale = myLocale;

        res.updateConfiguration(conf, dm);

        Intent refresh = new Intent(this, MainActivity.class);

        refresh.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

        startActivity(refresh);

    }

}

 

کار اصلی در کد فوق با رادیو باتن هاست. در هر رادیو باتن با توجه به متنی که نمایش می دهند از locale استفاده می کنیم و آن را به تابع setLocale ارجاع داده تا تنظیمات جدید را دریافت کرده و اکتیویتی را ریفرش کند.

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

 

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط Omid Zakeri
      ویجت یک برنامه ی کوچک و یا یک کنترل از برنامه ی اندروید شما می باشد که در صفحه ی home  قرار گرفته است.  ویجت ها می توانند به راحتی در دسترس باشند، چرا که به شما اجازه می دهند تا برنامه های مورد علاقه ی خود را روی صفحه home قرار دهید تا به سرعت به آنها دسترسی داشته باشید. احتمالا چند ویجت متداول از جمله ویجت موسیقی، آب و هوا و ساعت، را دیده اید.
      ویجت ها می توانند انواع مختلفی داشته باشند از قبیل ویجت اطلاعات، ویجت های مجموعه، ویجت های کنترل و ویجت های چندگانه. اندروید یک چارچوب کامل به ما ارائه می دهد تا ویجت های خود را گسترش دهیم.
       
      Widget - XML file
      برای ایجاد یک ویجت کاربردی، ابتدا چیزی که نیاز دارید، شی Object AppWidgetProviderInfo است که شما در یک فایل XML ویجت جداگانه تعریف می کنید. برای انجام این کار، بر روی پروژه خود راست کلیک کرده و یک پوشه جدید به نام xml ایجاد کنید. حالا روی پوشه تازه ایجاد شده راست کلیک کرده و یک فایل XML جدید ایجاد کنید. نوع منبع فایل XML باید به AppWidgetProvider تنظیم شود. در فایل xml برخی از خواص را به صورت زیر تعریف می کنید:
      <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="146dp" android:updatePeriodMillis="0" android:minHeight="146dp" android:initialLayout="@layout/activity_main"> </appwidget-provider> Widget - Layout file
      حالا شما باید طرح ویجت خود را در فایل پیش فرض XML خود تعریف کنید. شما می توانید قطعات را برای تولید xml خودکار بکشید.
      Widget - Java file
      پس از تعریف طرح، در حال حاضر یک فایل JAVA جدید ایجاد کنید یا از موجود استفاده کنید و آن را با کلاس AppWidgetProvider گسترش دهید و روش بهروزرسانی آن را به صورت زیر تعریف کنید.
      در روش به روز رسانی، شما باید شیء دو کلاس را که PendingIntent و RemoteViews هستند تعریف کنید. نحو آن :
      PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0); RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.activity_main);  
      Widget - Manifest file
      شما همچنین باید AppWidgetProvider را در فایل manifest خود به شرح زیر اعلام کنید:
      <receiver android:name="ExampleAppWidgetProvider" > <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/example_appwidget_info" /> </receiver>  
      MainActivity.java
      package com.example.omidza.myapplication; import android.app.PendingIntent; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.widget.RemoteViews; import android.widget.Toast; public class MainActivity extends AppWidgetProvider{ public void onUpdate(Context context, AppWidgetManager appWidgetManager,int[] appWidgetIds) { for(int i=0; i<appWidgetIds.length; i++){ int currentWidgetId = appWidgetIds[i]; String url = "http://www.tutorialspoint.com"; Intent intent = new Intent(Intent.ACTION_VIEW); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setData(Uri.parse(url)); PendingIntent pending = PendingIntent.getActivity(context, 0,intent, 0); RemoteViews views = new RemoteViews(context.getPackageName(),R.layout.activity_main); views.setOnClickPendingIntent(R.id.button, pending); appWidgetManager.updateAppWidget(currentWidgetId,views); Toast.makeText(context, "widget added", Toast.LENGTH_SHORT).show(); } } } res/layout/activity_main.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" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity" android:transitionGroup="true"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Tutorials point" android:id="@+id/textView" android:layout_centerHorizontal="true" android:textColor="#ff3412ff" android:textSize="35dp" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Widget" android:id="@+id/button" android:layout_centerHorizontal="true" android:layout_marginTop="61dp" android:layout_below="@+id/textView" /> </RelativeLayout> res/xml/mywidget.xml.
      <?xml version="1.0" encoding="utf-8"?> <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="146dp" android:updatePeriodMillis="0" android:minHeight="146dp" android:initialLayout="@layout/activity_main"> </appwidget-provider> AndroidManifest.xml
      <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.omidza.myapplication" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <receiver android:name=".MainActivity"> <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE"></action> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/mywidget"></meta-data> </receiver> </application> </manifest>  
    • توسط Farzad Sarseifi
      دوازدهمین دوره آموزشی برنامه نویسی اندروید(پیشرفته)
      دوره برنامه نویسی اندروید یکی از جذاب ترین دوره های آموزشی میباشد که مخاطبان دوره میتوانند در این دوره اصول طراحی اپلیکیشن های تحت اندروید را طراحی و پیاده سازی نموده و شروع به کسب درآمد در حوزه اپلیکیشن های موبایل نمایند.کاربران این دوره میتوانند با کسب مهارت های مطرح شده در سرفصلهای دوره گام بزرگ و سریعی جهت ورود به بازار اپلیکیشن های اندرویدی برداشته و با انتشار برنامه های طراحی شده خود در فضای مجاری کسب درآمد کنند.هم اینک ده ها هزار نرم افزار تحت موبایل در فضای اینترنتی منتشر شده که تعداد بی شماری از این نرم افزارها با دانلود های حیرت آور منبع درآمدهای چندین میلیونی برای طراح خود بوده اند.اگر قصد ورود به بازار نرم افزارهای موبایل دارید هم اینک در دروه آموزشی برنامه نویسی اندروید شرکت کنید.
      اهداف کلی این دوره:
        پیاده سازی ORM دیتابیس سرویس های  Background در اندروید آشنایی با کتابخانه های مفید و پرکاربرد اندروید آشنایی با Fragment پیاده سازی وب سرویس پیاده سازی Api های گوگل پیاده سازی FireBase در اندروید پیاده سازی Push Notification در اندروید تست اپلیکیشن Junit و Espresso مهندسی معکول و خروجی نهایی اپلیکیشن ثبت نام دوره اندروید
       
      مشخصات دوره :
      مدرس (مدرسان) : فرزاد سرسیفی
      پیشنیاز: آشنایی با مفاهیم برنامه نویسی - آشنایی با زبان جاوا
      مدت زمان دوره:  10 جلسه  ( کارگاه کاملا عملی تحت پروژه)  به صورت کارگاهی (در مجموع 40 ساعت)(10 نفر)
      تاریخ برگزاری:
      (دوره از  12 آبان ماه 1396 به مدت 10 جلسه  - روزهای  جمعه 14 الی 18)
      مدرک: در پایان دوره مدرک پایان دوره از طرف انستیتو آموزشگاه اندروید ایران ارائه میگردد.
      سه دانشجو نمونه اول به شرکت های معروف ایرانی جهت همکاری معرفی می گردند.
      به دانشجویانی که در دوره های قبلی آموزشگاه اندروید ایران حضور داشتند 20 درصد تخفیف داده خواهد شد
      به شرکت کنندگان در دوره کد ویژه خرید محصولات شاپ دروید داده می شود و می توانند برای همیشه محصولات این فروشگاه را با تخفیف 50 درصدی تهیه کنند.
      ویژگی : آموزش در لابراتوار مجهز به سیستم های روز به صورت شبکه تحت NetSupport و متصل به اینترنت و کاملا اینتراکتیو تحت پروژه عملی انجام خواهد گرفت.
      مکان برگزاری : این دوره آموزشی با همکاری آموزشگاه ویستا برگزار خواهد شد
       
      راهنمای ثبت نام:
      جهت کسب هر نوع اطلاعاتی در خصوص دوره میتوانید با ایمیل info@android-learn.ir وشماره های تماس ۸۸۵۰۸۰۸۰ -۸۸۵۵۴۲۱۷ -۸۸۵۵۴۲۱۳ تلگرام همراه 09100046764 تماس حاصل نمایید.
      ثبت نام دوره اندروید
       
      سرفصلهای دوره آموزشی برنامه نویسی اندروید پیشرفته  به صورت کاملا عملی:   پردازش های پس زمینه ای
      سرویس های پس زمینه Service BroadCastReciver AlramManager  

      ذخیره سازی اطلاعات با دیتابیس SQLite ORM و realm
      آشنایی با ORM های استفاده از Sugar ORM آموزش و پیاده سازی دیتابیس Realm در اندروید  


      Notification در اندروید
      پیاده سازی Notification در اندروید Notification های سفارشی طراحی واسط کاربری برای Notification آشنایی با Pending Intent پیاده سازی Push Notification  با استفاد از OneSignal  
       
      Firebase
      Firebase امکانات Firebase در اندروید پیاده سازی Register و Login در Firebase پیاده سازی Push Notification Crash Reporting  
       
      وب سرویس ها در اندروید
      آشنایی با وب سرویس JSON آشنایی با JSON Array آشنایی با JSON Object آشنایی با Retrofit دریافت اطلاعات وب سرویس Retrofit ارسال اطلاعات به سرور Retrofit Image Loader Gson,Jackson json parsing  
       
      پیاده سازی MVP Pattern در اندروید
      مفهوم Pattern در برنامه نویسی انواع Pattern های رایج در برنامه نویسی اندروید آشنایی با MVP Pattern در اندروید پیاده سازی MVP در اندروید  
       
      پیاده سازی Dependency Injection در اندروید
      مفهوم Dependency Injection در برنامه نویسی انواع کتابخانه های رایج  در DI برنامه نویسی اندروید آشنایی با کتابخانه Dagger 2  
       
       
      آشنایی با تغییرات اندرویدM و N
      Shade Animation CordinatorLayout Permission in Android 6  
       
      آشنایی با Kotlin
      معرفی kotlin پیاده سازی kotlin در اندروید استودیو  
       
      ایجاد App Widgets برای اپلیکیشن
      معرفی widget در اندروید هدف از پیاده سازی App widgets در اندروید ارتباط بین App Widgets و اپلیکیشن پیاده سازی App Widgets در اپلیکیشن  
       
      ایجاد کتابخانه در اندروید
      معرفی مفهوم کتابخانه در اندروید انواع کتابخانه های قابل پشتیبانی در اندروید ایجاد کتابخانه در اندروید Import کردن کتابخانه به پروژه و استفاده از آن  
      Flavor در اندروید استودیو
      آشنایی با flavor در اندروید استودیو ایجاد چند خروجی از اپلکیشن ایجاد خروجی های free,purchase,paid برای اپلیکیشن  
      Testing اپلیکیشن
      آشنایی با مفهوم Test در مهندسی نرم افزار آشنایی با کتابخانه Junit آشنایی با کتابخانه Espresso در Test Driven Android اندروید  
      خروجی اندروید
      ایجاد کلید Sign در اندروید مهندسی معکوس اپلیکیشن های اندروید آشنایی با Proguard در اندروید انتشار اپلیکیشن در گوگل پلی  
       
       
       این دوره توصیه میشود به :
      اشخاصی كه علاقه مند به آشنایی و كار حرفه ای با اندروید هستند. اشخاصی كه قصد فراگیری كامل طراحی اپلیکیشن های موبایل از ابتدا توسط اندروید دارند. اشخاصی كه قصد راه اندازی اپلیکیشن موبایل شخصی خود توسط اندروید دارند. اشخاصی كه میخواهند با فراگیری حرفه ای شروع به كسب درآمد نموده و به عنوان توسعه دهنده اندروید فعالیت كنند. شركتها و سازمانهایی كه قصد راه اندازی اپلیکیشن موبایل اندروید اختصاصی خود را دارند. دانشجویان رشته های كامپیوتر كه قصد فراگیری كامل توسعه اپلیکیشن های اندروید دارند. اشخاصی كه قصد پیاده سازی ایده های اپلیکیشن های موبایل را در قالب اندروید دارند. اشخاصی كه قصد دارند وب سایت خود را به اپلیکیشن های موبایل اندروید تبدیل كنند. و...  
       
      ثبت نام دوره اندروید
    • توسط giti.69
      سلام
      من تا حالا با اندروید کار نکردم و هیچی ازش نمیدونم.
      با جاوا هم کار نکردم
      یکی به من ی بسته آموزشی به مبلغ 80 هزار تومان معرفی کرده.
      که خودش میگه نیازی به زبان جاوا نداره.
      و با اکلیپس کار میکنه.
      میخواستم بدونم برای کار به اکلیپس نیاز به دانش برنامه نویسی جاوا دارم/؟
      به نظرتون میصرفه این بسته رو بخرم؟
       
      http://shopdroid.ir/android-programming-training-videos/android-package/product/310-android-training-a-to-z-package/category_pathway-59.html
    • توسط Farzad Sarseifi
      محیط جدید برنامه نویسی اندروید Android Studio

      اندروید استودیو  یک محیط برنامه نویسی برای پلتفرم اندروید است. این برنامه در 16 می 2014 توسط مدیران گوگل در کنفرانس گوگل آی/او معرفی شد. از ماه جوئن 2014 نسخه پیش نمایش این برنامه (به صورت رایگان) برای امتحان در دسترس توسعه دهنده‌ها قرار گرفت. این محیط بر اساس نرم‌افزار محبوب جت برینز طراحی شده است، این استودیو بطور اختصاصی برای اندروید طراحی شده. هم اکنون این استودیو برای دانلود بر روی ویندوز، مک و لینوکس در دسترس می‌باشد.
      از جمله میتوان به موارد زیر اشاره کرد :
      1-کدنویسی سریع و قدرتمند(Powerful code editing) :
      Android Studio شامل ادیتور ویرایش قدرمتندی میباشد،که بر پایه intellij میباشد،همچنین شامل ویژگی های زیر میباشد
      smart editing, advanced code refactoring, , deep static code analysis
      2- UI قدرتمند و سریع :
      یکی از امکاناتی خیلی جذابی(خفنی!) که برای ساخت UI در اختیار برنامه نویسان قرار گرفته امکان مشاهده 6 نما در قسمتی از صفحه میباشد،این مسئله شاید به یکی از بزرگترین مشکلات برنامه نویسان اندروید تبدیل شده بود،با ورود این محیط برنامه نویسی قدرمتند این مشکل تا حدود زیادی حل خواهد شد.

      3-محیط متن باز(Open source development) :
      از جمله ویژگی های دیگر این محیط برنامه نویسی متن باز بودن(رایگان) میباشد که از جمله مزیت این محیط قدرتمند میباشد.

      4- دسترسی به سرویس های گوگل(Android Tools).
      برای دانلود برنامه Android Studio به آدرس زیر رفته و آن را دانلود نمایید.
       
      چندین ویژگی مهم در این نرم‌افزار برای توسعه دهندگان اندروید :
      چیدمان زنده: ویرایشگر WYSIWYG – کدنویسی زنده – رندر هم زمان برنامه کنسول توسعه دهنده: راهنمای بهینه سازی – کمک برای ترجمه – ردیابی ارجاع – طریقه استفاده پشتیبانی از ساخت مبتنی بر Gradle رفع و عیب یابی مخصوص اندروید ابزار لینت برای گرفتن عملکرد، قابلیت استفاده، نسخه سازگار با مشکلات دیگر قابلیت Proguard و امضای برنامه مبتنی بر الگوی wizard برای ایجاد طرح اندروید و اجزای مشترک ویرایشگر طرح بندی غنی که به شما اجازه کشیدن و رها کردن UI کامنت‌ها را می‌دهند. گزینه‌ای برای تنظیمات پیش نمایش طرح بندی در صفحه نمایش چندگانه  
       
    • توسط Farzad Sarseifi
      در آموزش قبلی آموختیم که زبان کاتلین دارای چه قدرت هایی میباشد .بر همین اساس در این جلسه آموزشی یاد خواهیم گرفت که به چه صورتی بتوانیم از کاتلین در اندروید استودیو استفاده کنیم

      ابتدا محیط اندروید استودیو را باز کنید
      Android studio 3.0

       
      تیک گزینه کاتلین را انتخاب کنید و سپس گزینه finish را انتخاب کنید تا پروژه ساخته شود
      برای ورژن های اندروید استودیو 2 .x  به بالاتر شما حتما باید پلاگین کاتلین را نصب کنید از طریق مسیر file->Settings->plugin و گزینه kotlin را جستجو نمایید

      Project level app.gradle
      1- تعریف کردن ورژن kotlin در زمانی که از ورژن های  1.1.3-2  استفاده میکنید
      2- Dependency کاتلین را اضافه میکنیم
       

      app level app.gradle
       
      1- پلاگن کاتلین اضافه میشود به ماژول ها
      2- kotlin یک کتابخاه استاندارد میباشد.برای اینکه بیشتر در مورد این کتابخانه بدانیم از ادرس kotlinlang.org  استفاده کنید
       
      پسوند فایل های کاتلین kt میباشد. در تصویر زیر تفاوت کاتلین و جاوا مشخص میشود
       

      1- تمامی ارث بری ها با color (دو نقطه) انجام میشود(extends در جاوا)
      2- وقتی یک متد overrideمیشود حتما میبایستی از کلمه کلیدی override استفاده کنیم
      3- حتما باید بعد از تعریف کرد یک آبجکت از ?  (علامت سوال) استفاده کنید.
       
       
      حالا خروجی به این صورت میباشد

       

  • دوره آموزشی اندروید ایران کانادا آموزش ویدئویی اندروید آموزش برنامه نویسی اندروید اندروید کاپ دوره آنلاین اندروید کتاب های آموزشی اندروید بسته آموزشی اندروید دوره برنامه نویسی اندروید آموزش Kotlin
  • فایل