ابزارهای کنترلی اندروید اجزای تعاملی در UI برنامه شما هستند و به شما این امکان را میدهند که بتوانید ورودی را از کاربر دریافت کنید یا مقداری را به آن نمایش بدهید. اندروید طیف وسیعی از کنترلها را در اختیار شما قرار میدهد که میتوانید از آنها در رابط کاربری خود استفاده کنید، مانند دکمهها، فیلدهای متنی، نوارهای جستجو، چک باکس، دکمههای بزرگنمایی، دکمههای جابجایی و بسیاری موارد دیگر.
View شی ای است که چیزی را روی صفحه می کشد که کاربر می تواند با آن تعامل داشته باشد و ViewGroup شی ای است که سایر اشیاء View (و ViewGroup) را نگه می دارد تا طرح بندی رابط کاربری را تعریف کند.
شما طرح خود را در یک فایل XML تعریف میکنید که ساختاری قابل خواندن برای انسان را دارد و ساختاری شبیه به HTML را ارائه میدهد. به عنوان مثال، یک طرح عمودی ساده با نمای متن و یک دکمه به این شکل است:
<?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:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" من یک TextView هستم" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="من یک Button هستم" /> </LinearLayout>
ابزارهای کنترلی UI
تعدادی زیادی ابزارهای کنترلی UI توسط اندروید ارائه شده است که به شما امکان می دهد رابط کاربری گرافیکی را برای برنامه خود بسازید.
ابزارهای نمایشی
ابزار و توضیحات | ردیف |
TextView
این کنترل برای نمایش متن به کاربر استفاده می شود. |
1 |
Button
یک دکمه فشاری که می تواند توسط کاربر برای انجام یک عمل فشار داده یا کلیک کند. |
2 |
ImageButton
ImageButton یک AbsoluteLayout است که به شما امکان می دهد مکان دقیق فرزندان خود را مشخص کنید. این دکمه ای را با یک تصویر (به جای متن) نشان می دهد که کاربر می تواند آن را فشار داده یا کلیک کند. |
3 |
ProgressBar
نمای ProgressBar بازخورد بصری در مورد برخی از کارهای در حال انجام، مانند زمانی که یک کار را در پسزمینه انجام میدهید، ارائه میکند. |
4 |
Spinner
یک لیست کشویی که به کاربران امکان می دهد یک مقدار را از یک مجموعه انتخاب کنند. |
5 |
ابزارهای ورودی
ابزار و توضیحات | ردیف |
EditText
EditText یک زیر کلاس از پیش تعریف شده از TextView است که شامل قابلیت های ویرایش غنی است. |
1 |
AutoCompleteTextView
AutoCompleteTextView نمای مشابه EditText است، با این تفاوت که در حین تایپ کردن کاربر، لیستی از پیشنهادات تکمیل را به صورت خودکار نشان می دهد. |
2 |
CheckBox
یک کلید روشن و خاموش که کاربر می تواند آن را تغییر دهد. هنگام ارائه گروهی از گزینه های قابل انتخاب که متقابلاً منحصر به فرد نیستند، باید از چک باکس استفاده کنید. |
3 |
ToggleButton
یک دکمه روشن و خاموش با نشانگر نور. |
4 |
RadioButton
RadioButton دو حالت دارد: علامت زده و بدون علامت. |
5 |
RadioGroup
RadioGroup یک ViewGroup است و برای گروه بندی یک یا چند RadioButton استفاده می شود. |
6 |
TimePicker
نمای TimePicker به کاربران امکان می دهد زمانی از روز را در حالت 24 ساعته یا AM/PM انتخاب کنند. |
7 |
DatePicker
نمای DatePicker به کاربران امکان می دهد تاریخ روز را انتخاب کنند. |
8 |
ایجاد ابزارهای کنترلی UI
کنترل های ورودی اجزای تعاملی در رابط کاربری برنامه شما هستند و به شما این امکان را میدهند که بتوانید ورودی را از کاربر دریافت کنید یا مقداری را به آن نمایش بدهید. اندروید طیف وسیعی از کنترلها را در اختیار شما قرار میدهد که میتوانید از آنها در رابط کاربری خود استفاده کنید، مانند دکمهها، فیلدهای متنی، نوارهای جستجو، چک باکس، دکمههای بزرگنمایی، دکمههای جابجایی و بسیاری موارد دیگر.
یک شی view ممکن است یک شناسه منحصر به فرد به آن اختصاص داده شود که View را به طور منحصر به فرد در درخت شناسایی می کند. سینتکس یک ID در داخل یک تگ XML به این شکل است:
android:id="@+id/text_id"
برای ایجاد یک ابزار طراحی View/Widget باید یک view/widget را در فایل layout تعریف کنید و یک شناسه منحصر به فرد به صورت زیر به آن اختصاص دهید:
<?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:id="@+id/text_id" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="من یک TextView هستم" /> </LinearLayout>
سپس در نهایت یک نمونه از شی Control ایجاد کنید و آن را از طرح بندی بگیرید، یه این شکل:
TextView myText = findViewById(R.id.text_id);