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

آموزش ساختن برنامه برای اندروید به زبان فارسی
دوشنبه, ۱۱ ارديبهشت ۱۳۹۱، ۰۳:۰۴ ب.ظ

استفاده از مفاهیم آشکار (explicit intents)

تماشای برخط [لینک مستقیم] فیلم «آموزش نحوه استفاده از مفاهیم آشکار»

زیر نویس انگلیسی [English Subtitle]

نسخه pdf این آموزش[1.75 مگابایت]

 

تا اینجا یاد گرفتیم که چطور با فعالیت ها (activities) کار کنیم، اگه یادتون باشه برای شروع فعالیت Dovomi از intent استفاده کردیم، کار مفهوم (intent) اینه که یه عنصری از برنامه تون رو فعال کنه.

دو نوع مفهوم (intent) وجود داره، مفاهیم آشکار و مفاهیم ضمنی یا مجازی.

با مفاهیم آشکار، یک عنصر مشخصی از برنامه رو برای فعال شدن تعیین می‌کنیم. مثلا می‌خوایم یه فعالیت(activity) دیگه رو تو برناممون اجرا کنیم، از یه مفهوم آشکار استفاده می‌کنیم که آشکارا به سیستم بگه می‌خوام اون فعالیت رو فعال(اجرا) کنم.

مفاهیم ضمنی (که تو پست بعدی بهش می‌پردازیم) در واقع یک پیام کلی برای سیستم می‌فرستن : که آیا برنامه‌ای در سیستم عامل این گوشی وجود داره که بتونه این مفهوم رو اجرا کنه؟ اگه وجود داشته باشه لیست این برنامه‌ها به کاربر پیشنهاد می‌شه و کاربر یکی رو انتخاب می‌کنه و از این طریق اون چیزی که با مفهوم فرستاده شده (ورودی‌های intent) اجرا می‌شه.

 

خوب الان می‌خوایم رو مفاهیم آشکار تمرکز کنیم. برای شروع یه پروژه بسازید با دوتا فعالیت (activitie) که تو فعالیت اصلی (main) یه متنی که قابل نوشتن باشه یعنی کاربر می‌تونیه توش متن وارد کنه (از توی Text Fields اولی رو انتخاب کنید) و یه دکمه (برای اینکه به فعالیت دوم بره)، فعالیت دوم هم یه فیلد متنی ساده داشته باشه.(حواستون باشه که فعالیت دوم رو هم تو فایل manifest تعریف کنید).

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

اول به فایل main.java می ریم و یه مرجع(اشاره‌گر) از دکمه و فیلد متنی می‌گیریم. با نوشتن این کد 

 

EditText matn = findViewById(R.id.editText1);

 

یه مرجع از فیلد متنی قابل نوشتن‌مون می‌گیریم. خوب بازهم با ctrl+1 خطاهای برنامه رو درست می‌کنیم. (اینجا کافیه فقط cast انجام بدید.) همین کارو برای دکمه انجام می‌دیم.

 

Button d = findViewById(R.id.button1);

 

و برای دکمه تابع setOnclickListener رو صدا می‌زنیم تا کارایی که قراره با فشردن دکمه انجام بشه رو تعیین کنیم. با نوشتن این کد :

 

d.setOnClickListener(new OnClickListener() {
	@Override
	public void onClick(View v) {

	}
});

 

همون طور که قبلا گفته شد بعد از نوشتن new (خط اول) اگه بنویسید onclick و بعد ctrl+space رو بزنید خودش بهتون ادامه‌اش رو پیشنهاد می‌ده و روی OnClickListener که کلیک کنید، بقیه‌اش رو خودش می‌نویسه.

۳.الان قصد داریم که یه intent بسازیم، همون طور که قبلا اشاره شد intent یک راه برای فعال کردن جزئی از برنامه است. پس برای اینکه یه نمونه از کلاس Intent بسازیم، می‌نویسیم Intent و یه اسم براش می‌ذاریم و newاش می‌کنیم. (با ctrl+space، اون گزینه رو انتخاب می‌کنیم که مناسبه پاس کردن یه فعالیته -تو تصویر مشخصه-)

