عنوان : دکمه‌ها(متخصصین ایران)درس سوم قسمت3
متخصصین ایران طراحی سایت

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

۱. اول یه پروژه‌ی اندروید بسازید. (تصویر متحرک ساختن پروژه) بعد می‌تونیم در فایل activity_main.xml (در res->layout) از قسمت Palette انواع مختلف دکمه‌ها رو امتحان کنیم، الان اونی که روش نوشته off رو بکشید و روی صفحه بندازید.

 

 

، این نوع دکمه برای خاموش روشن کردن تنظیمات دلخواه به کار می ره و این طوریه toggle button

شما می‌تونید به راحتی ظاهرش رو تغییر بدید و مناسب برنامه‌تون بکنید و می‌بینید که چقدر کار رو ساده کرده.

از انواع دیگه‌ی دکمه، دکمه‌ی رادیویی (radio) و دکمه‌ی علامت‌صحیح (checkbox) هستند که می‌تونید از تو palette وارد صفحه‌تون بکنید.

۲.وقتشه یاد بگیریم چطور به دکمه‌ها فرمان بدیم و برنامه‌ریزی کنیم. تو آموزش‌های قبلی یاد گرفته بودید که برای کنترل یک دکمه می‌تونید تابع مربوط به کلیک شدن‌شو تو خودش درست کنید، اما اون کار برای وقتایی مناسبه که یکی دوتا دکمه کلاً داشته باشید، اگر بخواید تعداد دکمه‌های بیشتری استفاده کنید بهتره از روش‌ دیگه‌ای استفاده کنید که الان توضیح می‌دم.

فایل MainActivity.java (در پوشه src) رو باز کنید، برای بهینه شدن استفاده از دکمه‌ها می‌تونیم به کلاس فعالیت (activity) بگیم که واسط گوش‌کننده‌به‌کلیک (onClickListener) رو پیاده‌سازی بکنه. یعنی کد شروع کلاس این طوری بشه:

