آموزش Activity در اندروید به زبان ساده

رتبه: 5 ار 2 رای SSSSS
Activity در اندروید
نویسنده: تیم تولید محتوا زمان مطالعه 5 دقیقه
Banner Image

Activity یک صفحه نمایش منفرد با رابط کاربری مانند window یا frame جاواست. Activity اندروید زیر کلاسی از کلاس ContextThemeWrapper است.

اگر با زبان برنامه نویسی C ، C++ یا Java کار کرده اید ، میدانید که برنامه از تابع main() شروع می شود. با استفاده از متد بازگشتی onCreate()، سیستم اندرویدی برنامه خود را با یک Activity شروع می کند. دنباله ای از متد های callback وجود دارد که یک Activity را شروع می کنند و دنباله ای از متد های callback یک Activity را تجزیه می کنند ، همانطور که در نمودار زیر چرخه Activity نشان داده شده است:

نمایش  چرخه Activity

کلاس Activity ، فراخوانی های زیر را مانند رویداد تعریف می کند. نیازی به اجرای همه متد های callback نیست. با این حال مهم است که هرکدام را درک کرده و مواردی را اجرا کنید که اطمینان حاصل کنید برنامه شما همانطور که کاربران انتظار دارند، رفتار کند.

شماره توضیح
۱ ()onCreate

اولین متد callback است و هنگامی که Activity برای اولین بار ایجاد می شود ، فراخوانی می شود.

۲ ()onStart

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

۳ ()onResume

هنگامی که کاربر تعامل با برنامه را شروع کند ، این متد فراخوانی می شود.

۴ ()onPause

Activity متوقف شده ورودی کاربر را دریافت نمی کند و نمی تواند هیچ کدی را اجرا کند و وقتی Activity فعلی متوقف شود و Activity قبلی از سر گرفته می شود ، فراخوانی می شود.

۵ ()onStop

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

۶ ()onDestroy

این متد قبل از از بین رفتن Activity توسط سیستم، فراخوانی می شود.

۷ ()onRestart

هنگامی که Activity پس از متوقف شدن شروع شود ، این متد فراخوانی می شود.

مثال

این مثال شما را با قدم های ساده برای نشان دادن چرخه عمر Activity برنامه های کاربردی اندروید آشنا می کند. برای تغییر برنامه اندروید که در بخش مثال Hello World ایجاد کردیم ، مراحل زیر را دنبال کنید –

مرحله توضیحات
۱ می توانید از Android studio برای ایجاد برنامه اندروید استفاده کنید و آن را Hello.orld تحت پکیج com.example.helloworld همانطور که در بخش مثال Hello World توضیح داده شده است ، نامگذاری کنید.
۲ فایل اصلی MainActivity.java را مطابق شکل زیر اصلاح کنید. بقیه فایل ها را بدون تغییر نگه دارید.
۳ برنامه را اجرا کنید تا شبیه ساز اندروید راه اندازی شود و نتیجه تغییرات انجام شده در برنامه را تأیید کند.

در زیر محتوای تغییر یافته فایل src / com.example.helloworld / MainActivity.java را می بینید. این فایل شامل هر یک از متد های اساسی چرخه Activity است. از متد Log.d() برای تولید پیام های log استفاده شده است –

package com.example.helloworld;

import android.os.Bundle;

import android.app.Activity;

import android.util.Log;

public class MainActivity extends Activity {

String msg = “Android : “;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Log.d(msg, “The onCreate() event”);

}

/** Called when the activity is about to become visible. */

@Override

protected void onStart() {

super.onStart();

Log.d(msg, “The onStart() event”);

}

/** Called when the activity has become visible. */

@Override

protected void onResume() {

super.onResume();

Log.d(msg, “The onResume() event”);

}

/** Called when another activity is taking focus. */

@Override

protected void onPause() {

super.onPause();

Log.d(msg, “The onPause() event”);

}

/** Called when the activity is no longer visible. */

چرب زبان

برنامه نویسی اندروید رو قورت بده! بدون کلاس، سرعت 2 برابر، ماندگاری 3 برابر، پولسازی با ساخت اپلیکیشن و بازی،  سه پک زیر جوابت هست:

پک کامل طراحی رابط کاربری

پک 1 اندروید استودیو (مبتدی تا متوسط)

پک 2 اندروید استودیو (پیشرفته)

@Override

protected void onStop() {

super.onStop();

Log.d(msg, “The onStop() event”);

}

/** Called just before the activity is destroyed. */

@Override

public void onDestroy() {

super.onDestroy();

Log.d(msg, “The onDestroy() event”);

}

}

یک کلاس Activity با استفاده از فایل XML موجود در فایل res/layout ، تمام مؤلفه UI را بارگذاری می کند. عبارت زیر اجزای UI را از فایل res / layout / activ_main.xml بارگذاری می کند:

setContentView(R.layout.activity_main);