برای ورودی‌های سازنده‌ی intent، اول باید مولفه‌ای که این درخواست رو کرده بنویسیم یعنی Main.this (که یه مرجع به این فعالیت اصلی هست). برای ورودی دوم، باید کلاس فعالیتی رو بدیم که می‌خوایم اجرا بشه یعنی Dovomi.class. پس کدمون اینجوری می‌شه :

 

Intent mafhoom = new Intent(Main.this, Dovomi.class);

 

در واقع ما می‌تونستیم همین قسمت (new Intent(Main.this, Dovomi.class رو به عنوان ورودی startActvity به کار ببریم (مثل آموزش قبلی) ولی این دفعه می‌خوایم یه چیزایی رو ضمیمه‌ی mafhoom کنیم. چیزی که می‌خوایم اضافه کنیم همون متنیه که کاربر تو matn وارد می‌کنه. برای این کار از تابع putExtra از شی mafhoom استفاده می‌کنیم.

۴.ورودی اول این تابع یه رشته (String) است که به عنوان اسم اون کلیدی که می‌خوایم اضافه کنیم به کار برده می‌شه و ورودی دوم از هر نوعی می‌تونه باشه و ما چون اون متن رو می‌خوایم بفرستیم، برای ورودی دوم هم نوع رشته (String) رو انتخاب می‌کنیم. اسم کلید رو می‌ذارم "matneVaredShode" و برای بازیابی اطلاعاتی که داخل matn (متنی که قراره کاربر وارد کنه) وجود داره، باید از تابع getText استفاده کنیم و اگه دقت کنید می‌بینید که خروجی این تابع از نوع Editable هست نه از نوع رشته‌ی خام پس با اضافه کردن ()toString. اونو به رشته‌ی خام تبدیل می‌کنیم.

 

mafhoom.putExtra("matneVaredShode", matn.getText().toString());

 

از matn ایراد می‌گیره و با زدن ctrl+1 بهمون پیشنهاد می‌کنه که اونو به final تغییر بدیم (چون قراره ازش تو یه کنترل کننده وقایع ناشناس استفاده کنیم).

ما اون اطلاعاتی که می‌خواستیم به فعالیت Dovomi بفرستیم رو به mafhoom اضافه کردیم، حالا وقتی می‌خوایم فعالیت جدید  رو شروع کنیم، این اطلاعات براش فرستاده می‌شه. تابع startActivity رو استفاده می‌کنیم و mafhoom رو به  عنوان ورودی براش می‌فرستیم.

startActivity(mafhoom);

 

۵.خوب تا اینحا دیگه کار ما با Main.java تموم می‌شه، حالا باید به Dovomi.java بریم و اطلاعاتی که همراه mafhoom فرستاده شده بازیابی کنیم و تو textView نشون بدیم. برای شروع اول یه مرجع از فیلد متنی می‌گیریم با این کد :

 

TextView matni = (TextView) findViewById(R.id.textView1);

برای اینکه این فیلد متنی، متن دلخواه ما رو نشون بده باید از تابع setText استفاده کنیم(هرچی به عنوان ورودی بفرستیم رو نشون می‌ده)، برای گرفتن همون متنی رو که توسط mafhoom فرستاده شده، اول باید با getIntent مفهومی که این فعالیت رو اجرا کرده رو به دست بیاریم، و بعد از تابع getExtra برای گرفتن اطلاعات داخل intent استفاده می‌کنیم، که در واقع تمام اطلاعاتی که بهش داده بودیم رو برمیگردونه. اما ما فقط اون قسمتی از اطلاعاتش رو می‌خوایم که با کلید "matneVaredShode" مشخص شده (اگرچه در این تمرین قفط همین یدونه رو همراه mafhoom فرستادیم). و چون اون اطلاعاتی که می‌خوایم از نوع رشته است، از تابع getString استفاده می‌کنیم و کلید رو بهش می‌دیم.

 

matni.setText(getIntent().getExtras().getString("matneVaredShode"));

 

۶.حالا برنامه رو اجرا می‌کنیم و می‌بینیم همون متنی که تو فعالیت اصلی وارد کردیم تو فعالیت دوم نشون داده می‌شه :)

 

ادامه ی آموزش در این پست



نوشته شده توسط وجدانی
ساخت وبلاگ در بلاگ بیان، رسانه متخصصان و اهل قلم

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

آموزش ساختن برنامه برای اندروید به زبان فارسی
آموزش برنامه نویسی اندروید
بسم الله الرحمن الرحیم
در این سایت آموزش جامع و کاملی درباره اینکه چطور برای اندروید برنامه بنویسیم قرار داده خواهد شد
امیدوارم این آموزش ها بتونه راه گشای تمام ایرانیانی باشه که می خوان تو این زمینه به موفقیت برسند و باعث افتخار کشورشون باشن
اساس آموزش این سایت، فیلم آموزشی از سایت Lynda.com هست
زیر نویس فارسی و انگلیسی این فیلم ها با پسوند srt برای دانلود قرار داده خواهد شد (گردآوری شده در این صفحه )
همون طور که می دونید این آموزش در سایت Lynda.com رایگان نیست.
برای همین اینجا و اینجا براتون آپلودش کردم
(حکم دانلود رایگان این فیلم ها که پولی هستند)

اگه هر کدوم از لینک هایی که گذاشتم کار نمی کرد حتما منو از طریق قسمت نظرات یا ایمیل مطلع کنید.
Email : AndroidCode@ymail.com

امام علی (ع) : هر عملی که با بسم الله الرحمن الرحیم شروع شود با برکت است.

آخرین نظرات

پیوندهای روزانه

استفاده از مفاهیم آشکار (explicit intents)

دوشنبه, ۱۱ ارديبهشت ۱۳۹۱، ۰۳:۰۴ ب.ظ

تماشای برخط [لینک مستقیم] فیلم «آموزش نحوه استفاده از مفاهیم آشکار»

زیر نویس انگلیسی [English Subtitle]

نسخه pdf این آموزش[1.75 مگابایت]

 

تا اینجا یاد گرفتیم که چطور با فعالیت ها (activities) کار کنیم، اگه یادتون باشه برای شروع فعالیت Dovomi از intent استفاده کردیم، کار مفهوم (intent) اینه که یه عنصری از برنامه تون رو فعال کنه.

دو نوع مفهوم (intent) وجود داره، مفاهیم آشکار و مفاهیم ضمنی یا مجازی.

با مفاهیم آشکار، یک عنصر مشخصی از برنامه رو برای فعال شدن تعیین می‌کنیم. مثلا می‌خوایم یه فعالیت(activity) دیگه رو تو برناممون اجرا کنیم، از یه مفهوم آشکار استفاده می‌کنیم که آشکارا به سیستم بگه می‌خوام اون فعالیت رو فعال(اجرا) کنم.

مفاهیم ضمنی (که تو پست بعدی بهش می‌پردازیم) در واقع یک پیام کلی برای سیستم می‌فرستن : که آیا برنامه‌ای در سیستم عامل این گوشی وجود داره که بتونه این مفهوم رو اجرا کنه؟ اگه وجود داشته باشه لیست این برنامه‌ها به کاربر پیشنهاد می‌شه و کاربر یکی رو انتخاب می‌کنه و از این طریق اون چیزی که با مفهوم فرستاده شده (ورودی‌های intent) اجرا می‌شه.

 

خوب الان می‌خوایم رو مفاهیم آشکار تمرکز کنیم. برای شروع یه پروژه بسازید با دوتا فعالیت (activitie) که تو فعالیت اصلی (main) یه متنی که قابل نوشتن باشه یعنی کاربر می‌تونیه توش متن وارد کنه (از توی Text Fields اولی رو انتخاب کنید) و یه دکمه (برای اینکه به فعالیت دوم بره)، فعالیت دوم هم یه فیلد متنی ساده داشته باشه.(حواستون باشه که فعالیت دوم رو هم تو فایل manifest تعریف کنید).

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

اول به فایل main.java می ریم و یه مرجع(اشاره‌گر) از دکمه و فیلد متنی می‌گیریم. با نوشتن این کد 

 

EditText matn = findViewById(R.id.editText1);

 

یه مرجع از فیلد متنی قابل نوشتن‌مون می‌گیریم. خوب بازهم با ctrl+1 خطاهای برنامه رو درست می‌کنیم. (اینجا کافیه فقط cast انجام بدید.) همین کارو برای دکمه انجام می‌دیم.

 

Button d = findViewById(R.id.button1);

 

و برای دکمه تابع setOnclickListener رو صدا می‌زنیم تا کارایی که قراره با فشردن دکمه انجام بشه رو تعیین کنیم. با نوشتن این کد :

 

d.setOnClickListener(new OnClickListener() {
	@Override
	public void onClick(View v) {

	}
});

 

همون طور که قبلا گفته شد بعد از نوشتن new (خط اول) اگه بنویسید onclick و بعد ctrl+space رو بزنید خودش بهتون ادامه‌اش رو پیشنهاد می‌ده و روی OnClickListener که کلیک کنید، بقیه‌اش رو خودش می‌نویسه.

۳.الان قصد داریم که یه intent بسازیم، همون طور که قبلا اشاره شد intent یک راه برای فعال کردن جزئی از برنامه است. پس برای اینکه یه نمونه از کلاس Intent بسازیم، می‌نویسیم Intent و یه اسم براش می‌ذاریم و newاش می‌کنیم. (با ctrl+space، اون گزینه رو انتخاب می‌کنیم که مناسبه پاس کردن یه فعالیته -تو تصویر مشخصه-)

برای ورودی‌های سازنده‌ی intent، اول باید مولفه‌ای که این درخواست رو کرده بنویسیم یعنی Main.this (که یه مرجع به این فعالیت اصلی هست). برای ورودی دوم، باید کلاس فعالیتی رو بدیم که می‌خوایم اجرا بشه یعنی Dovomi.class. پس کدمون اینجوری می‌شه :

 

Intent mafhoom = new Intent(Main.this, Dovomi.class);

 

در واقع ما می‌تونستیم همین قسمت (new Intent(Main.this, Dovomi.class رو به عنوان ورودی startActvity به کار ببریم (مثل آموزش قبلی) ولی این دفعه می‌خوایم یه چیزایی رو ضمیمه‌ی mafhoom کنیم. چیزی که می‌خوایم اضافه کنیم همون متنیه که کاربر تو matn وارد می‌کنه. برای این کار از تابع putExtra از شی mafhoom استفاده می‌کنیم.

۴.ورودی اول این تابع یه رشته (String) است که به عنوان اسم اون کلیدی که می‌خوایم اضافه کنیم به کار برده می‌شه و ورودی دوم از هر نوعی می‌تونه باشه و ما چون اون متن رو می‌خوایم بفرستیم، برای ورودی دوم هم نوع رشته (String) رو انتخاب می‌کنیم. اسم کلید رو می‌ذارم "matneVaredShode" و برای بازیابی اطلاعاتی که داخل matn (متنی که قراره کاربر وارد کنه) وجود داره، باید از تابع getText استفاده کنیم و اگه دقت کنید می‌بینید که خروجی این تابع از نوع Editable هست نه از نوع رشته‌ی خام پس با اضافه کردن ()toString. اونو به رشته‌ی خام تبدیل می‌کنیم.

 

mafhoom.putExtra("matneVaredShode", matn.getText().toString());

 

از matn ایراد می‌گیره و با زدن ctrl+1 بهمون پیشنهاد می‌کنه که اونو به final تغییر بدیم (چون قراره ازش تو یه کنترل کننده وقایع ناشناس استفاده کنیم).

ما اون اطلاعاتی که می‌خواستیم به فعالیت Dovomi بفرستیم رو به mafhoom اضافه کردیم، حالا وقتی می‌خوایم فعالیت جدید  رو شروع کنیم، این اطلاعات براش فرستاده می‌شه. تابع startActivity رو استفاده می‌کنیم و mafhoom رو به  عنوان ورودی براش می‌فرستیم.

startActivity(mafhoom);

 

۵.خوب تا اینحا دیگه کار ما با Main.java تموم می‌شه، حالا باید به Dovomi.java بریم و اطلاعاتی که همراه mafhoom فرستاده شده بازیابی کنیم و تو textView نشون بدیم. برای شروع اول یه مرجع از فیلد متنی می‌گیریم با این کد :

 

TextView matni = (TextView) findViewById(R.id.textView1);

برای اینکه این فیلد متنی، متن دلخواه ما رو نشون بده باید از تابع setText استفاده کنیم(هرچی به عنوان ورودی بفرستیم رو نشون می‌ده)، برای گرفتن همون متنی رو که توسط mafhoom فرستاده شده، اول باید با getIntent مفهومی که این فعالیت رو اجرا کرده رو به دست بیاریم، و بعد از تابع getExtra برای گرفتن اطلاعات داخل intent استفاده می‌کنیم، که در واقع تمام اطلاعاتی که بهش داده بودیم رو برمیگردونه. اما ما فقط اون قسمتی از اطلاعاتش رو می‌خوایم که با کلید "matneVaredShode" مشخص شده (اگرچه در این تمرین قفط همین یدونه رو همراه mafhoom فرستادیم). و چون اون اطلاعاتی که می‌خوایم از نوع رشته است، از تابع getString استفاده می‌کنیم و کلید رو بهش می‌دیم.

 

matni.setText(getIntent().getExtras().getString("matneVaredShode"));

 

۶.حالا برنامه رو اجرا می‌کنیم و می‌بینیم همون متنی که تو فعالیت اصلی وارد کردیم تو فعالیت دوم نشون داده می‌شه :)

 

ادامه ی آموزش در این پست

نظرات  (۳۵)

واقعا ممنون که انقدر زیبا و صریح مفاهیم رو توضیح دادید .
با عرض سلام و خسته نباشید خدمت شما دوست عزیز.
واقعا در قالب یک جمله نمیشه تشکر را خلاصه کرد اما این بهترین سایته واقعا.
مرســــــــــــــــــــــــــــــــــــــــــــــــی
با سلام

و عرض خسته نباشید

در حال حاضر که این پیام را ارسال می دارم.

تنهایی سایتی که من توانستم ازش استفاده کنم

و

یک شروع خوب در اندروید بود سایت شما بوده است.

لذا خواهشمند می باشم

تا

این آموزش ها را ادامه دهید.

با تشکر
کارتون بیسته،حرف نداره....
خییییییییییییییییییییییییییییییلی ممنون. منتظر مطالب جدیدتون هستم.
داداش دست گلت درد نکنه
واقعا خوب و روان توضیح دادین
انشاالله به هر چیزی که میخوای برسی
سلام و خسته نباشید.
روان و کاربردی توضیح ندادین.
توضیحاتتون رو از وسط پروژه شروع میکنید و این باعث گیج شدن خواننده میشه.
ممنون از سایته خوبتون
سیمولیشن من فارسی نمینویسه و وقتی تو قسمت تکست تو برنامه رایت میکنم انگلیسی مینویسه ولی هنگام نمایش با حروف ژاپنی نمایش میده!!!!!!!! ممنون میشم راهنماییم کنید
پاسخ:
اگر هنگام شبیه سازی از ماشین مجازی با نسخه android 3.0 (قسمت target در شبیه ساز) به بالا استفاده کنید درست نمایش می ده.
سلام ممنون از مطالب مفیدتون

AVD من بعد از اجرای برنامه فونت فارسی رو مربع مربع نشون می داد 

با این لینک مشکلم حل شد
http://stackoverflow.com/questions/7962704/how-to-support-arabic-text-in-android/7962813#7962813

ممنون از زحماتت
لینک فیلم خرابه لطفا اصلاح کنید.
با تشکر
پاسخ:
لینکش درسته امتحان کردم، البته از این لینک هم می تونید دانلود کنید.

در برنامه من زیر btn.setOnClickListene  خط قرمز کشیده و اجرا نمی شود.

پاسخ:
این تصویر متحرک رو نگاه کنید، همه پیام های مربوط به این کدها رو تصحیح می‌کنه.
سلام. 
اول اینکه از سایت خوب و مفیدتون تشکر میکنم واقعا خیلی زحمت کشیدی خدا خیرتون بده!
من قبل اینکه این Edit text  ها رو بذارم ADV اپلیکیشنمو نشون میداد ولی بعد اینکه اینایی که تو این پست بود رو نوشتم دیگه app و نشون نمیده تو کنسول مینویسه که install کرده ولی تو لیست app ها توی device نمیاد.
ممنون میشم اگه راهنمایی کنید؟
پاسخ:
سلام، ممکنه بعضی وقتا شبیه‌ساز اشکال پیدا بکنه، یا یه شبیه‌ساز جدید بسازید یا همینو یه بار دیگه از نو اجرا کنید. بعضی وقتا که برای منم این مشکل پیش میاد یه بار ایکلیپس رو می‌بندم و باز می‌کنم درست می‌شه.
سلام ممنون از زحماتتون
اجرکم عندالله
اگه بخوایم یک عکس تو یک اکتیویتی بزاریم باید چیکار کنیم؟
لطفا راهنمایی کنین.
پاسخ:
سلام، وقتی فایل activity_main.xml (یا هر فایل صفحه‌بندی دیگه‌ای) رو باز کردید از ستون سمت چپ که اسمش palette هست به زیرشاخه images and media برید و اولین گزینه یعنی imageview رو به داخل صفحه بکشید و رها کنید.
salam mamnon az amozeshe kheili khobeton man modat ha bod ke ba zabone smali to android barname mineveshtam vali alan dg na!amozesh haton alie vali kash harche zodtar kamel taresh konid ba mesal haye pishrafte tar!
khastam begam to in amozesh toye "Main.java" ye  khat code ja oftade vas baz kardane activity dovom
bad az inke putextra mikonim bayad in khat ro ezafe konim:

            startActivity(mafhom);

Movafagh bashid.
پاسخ:
سلام خیلی ممنون ازتون، لابه لای توضیحات نوشته بودمش قبل از مرحله ۵ 
سلام.
هیچ یک از نظرات من نه نمایش داده میشه و نه جواب؟!!!!!!!!!!
از اینکه وقت می ذارید و با حوصله مطالب رو مرحله به مرحله اموزش میدید ازتون ممنونم
براتون بهترین ها رو از خدا می خوام
موفق باشید
با سلام به همه دوستان
از مدیر عزیز ممنونم بخاطر آموزش بسیار عالی که تهیه فرمودن
من با یک مشکلی مواجه شدم که دوست داشتم با بقیه به اشتراک بزارمش

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

04-01 02:43:40.534: E/AndroidRuntime(2067): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.world.hello/com.world.hello.SlaveActivity}: android.content.res.Resources$NotFoundException: String resource ID #0x7b

این مشکل بعد از کمی گوگلینگ با راه حل زیر حل شدش

       

String value = getIntent().getExtras().getString("matnevaredshode");
matni.setText(value);


بازم ممنونم از همه دوستان
پاسخ:
سلام، ممنون از اینکه تجربتون رو با ما به اشتراک گذاشتین :)
خیلی عالیه مخصوصن شیوه آموزشت. این که تو یه حالت می نویسی بعد که خطا میگیره یاد میدی چطور بر طرف کنیم خیلی آموزنده است و آدم رو با خطاها آشنا می کنه
سلام. از آموزش ها ممنون.
این برنامه ای که گذاشتید اصلا start activity نداره و به صفحه ی بعدی هم نمی ره !
هر کاری کردم نفهمیدم باید چه کار کنم لطفا راهنمایی کنید.
پاسخ:
متن آموزش رو با دقت بخونید نه فقط تکه مدهای وسطش رو!
سلام مجدد