public class MainActivity extends Activity implements OnClickListener {

با این کار ما می‌تونیم مستقیما تو کلاسمون به رخدادها واکنش نشون بدیم.

۳.وقتی قسمت implements رو به کلاسمون اضافه می‌کنیم، زیر OnClickListener خط قرمز می‌کشه، روش که ctrl+1 رو بزنیم یه گزینه میاره که (import 'OnClickListener' (android.view.view که وقتی این گزینه رو انتخاب می‌کنیم اونوقت زیر MainActivity خط قرمز می‌کشه، با فشردن ctrl+1 روی اون هم گزینه add unimplemented methods رو بزنید تا تابع مربوط به این پیاده‌سازی رو بسازه.

تابع جدیدی که ساخته می‌شه اسمش onClick هست و تمام دکمه‌هایی که در این فعالیت قرار دارند هر وقت که فشرده بشن، میان و این تابع رو اجرا می‌کنن، این طوری ما فقط یک تابع مدیریت رخداد کلیک‌روی‌دکمه می‌سازیم. توی این تابع باید بفهمیم کدوم دکمه کلیک شده که کار مربوط به همون دکمه انجام بشه.

۴.پس کاری که ما الان قراره انجام بدیم اینه که برای هر کدوم از دکمه‌ها باید گوش‌کننده‌به‌کلیک (onClickListener) رو سوار کنیم. و داخل تابعش به جای اینکه مثل قبل یه گوش‌کننده‌به‌کلیک رو توش نمونه‌گیری کنیم، می نویسیم this، یعنی همین فعالیتی که توش قرار داریم. تو این فعالیت هم فقط یه تابع onClick وجود داره که وقتی دکمه dokme رو بزنیم اونو اجرا می‌کنه.

Button dokme = (Button) findViewById (R.id.toggleButton1);
dokme.setOnClickListener(this);

۵.همین کارو برای بقیه‌ی دکمه‌ها باید انجام بدیم، خوبی این کار اینه که هی کلاس اضافه برای هر دکمه جداگانه تعریف نمی‌شه و کارآمدی و سرعت برنامه به میزان قابل توجهی بالا می‌ره.

توی تابع onClick ما باید اول شناسه (id) اون شی‌ای که این تابع رو فراخوانی کرده بدست بیاریم تا بتونیم با توجه به اون شناسه، کار مربوط به همون دکمه رو انجام بدیم. تابع گرفتن اون شناسه اینه : ()arg0.getId 

می‌تونیم با گذاشتن عبارات شرطی مقدار ()arg0.getId رو بررسی کنیم. خوب مثلا بیاید برای اون دکمه‌ی خاموش روشنی که گذاشتیم یه عبارت شرطی بذاریم که اگه کلیک شد، تو LogCat بنویسه !dokmeye khamoosh roshan click shod

@Override
	public void onClick(View arg0) {
		if (arg0.getId() == R.id.toggleButton1) {
			Log.d("AC","Dokmeye khamoosh roshan click shod!");
		}
	}

بعد از این کار وقتی شبیه‌ساز رو اجرا می‌کنیم و روی دکمه خاموش روشن کلیک می‌کنیم، پیغامی که تنظیم کرده بودیم توی LogCat نمایش داده می‌شه.

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

۶.یه نوع دکمه‌ی دیگه هم داریم به اسم دکمه‌ی‌عکس‌دار (ImageButton) که در palette در زیرشاخه  Images & Media قرار داره که کاملا مشخصه که برای درست کردن دکمه‌ی عکس‌دار بکار می‌ره. این نوع دکمه رو وقتی می‌کشید روی صفحه و رها می‌کنید، ازتون می‌خواد که منبع عکسش رو انتخاب کنید که یا می‌تونید از عکس‌های سیستمی اندروید استفاده کنید یا عکس‌های دلخواه خودتون.


 




نظر شما درباره این مطلب:




مطالب مشابه

14

مطالبی که باید از قبل بلد باشید (متخصصین ایران)


متخصصین ایران طراحی سایت

مطالبی که باید از قبل بلد باشید....


مطالبی که باید از قبل بلد باشید (متخصصین ایران)                  (اطلاعات بیشتر)

15

مراحل نصب "بسته توسعه نرم افزار" SDK برای کاربران مک (متخصصین ایران)


متخصصین ایران طراحی سایت

۱. دانلود "بسته توسعه نرم افزار" یا SDK ....

 


مراحل نصب "بسته توسعه نرم افزار" SDK برای کاربران مک  (متخصصین ایران)                  (اطلاعات بیشتر)

17

ایجاد دستگاه مجازی (Virtual Device) یا شبیه ساز (emulator) برای اندروید (متخصصین ایران)


متخصصین ایران طراحی سایت

1.وقتی در طول توسعه نرم افزاتون، احتیاج به آزمایش (تست) برنامتون دارید، حتما نیاز به....


 ایجاد دستگاه مجازی (Virtual Device) یا شبیه ساز (emulator) برای اندروید (متخصصین ایران)                  (اطلاعات بیشتر)

18

مراحل نصب ایکلیپس (Eclipse) روی مک (متخصصین ایران)


متخصصین ایران طراحی سایت

۰.قبل از نصب ایکلیپس باید اس دی کی رو ....


 مراحل نصب ایکلیپس (Eclipse) روی مک  (متخصصین ایران)                  (اطلاعات بیشتر)

19

مراحل نصب ایکلیپس (Eclipse) روی ویندوز (متخصصین ایران)


متخصصین ایران طراحی سایت

۰.قبل از نصب ایکلیپس باید اس دی کی رو نصب کرده باشید....

 


مراحل نصب ایکلیپس (Eclipse) روی ویندوز  (متخصصین ایران)                  (اطلاعات بیشتر)

16

مراحل نصب بسته بندی Android SDK platform (متخصصین ایران)


متخصصین ایران طراحی سایت

1.برنامه SDK Manager رو اجرا کنید...


 مراحل نصب بسته بندی Android SDK platform  (متخصصین ایران)                  (اطلاعات بیشتر)