خب اجرا بگیرید. این کد دقیقا عین این هست که توی دوتا کلاس مختلف بیاید از myMath نمونه بگیرید و فرقی ندارد. (علامت \n در عمل پرینت نقش enter زدن را دارد و عمل + در متن چاپی برای متصل کردن دوتا فرمان چاپ به هم دیگر استفاده میشود)
وقتی چاپ کنید میبینید که اولش متغیرتان همان 4 شده مقدارش اما بعدش که دوباره کلاس را نمونه گرفتید شده 0. که البته لازم به ذکر هست این صفر برای این است که مقدار int در جاوا وقتی متغیری از جنسش تعریف میکنید بصورت پیشفرض صفر در نظر گرفته میشود....
وقتی چاپ کنید میبینید که اولش متغیرتان همان 4 شده مقدارش اما بعدش که دوباره کلاس را نمونه گرفتید شده 0. که البته لازم به ذکر هست این صفر برای این است که مقدار int در جاوا وقتی متغیری از جنسش تعریف میکنید بصورت پیشفرض صفر در نظر گرفته میشود....
حالا چرا اینطوری شد؟ ..... خب اصلا واضح هم هست! این عین همین هست که بگید یک انسانی گشنه اش بوده و چیزی خورده یکی دیگه سیر شده! خنده دار هست. چون m و m2 دوتا موجوده جدا هستند. با یکی کار کنید نمیشه روی دیگری هم اجرا شود کارتون!
خب حالا تکلیف چی هست؟ چکار کنیم که یک متغیری از یک کلاسو بتونیم در طول برناممون هی استفادش کنیم؟ و تغییر هم نکند؟ و از هرجای برنامه و هر کلاسی که داریم مقدارشو تغییر دادیم داخلش ذخیره شود برای همه؟
خب خودتان برید و تست کنیدش. مثلا در کلاسی که ساختید دوتا متد تعریف کنید. داخل یکی بیاید مقداره این متغیر را با استفاده از myMath.MyInt و بدون نمونه گرفتن مثلا بکنید 8.
در یک متد دیگه سه تا بهش اضافه کنید.
در آخر داخل main بیاید متدهاتونو فراخوانی کنید که عملیات را انجام بدهند و اخر هم چاپ کنید MyInt را. میبینید که مقدارها درست داخلش ذخیره شده.
در یک متد دیگه سه تا بهش اضافه کنید.
در آخر داخل main بیاید متدهاتونو فراخوانی کنید که عملیات را انجام بدهند و اخر هم چاپ کنید MyInt را. میبینید که مقدارها درست داخلش ذخیره شده.
خودتان تست کنید این رو تا مجبور شید دست به کد شید
چون من بگم احتمالا کسی انجام نخواهد داد 😐
چون من بگم احتمالا کسی انجام نخواهد داد 😐
برنامه همیشگی مان را باز کنید. میخواهم یک سری نکته جدید راجع به دیزاین به شما بگم.
layout main را بیارید.
با دوتا layout اشنا شدید. همان linearLayout بگذارید باشه. میخواهم چنین دیزاینی باهاش انجام بدهم:
با دوتا layout اشنا شدید. همان linearLayout بگذارید باشه. میخواهم چنین دیزاینی باهاش انجام بدهم:
و البته با کد.
خب سه تا دکمه توی کد بگذارید پشت هم. مسلما چنین چیزی را نخواهید داشت! چون دکمه های شما زیر هم قرار میگیرند. چطوری بیایم این فاصله¬های غیر یکسان را ایجاد کنیم؟
خب دوستان برای ایجاد فاصله بین ابزارها از margin استفاده میکنیم که میتواند از بالا یا پایین یا راست و چپ تعریف بشود. مقدار margin میتواند بر اساس px یا dp تعیین شود. مثل زیر:
android:layout_marginTop="190dp"
خب سه تا دکمه توی کد بگذارید پشت هم. مسلما چنین چیزی را نخواهید داشت! چون دکمه های شما زیر هم قرار میگیرند. چطوری بیایم این فاصله¬های غیر یکسان را ایجاد کنیم؟
خب دوستان برای ایجاد فاصله بین ابزارها از margin استفاده میکنیم که میتواند از بالا یا پایین یا راست و چپ تعریف بشود. مقدار margin میتواند بر اساس px یا dp تعیین شود. مثل زیر:
android:layout_marginTop="190dp"
اما حالا چطوری؟ دکمه اولی رو که انداختید چطوری بیاد وسط؟
با gravity که اشنا شدید. کافیه بذاریدش روی center. بصورت زیر
با gravity که اشنا شدید. کافیه بذاریدش روی center. بصورت زیر
خب برای دومی چطور؟ اول اینکه یکم از بالایی فاصله دارد. یکم هم از چپ صفحه.
کافی هست نسب به بالا margin بگیرد. همینطور بهش gravity بدم به سمت چپ صفحه و از چپ یکم هم margin بدهم. اینطوری:
کافی هست نسب به بالا margin بگیرد. همینطور بهش gravity بدم به سمت چپ صفحه و از چپ یکم هم margin بدهم. اینطوری:
و اما سومی. سمت راست هست و از بالایی یکم فاصله دارد. کدش رو دیگه باید حدس بزنید. اینطوری:
حالا مفهوم بعدی.
فک کنید من بخواهم از داخل ابزاری برایش فاصله ایجاد کنم! یعنی چی؟ دکمه زیری رو من چطوری بسازم:
فک کنید من بخواهم از داخل ابزاری برایش فاصله ایجاد کنم! یعنی چی؟ دکمه زیری رو من چطوری بسازم:
با margin که اشنا شدید برای فاصله دادن از اطراف بود. حالا با padding اشنا شید!
برای فاصله دادن توی ابزارها کاربرد دارد. الان من میخواهم متن روی دکمم از سمت راست یک فاصله خاصی بگیرد مثلا. کافی هست یه آن padding راست بدهم.
برای فاصله دادن توی ابزارها کاربرد دارد. الان من میخواهم متن روی دکمم از سمت راست یک فاصله خاصی بگیرد مثلا. کافی هست یه آن padding راست بدهم.