جواب سوالم رو پیدا کردم توی کدها باید در انتهای اینکه Intent ایجاد میشه یه startActivity('اسم Intent') رو هم می ذاشتیم. فکر کنم توی کدها جا مونده....باز هم خیلی خیلی بابت آموزشها ممنونم.
سلام. اول می خوام برای مطالب عالیتون و لطفتون تشکر کنم. بعد سوالم اینه که دقیقا همین مراحل رو طی کردم و برنامه ای که نوشتم کاملا مشابه برنامه شماست....اما از activity اول بعد از ورود متن و زدن دکمه وارد دومین activity نمیشه....چند بار چک کردم کاملا کدهای مشابه ای دارم. عجیبه برام توی تمرین قبلی وقتی startActivity می کردیم می رفت به دومین اما اینجا با Intent اینکار رو کردین اما خب مرتبط نمیشن به هم و اتفاقی نمی افته. لطفا اگر چیزی به نظرتون رسید راهنمایی کنین....مرسی برای وقتتون

تبارک الله

اجرت با اقا

واقعا ممنون از شما و دوستان من خیلی از مشکلاتمو با خوندن نظر دوستان و پاسخ ادمین حل کردم
متشکرم
پاسخ:
خدا رو شکر :)
خیلی عالی بود ولی میشد بجای اینکه هر دفه تست کنیم تا ایراد رو بگه خودومون ایراد رو برطرف کنیم
 سلام 
باتشکر از شما بابت زحماتتون
من یه مشکلی دارم همه کارایی که گفتید رو کردم 
اما وقتی روی دکمه میزنم ارور میده و برنامه ری استارت میشه
آیا غیر از این کد
<activity android:name="ali" />
که در manifest نوشتم
باید کد دیگه ای هم بنویسم
خیلی ممنون
پاسخ:
سلام. نه توی manifest لازم نیست کد دیگه ای اضافه کنید، error ای که برنامه می‌ده رو از تو LogCat پیدا کنید و بفرستید تا از روی اون مشکلتون رو  حل کنم.
 سلام
من یه برنامه ساده نوشتم واسه login وregister  هنوز دیتا بیس هم ندارم و فقط صفحاتش رو درست کردم و در برنامه error نداره. اما وقتی میخوام run کنم مینویسه
the application stopped unexpectedly. please try again
تنها گزینش هم force close هستش.
به نظز شما چرا اجرا نمیشه؟ ممکنه واسه ورژن sdk باشه؟ از همینجا گرفتم
پاسخ:
همین جوری بدون دیدن کد برنامه که نمی شه نظر داد، ولی از تو LogCat قائدتا باید بتونید error اش رو پیدا کنید.
۰۴ تیر ۹۱ ، ۱۸:۲۷ حمیدرضا ریزوندی
با عرض سلام و خسته نباشید
تصاویر و فیلمهایی که برای نصب sdk گذاشتید کلا با sdkیی که از این سایت دانلود کردم  متفاوته. من یه اندرویدی تازه کار هستم تو رو خدا راهنماییم کنید
پاسخ:
با سلام
ممنون از تذکرتون، تصاویر به روز رسانی شد.
سلام
خسته نباشید.
فقط اگه اسم متغبرها رو حرفه ای تر اسمگذاری می کردید بهتر بود البته می دونم برای درک بیشتر مطلب این کار رو کردید
پاسخ:
سلام، ممنون از پیشنهادتون ولی به نظرم برای کسانی که اولین بارشونه دارن این چیزا رو یاد می گیرن مفیدتر باشه.
حالا اگه می خواست حرفه ای تر باشه چه جوری بود بهتر بود؟

