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
خب من این مبحث را و توابعی که پشت هم مینویسیم را برای دوستانی که برنامه نویسی جاوا کار نکردند یکم توضیح دادم. چیز پیچیده ای نیست و تقریبا بدیهی هست عملکردشان.
این کدی که الان نوشتم را میتوانید در گوشی های مختلف تست کنید. میبینید که همیشه به همین نسبت سایز دکمتان موقع اجرا تغییر میکند خیلی جاها این کد استفاده دارد وقتی بخواید دیزاینتان با توجه به صفحه گوشی تغییر کند.
برای هر چهار دکمتان این را میتوانید بنویسید حالا.
خب بریم حالا سراغ اینکه ببینیم میخواهیم صفحات برنامه مان چه ابزارهایی داشته باشند و با ابزارهایی جز Button اشنا بشویم. این بحثی بود که میشد اول کار روی آن کار کنیم چند جلسه و همه ابزارها را یکباره بگم اما فکر کنم توی طول کار هر لحظه به آنها احتیاج داشته باشیم یادتان بدم بهتر هست.
بریم یک layout بسازیم برای صفحه ای که قرار هست اطلاعات یک نفر وارد بشود
خب من همان Linear میسازم. میبینید که LinearLayout کاربرد خوبی دارد. برای وقتی بخواهید یک سری ابزار را زیر هم بندازید عالی هست.
از اول ببینیم چه چیزهایی میخواهیم. مثلا میخواهم اسم و نام فرد را داشته باشم. یعنی فرد وارد کند آن را.
اول از همه باید به کاربر بگیم میخواهیم اسمت را وارد کنی. برای نشان دادن یک متن به کاربر از TextView استفاده میکنیم.
یک تکست ویو بسازید. عرضش را بدهید fill و ارتفاعش را بدهید wrap. اینجا content wrap در اصل با توجه به سایز فونتی که انتخاب میکنید میتواند ارتفاع این textView را تنظیم کند.
خب پس تا الان دارم:
<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
داخلش میخواهم بنویسم نام دوست خود را وارد کن. برای اضافه کردن متن به تکست ویو از این تگ استفاده کنید:
android:text=""
و بعد از آن متن خودتان را وارد کنید بین دوتا “
فقط یک نکته بگم که اینتلیجی با فارسی مشکل دارد. شروع کنید به نوشتن بین "" میبینید فارسی بنویسید کلا کمی بهم ریخته میشود. یکم قلق دارد باید با آن کار کنید تا یاد بگیرید. همچنین توی دیزاین متن فارسی را درست نشان نمیدهد حداقل تا ورژن 14. اما در گوشیتان که اجرا بگیرید میبینید همه چی درست هست.
تا الان من این را دارم:
بیایم با یه سری از خواص این textView اشنا شویم.
1) سایز فونت
برای تعیین سایز فونت میتونید از تگ زیر استفاده کنید:
android:textSize="25sp"
که واحده سایز برای فونت را باید sp بدهید. مثلا من دادم 25
2) محل قرارگیری متن
مثلا ما فارسی نوشتیم متن باید بیاد راست. پس میتونم بزنم:
android:gravity="right"
که البته center هم کاربرد میتواند داشته باشد برای فارسی
3) رنگ متن
برای این هم میتوانید از تگ زیر استفاده کنید
android:textColor="@android:color/white"
دقت کنید، رنگ دادن میتواند دو روش داشته باشد. یکی کدی که الان نوشتم. اما این را که بزنید میبینید برای color قدرت انتخاب بالایی ندارید. برای دادن رنگ های دلخواهتان میتونید این کار را از بخش دیزاین انجام بدهید. وارد دیزاین بشوید. از صفحه موبایل textview را انتخاب کنید و از بخش ابزارهایش از سمت راست textcolor را بزنید:
طبق عکس زیر میتوانید رنگ انتخاب کنید
خب حالا باید کاربر نام مخاطب یا در واقع دوستش را وارد کند! برای اینکار از EditText استفاده میکنیم. که خیلی از ویژگیهایش عین همین textview هست. من طبق زیر آن رو هم ساختم:
خب id که باید بهش میدادیم چون قرار هست در کد فراخوانیش کنیم ببینیم کاربر چه چیزی وارد کرده.
فقط یک چیز می ماند. Hint. البته اینجا کاربردی نداره اما خوب هست بدانید  فک کنم حدس زدید چه چیزی هست. دیدید که در برنامه ها یک جایی باید چیزی وارد کنید بعد روی محل وارد کردن مثلا نوشته نام خود را وارد کن. بعد کلیک که میکنید راهنما محو میشود؟ این همان hint هست. البته اینجا چون بالای editText نوشتیم نام را وارد کن لازم نبود
خب میتوانید برای نام خانوادگی هم عینا اینکار را کنید.
حالا میرسیم مورد بعدی. مثلا اینکه مخاطب شما زن هست یا مرد. برای اینکار میتونید به کاربر گزینه انتخابی بدهید. با استفاده از ابزاری به نام Radiobutton.
<RadioButton android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/rdbDokhtar"

android:text="زن"
/>
که البته این ابزار برای راست چین شدن یک نکته ای دارد. اول برای "مرد" هم این را بسازید.
تا الان من از خود گوشیم اسکرین گرفتم این را دارم:
خب این مثل فیلدهای کار با تکست ها نیست که با gravity راست چین شود.
با کد زیر اول این رادیوباتن را بیاریم سمت راست: