Persian Software Engineers – Telegram
Persian Software Engineers
1.9K subscribers
353 photos
14 videos
84 files
303 links
تجربیات شخصی یک مهندس نرم افزار در آلمان‌.
کانال یوتیوب:
https://www.youtube.com/@Dev_Germany
ادمین کانال :
@mohamad_germany
Download Telegram
با Bundle هم که اشنا هستید. یک نوع Bundle تعریف کردم اسمش را هم دلخواه دادم bdl.
حالا کدهای زیر را به متدتان اضافه کنید:

@Override
public void onCreate(Bundle bdl) {
super.onCreate(bdl);
setContentView(R.layout.second);

}
خط اول که مشخص هست همان کاری که Bundle گفتم انجام میدهد را برایش تنظیم کردیم.
خط دومم اکتیویتی ما را به layout دوممان وصل کرده است. اون R هم گفتم فعلا درین حد بدانید که برای صدا زدن ابزارهایی که روی صفحه میگذاریم یا Layout ها از R استفاده میکنیم.

حالا بریم به اکتیویتی اصلی مان یعنی MyActivity و به آن بگیم روی دکمه که زده شد بیاد به SecondActivity.
پس یک دکمه روی Layout main بندازید. ایدیش را هم بگذارید btnSecondPage
برید داخل اکتیویتی مربوط به این صفحه (MyActivity ) و داخل متد OnCreate اش یک onclickListener برای دکمتان بسازید. چون قبلا گفتم اینها را وارد جزییاتش نمیشوم. کد بصورت زیر هست:
که البته خود تعریف دکمه هم توضیحاتی دارد که در جلسات بعد خواهیم پرداخت.
حالا در onClick بنویسید:
Intent myintent = new Intent(MyActivity.this,SeconActivity.class);
این چی هست؟ اگر دقت کنید یک نمونه گرفتیم از موجودیتی به نام Intent که اسمشم دادم myintent
حالا در نمونه گرفتن از کلاس A که داشتیم یادتان باشد میگفتیم
A mya = new A()
و جلوی اسم A پرانتز داشتیم. این پرانتز میتواند با ورودی پر بشود که بسته به کلاستان دارد (بعدا مثال جاواییش را میزنم). اما اینجام دارید میبینید. Intent برای نمونه گرفتن ازش دوتا ورودی میخواهد. چیز سختیم نی داریم به آن میگوییم از کجا میخواهم بروم کجا!
و حالا intent چی هست
Intent ها مثل پیام هایی هستند که با آنها از سیستم اندرویدتان تقاضای کاری را میکنید. در واقع Intent ها وقوع یک رویداد را به اندروید اعلام میکنند. مثلا بخواهیم آدرسی را در مرورگر اندروید باز کنیم یا الان اینجا میخواهیم به صفحه ای برویم.
برای رفتن از یک صفحه به صفحه دیگر intentرا بصورت بالا تعریف میکنیم. که به آن intent صریح هم میگویند.
خب intent را تعریف کردیم حالا باید start بکنیم آن را. کد پایین را زیره کد بالایی بنویسید:
startActivity(myintent);
کد نهایی من بشکل زیر است:
خب برنامتان را همانطور که گفتم اجرا کنید. اما روی دکمه که میزنید برنامه خطای has stopped خواهد داد.
خب برنامتان را همانطور که گفتم اجرا کنید. اما روی دکمه که میزنید برنامه خطای has stopped خواهد داد.
دلیلش چیست؟ قبلا گفتم یک فایلی داریم به اسم manifest که از منوی سمت چپ پیداش میکنید. یک فایل xml هست. این فایل شناسنامه برنامه تان هست. هر کاری بکنید باید به آن بگید. مثلا اکتیویتی تعریف میکنید باید اینجا اعلام کنید. یا مثلا دیدید یک برنامه ای را نصب میکنید اولش اعلام میکند این برنامه به چه چیزایی دسترسی دارد؟ به اینها میگیم permission.
اگه مثلا از وای فای استفاده میکند برنامتان باید اینجا اعلام کنید که برنامه من این قصد را دارد وگرنه برنامتان به خطا میخورد. حالا اینجا کافی هست که توی این فایل xml که یادم دادم کار باهاش رو سر layout ها اسم اکتیویتی که اضافه کردیم رو بگیم.
توجه کنید اکتیویتی اصلی خودش تعریف شده اینجا چون خودش دیفالت بود روی اپلیکیشن. برای همین برنامه بالا آمد. اما موقع ورود به اکتیویتی دوم ینی صفحه دوم خطا داد. الان تگ
application

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

که اگر نگاه کنید در ادامه اولش نوشته شده
name="MyActivity"
ما چنین چیزی باید بسازیم اما کله این تگ لازم نیست عینا نوشته شود. این تگ چون تگ اصلی هست یک سری ویژگی ها باید بهش تنظیم میشده که شده. شما فقط آخر این تگ activity و البته همون داخل تگ application یک تگ activity دیگر تعریف کنید و بصورت زیر به آن مقدار بدید:
و در آخر:
خب تمام. برنامه را اجرا کنید و لذت ببرید.
امیدوارم این آموزش برای شما مفید بوده باشه.
خسته نباشید
بسیار عالی بود و از خانم مقاری بابت آموزش خوبشون تشکر می کنم دوستان لطفا کانالو به دوستان خودتون معرفی کنید و کسانی که هنوز عضو نشدن عضو بشن 😊
@androiddevelop
سلام آموزش بعدی برنامه نویسی اندروید امشب ساعت 10
سلام. مقاری هستم با جلسه پنجم آموزش اندروید در خدمتتان هستم