طراحی رابط کاربری در برنامه نویسی اندروید
طراحی رابط کاربری در برنامه نویسی اندروید
در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، در مورد طراحی رابط کاربری در برنامه نویسی اندروید صحبت خواهیم کرد.
در این درس ما به اجزای مختلف رابط کاربری صفحه اندروید نگاه خواهیم کرد. همچنین نکاتی را برای ایجاد طراحی رابط کاربری در برنامه نویسی اندروید بیان می کنیم.
اجزای طراحی رابط کاربری در برنامه نویسی اندروید
رابط کاربری معمولی یک برنامه اندروید شامل اجزای زیر می باشد:
- Main Action Bar
- View Control
- Content Area
- Split Action Bar
این مولفه ها در تصویر زیر نیز نشان داده شده اند:
درک اجزای صفحه
واحد اصلی برنامه اندروید فعالیت (activity) است. UI در یک فایل xml تعریف می شود. در هنگام تدوین، هر عنصر در XML در کلاس معادل Android GUI با ویژگی هایی که توسط متدها نشان داده می شوند، وارد می شود.
View and ViewGroups
یک activity متشکل از View است. View فقط یک ابزارک است که در صفحه نمایش ظاهر می شود. می تواند دکمه یا چیزهای دیگری باشد یک یا چند View را می توان با هم در یک GroupView گروه بندی کرد. نمونه ViewGroup شامل طرح بندی است.
انواع طرح بندی
طرح بندی انواع مختلفی دارد. برخی از آنها در زیر ذکر شده است –
- Linear Layout
- Absolute Layout
- Table Layout
- Frame Layout
- Relative Layout
Linear Layout
Linear Layout یا طرح خطی بیشتر به طرح افقی و عمودی تقسیم می شود. این بدان معناست که می تواند View ها را در یک ستون یا در یک ردیف واحد ترتیب دهد. در اینجا کد طرح خطی (عمودی) وجود دارد که شامل نمای متنی است.
1 2 3 4 5 6 7 8 9 10 11 |
<?xml version=”1.0” encoding=”utf-8”?> <LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android” android:layout_width=”fill_parent” android:layout_height=”fill_parent” android:orientation=”vertical” > <TextView android:layout_width=”fill_parent” android:layout_height=”wrap_content” android:text=”@string/hello” /> </LinearLayout> |
AbsoluteLayout
AbsoluteLayout به شما امکان می دهد مکان دقیق فرزندان آن را مشخص کنید.
1 2 3 4 5 6 7 8 9 10 11 12 |
<AbsoluteLayout android:layout_width=”fill_parent” android:layout_height=”fill_parent” xmlns:android=”http://schemas.android.com/apk/res/android” > <Button android:layout_width=”188dp” android:layout_height=”wrap_content” android:text=”Button” android:layout_x=”126px” android:layout_y=”361px” /> </AbsoluteLayout> |
TableLayout
طرح بندی جدول TableLayout نماها را به سطرها و ستونها گروه بندی می کند.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<TableLayout xmlns:android=”http://schemas.android.com/apk/res/android” android:layout_height=”fill_parent” android:layout_width=”fill_parent” > <TableRow> <TextView android:text=”User Name:” android:width =”120dp” /> <EditText android:id=”@+id/txtUserName” android:width=”200dp” /> </TableRow> </TableLayout> |
RelativeLayout
RelativeLayout به شما امکان می دهد نحوه قرارگیری دیدگاه های فرزند را نسبت به یکدیگر را تعیین کنید.
1 2 3 4 5 6 |
<RelativeLayout android:id=”@+id/RLayout” android:layout_width=”fill_parent” android:layout_height=”fill_parent” xmlns:android=”http://schemas.android.com/apk/res/android” > </RelativeLayout> |
FrameLayout
FrameLayout یک حافظه نگهدارنده روی صفحه است که می توانید از آن برای نمایش یک نمای واحد استفاده کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?xml version=”1.0” encoding=”utf-8”?> <FrameLayout android:layout_width=”wrap_content” android:layout_height=”wrap_content” android:layout_alignLeft=”@+id/lblComments” android:layout_below=”@+id/lblComments” android:layout_centerHorizontal=”true” > <ImageView android:src = “@drawable/droid” android:layout_width=”wrap_content” android:layout_height=”wrap_content” /> </FrameLayout> |
جدا از این ویژگی ها، ویژگی های دیگری نیز وجود دارد که در همه View ها و ViewGroups مشترک است. آنها در زیر ذکر شده اند:
- layout_width
عرض View یا ViewGroup را مشخص می کند
- layout_height
ارتفاع View یا ViewGroup را مشخص می کند
- layout_marginTop
فضای اضافی را در سمت بالای View یا ViewGroup مشخص می کند
- layout_marginBottom
فضای اضافی را در قسمت پایین View یا ViewGroup مشخص می کند
- layout_height
فضای اضافی را در سمت چپ View یا ViewGroup مشخص می کند
- layout_marginRight
فضای اضافی را در سمت راست View یا ViewGroup مشخص می کند
- layout_marginLeft
نحوه قرارگیری نماهای فرزند را مشخص می کند
- layout_weight
مشخص می کند که چه مقدار از فضای اضافی در طرح باید به View اختصاص یابد
واحد های اندازه گیری
هنگامی که در حال تعیین اندازه عنصر در UI Android هستید ، باید واحدهای اندازه گیری زیر را به خاطر بسپارید.
- dp
پیکسل مستقل از تراکم. 1 dp معادل یک پیکسل در صفحه نمایش 160 dpi است.
- sp
پیکسل مستقل از مقیاس همان dp است و برای تعیین اندازه قلم توصیه می شود
- pt
نقطه. یک نقطه بر اساس اندازه صفحه نمایش فیزیکی ، 1/72 اینچ تعریف شده است.
- px
پیکسل مربوط به پیکسل های واقعی صفحه است
تراکم صفحه نمایش
- تراکم کم (ldpi)
120 نقطه در اینچ
- تراکم متوسط (mdpi)
160 نقطه در اینچ
- تراکم بالا (hdpi)
240 نقطه در اینچ
- تراکم فوق العاده بالا (xhdpi)
320 نقطه در اینچ
بهینه سازی طرح بندی ها
در اینجا برخی از دستورالعمل ها برای ایجاد طرح بندی کارآمد آورده شده است.
- از تو در تو سازی های غیر ضروری خودداری کنید
- از استفاده بیش از حد از Viewsها خودداری کنید
- ازتو در تو سازی های عمیق خودداری کنید
لیست جلسات قبل آموزش برنامه نویسی اندروید
-
- نگاهی کلی به برنامه نویسی اندروید
- تنظیمات محیط در برنامه نویسی اندروید
- معماری برنامه نویسی اندروید
- اجزای برنامه در برنامه نویسی اندروید
- Hello World در برنامه نویسی اندروید
- سازماندهی و دسترسی به منابع در برنامه نویسی اندروید
- فعالیت در برنامه نویسی اندروید
- سرویس در برنامه نویسی اندروید
- گیرنده های پخش در برنامه نویسی اندروید
- ارائه دهنده محتوا در برنامه نویسی اندروید
- قطعات در برنامه نویسی اندروید
- Intent و فیلتر در برنامه نویسی اندروید
- طرح بندی رابط کاربری در برنامه نویسی اندروید
- کنترل های رابط کاربری در برنامه نویسی اندروید
- مدیریت رویدادها در برنامه نویسی اندروید
- استایل و تم ها در برنامه نویسی اندروید
- اجزای سفارشی در برنامه نویسی اندروید
- کشیدن و رها کردن در برنامه نویسی اندروید
- نوتیفیکیشن ها در برنامه نویسی اندروید
- سرویس های مبتنی بر مکان در برنامه نویسی اندروید
- ارسال ایمیل در برنامه نویسی اندروید
- ارسال پیامک در برنامه نویسی اندروید
- تماس های تلفنی در برنامه نویسی اندروید
- انتشار برنامه اندروید
- آموزش Alert Dialog در برنامه نویسی اندروید
- انیمیشن در برنامه نویسی اندروید
- ضبط صدا در برنامه نویسی اندروید
- مدیریت صدا در برنامه نویسی اندروید
- آموزش Auto Complete در برنامه نویسی اندروید
- بهترین شیوه ها در برنامه نویسی اندروید
- بلوتوث در برنامه نویسی اندروید
- استفاده از دوربین در برنامه نویسی اندروید
- کلیپ بورد در برنامه نویسی اندروید
- فونت سفارشی در برنامه نویسی اندروید
- پشتیبان گیری از داده ها در برنامه نویسی اندروید
- ابزارهای توسعه دهنده در برنامه نویسی اندروید
- آموزش شبیه ساز در برنامه نویسی اندروید
- اتصال به فیس بوک در برنامه نویسی اندروید
- حرکات لمسی در برنامه نویسی اندروید
- آموزش گوگل مپ در برنامه نویسی اندروید
- افکت های تصویر در برنامه نویسی اندروید
- Image Switcher در برنامه نویسی اندروید
- حافظه داخلی در برنامه نویسی اندروید
- آموزش کار با JetPlayer در برنامه نویسی اندروید
- JSON Parser در برنامه نویسی اندروید
- ارتباط با LinkedIn در برنامه نویسی اندروید
- نوار پیشرفت Spinner در برنامه نویسی اندروید
- بومی سازی در برنامه نویسی اندروید
- صفحه Login در برنامه نویسی اندروید
- MediaPlayer در برنامه نویسی اندروید
- Multitouch در برنامه نویسی اندروید
- Navigation در برنامه نویسی اندروید
- اتصال به اینترنت در برنامه نویسی اندروید
- NFC در برنامه نویسی اندروید
- PHP و MYSQL در برنامه نویسی اندروید
- Progress Circle دربرنامه نویسی اندروید
- Progress Bar در برنامه نویسی اندروید
- Push Notification در برنامه نویسی اندروید
- RenderScript در برنامه نویسی اندروید
- RSS Reader در برنامه نویسی اندروید
- Screen cast در برنامه نویسی اندروید
- SDK Manager در برنامه نویسی اندروید
- سنسورها در برنامه نویسی اندروید
- Session در برنامه نویسی اندروید
- Shared Preferences در برنامه نویسی اندروید
- پروتکل SIP در برنامه نویسی اندروید
- Spelling Checker در برنامه نویسی اندروید
- پایگاه داده SQLite در برنامه نویسی اندروید
- Support Library در برنامه نویسی اندروید
- تست برنامه های اندروید
- قابلیت متن به گفتار در برنامه نویسی اندروید
- TextureView در برنامه نویسی اندروید
- اتصال به توییتر در برنامه نویسی اندروید
دیدگاه شما