با عرض سلام و خسته نباشید.

متاسفانه برای اندورید مراجع فارسی بسیار کمند (یا حداقل در دسترس من نبودند) و به نظرم به همین دلیل کار شما با ارزشه. هر چند توضیح دادن مطلبی از پایه، هم وقت گیر هست و هم نیازمند حوصله زیاد اما  امیدوارم این روند خوب رو ادامه بدید.

پاسخ:
با سلام
خیلی ممنون :)
ممنون  از زحمات شما
پاسخ:
خواهش می کنم :)
واقعا ازتون ممنونم، خیلی کمک کردین
انشاالله که همیشه و همجا موفق باشین
باتشکر فراوان
پاسخ:
خواهش می کنم :)
 من وقتی onClickListener رو اضافه می کنم وقتی متد onClick رو میاره بالاش @Override رو نمیاره
و وقتی خودم اضافه می کنم زیر onClick خط قرمز می کشه و error میده
چیکار کنم ؟
پاسخ:
اگه @Override نذارید هم باید کار کنه
  دوست عزیز سلام
من ویدئو های که شما زحمت آپلود کردنشان را کشدی دانلود کردم و مشغول استفاده از آنها هستم. بخواطر همین به خودم واجب دونستم که  بابت زحماتتون از شما تشکر کنم. ممنون بابت زمان و زحمتی که میکشید.

ارادتمند رضا
پاسخ:
سلام
خواهش می کنم، خوشحالم مفید بودن :)
 سلام 
خسته نباشید
مثل همیشه...خیلی خوب بود، ممنون
پاسخ:
سلام
ممنون، موفق و پیروز باشید‌:)
 سلام ممنون از زحماتتون من هر روز به سایت خوبتون سر می زنم مطالب بعدی رو کی میزارید؟ 
پاسخ:
سلام، خواهش می کنم، فعلا امتحانا شروع شده و کمتر وقت می کنم بیام اینجا، اگه ایمیلتون رو هم موقع نظر گذاشتن بذارید انشاالله خبرتون می کنم :)
سلام
واقعا از مطالب مفیدتون مخصوصا فیلم آموزشی که زحمت آپلودشو کشیدید بسیار سپاسگزارم،
خیـــــــــــــــــــــــــــــــــــــــــــــــــــــــلی ممنون
پاسخ:
سلام، خواهش می کنم.

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">