یک برنامه می تواند بدون هیچ محدودیتی یک یا چند Activity داشته باشد. هر Activity که برای برنامه تعریف کرده اید باید در فایل AndroidManifest.xml اعلام شود و همچنین activity اصلی برنامه باید در manifest با <intent-filter> اعلام شود که شامل عملکرد MAIN و دسته LAUNCHER به شرح زیر است:

<?xml version=”1.0″ encoding=”utf-8″?>

<manifest xmlns:android=”http://schemas.android.com/apk/res/android”

package=”com.example.tutorialspoint7.myapplication”>

<application

android:allowBackup=”true”

android:icon=”@mipmap/ic_launcher”

android:label=”@string/app_name”

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>

اگر یکی از عملکرد MAIN یا دسته LAUNCHER برای یکی از activity های شما اعلام نشده باشد ، نماد برنامه شما در لیست برنامه های صفحه اصلی ظاهر نمی شود.

برنامه Hello World ویرایش شده را اجرا کنید. فرض می کنیم هنگام انجام تنظیمات محیطی ، AVD را ایجاد کرده اید. برای اجرای برنامه از studio Android ، یکی از فایل های Activity پروژه خود را باز کرده و از نوار ابزار ، روی گزینه Run Eclipse Run Icon کلیک کنید. studio Android برنامه را در AVD شما نصب کرده و آن را راه اندازی می کند و اگر همه چیز درست باشد ، پنجره Emulator را نشان می دهد و باید پیام های وارد شده زیر را در پنجره LogCat در studio Android مشاهده کنید –

۰۸-۲۳ ۱۰:۳۲:۰۷٫۶۸۲ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onCreate() event

۰۸-۲۳ ۱۰:۳۲:۰۷٫۶۸۳ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onStart() event

۰۸-۲۳ ۱۰:۳۲:۰۷٫۶۸۵ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onResume() event

C:UsersMrDesktopandroid_logcat_window.jpg

اگر روی دکمه قفل صفحه روی شبیه ساز اندروید کلیک کنید، پیام های زیر را در پنجره LogCat در Android studio مشاهده می کنید:

۰۸-۲۳ ۱۰:۳۲:۵۳٫۲۳۰ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onPause() event

۰۸-۲۳ ۱۰:۳۲:۵۳٫۲۹۴ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onStop() event

صفحه نمایش را در شبیه ساز اندروید باز کنید و پیام های مربوط به رویدادهای زیر را در پنجره LogCat در studio Android مشاهده کنید:

۰۸-۲۳ ۱۰:۳۴:۴۱٫۳۹۰ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onStart() event

۰۸-۲۳ ۱۰:۳۴:۴۱٫۳۹۲ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onResume() event

در مرحله بعد ، دوباره روی دکمه بازگشت اندروید در شبیه ساز اندروید کلیک کنید و پیام های مربوط به رویدادهای زیر را در پنجره LogCat در Android studio مشاهده کنید و این چرخه زندگی Activity را برای یک برنامه اندروید کامل می کند.

۰۸-۲۳ ۱۰:۳۷:۲۴٫۸۰۶ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onPause() event

۰۸-۲۳ ۱۰:۳۷:۲۵٫۶۶۸ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onStop() event

۰۸-۲۳ ۱۰:۳۷:۲۵٫۶۶۹ ۴۴۸۰-۴۴۸۰/com.example.helloworld D/Android :: The onDestroy() event

profile name
تیم تولید محتوا

بخندید کتاب بخونید و خوب باشید تا جامعه مون به آرامش برسه. لطفا ! هر سوالی دارید در بخش نظرات مطرح کنید. ما یا سایر هموطنان عزیز پاسخ خواهیم داد. برای کمک به سایت ما و گسترش آموزش در بین هموطنان، در سایتها، وبلاگ ها و شبکه های اجتماعی لینک سایت ما را درج کنید.

مطالب پیشنهادی برای شما

محصولات مرتبط

مشاهده همه

دیدگاهتان را بنویسید

1 2 3 4 5

2 نظر درباره «آموزش Activity در اندروید به زبان ساده»

  • فرزام فهیمی
    فرزام فهیمی آیا این دیدگاه مفید بود ؟

    سلام و درود ،
    اجر شما نزد خداوند جزیل
    (از پینهای دستم باید بدونی ؛ یا از نگاه مستم باید بخونی ؛

    پاسخ
  • فرزام فهیمی
    فرزام فهیمی آیا این دیدگاه مفید بود ؟

    جناب میلاد حیدری مهندس عزیز خسته نباشید !
    یک سوال خدمت شما دارم ،
    به نظر شما ادولف هیتلر عمدا ! یا سهوا ! از به کار گرفتن دانش هسته ای امتناع کرد ?

    پاسخ
مشاهده همه نظرات
سبد خرید
سبد خرید شما خالی است
× جهت نصب روی دکمه زیر در گوشی کلیک نمائید
آی او اس
سپس در مرحله بعد برروی دکمه "Add To Home Screen" کلیک نمائید