menu

عناصر رابط کاربری در اندروید

با عناصر گرافیکی در اندروید و نحوه کار با آن ها بیشتر آشنا شوید


عناصر گرافیکی که در رابط کاربری استفاده می شوند در تعامل با کاربر هستند و بسیار کاربردی می باشند. اندروید شامل طیف وسیعی از عناصر همانند دکمه ها، فیلدهای متنی، چک باکس ها، سیک بارها و ... است.

برای استفاده از لایه ها و عناصر مختلف از طریق "Palette" در محیط اندروید استودیو به آن ها دسترسی خواهیم داشت و می توان از طریق کشیدن و رها کردن عناصر را به داخل صفحه نمایش کشید. در قسمت "Component Tree" نیز می توان برروی عناصر و لایه ها مدیریت داشت و آن ها را جا به جا، حذف و یا اضافه کرد. همچنین از طریق "Properties" نیز می توان خواص و ویژگی های عناصر و لایه ها را تغییر داد.

uielements1

برای آشنایی بیشتر با عناصر گرافیکی، یک لایه جدید ساخته و درون آن برخی از این عناصر را قرار می دهیم:

          
  <?xml version="1.0" encoding="utf-8"?>
  << xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="16dp">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New Text"
        android:id="@+id/textView" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New Button"
        android:id="@+id/button" />

    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New RadioButton"
        android:id="@+id/radioButton" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New CheckBox"
        android:id="@+id/checkBox" />


    <ToggleButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New ToggleButton"
        android:id="@+id/toggleButton" />

    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/progressBar" />

    <SeekBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/seekBar" />

    <Spinner
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/spinner" />

    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/editText" />

  </LinearLayout>        
          

انواع عناصر گرافیکی در اندروید

نام عنصر توضیح
TextView برای نمایش یک متن به کاربر مورد استفاده قرار می گیرد.
EditText "EditText" برگرفته شده از کلاس "TextView" می باشد با این تفاوت که امکان ویرایش متن وجود دارد و به عنوان ورودی متن از آن استفاده می شود.
AutoCompleteTextView همانند "EditText" می باشد با این تفاوت که دارای قابلیت نمایش پیشنهادات به کاربر در حین تایپ کردن وی را دارا است.
Button دکمه در اندروید برای کارهای مختلفی از جمله انجام یک عملیات پس از لمس آن کاربرد دارد.
ImageButton همانند دکمه هست با این تفاوت که امکان نمایش یک عکس یا فونت ها برروی آن امکان پذیر است و همچنین برخی از خصوصیات کلاس "ImageView" را در خود داراست.
CheckBox چک باکس ها در اندروید می توانند نقش فعال یا غیر فعال سازی یک عملیات را ایفا نمایند.
ToggleButton دکمه تاگل شبیه دکمه خاموش و روشن کردن و یا همان فعال و غیر فعال کردن است که در نسخه های بالاتر اندروید نیز می توانیم از سویچ به جای آن استفاده کنیم.
RadioButton دکمه های رادیویی می توانند تنها دارای دوحالت باشند: یا به صورت چک شده و یا به صورت چک نشده.
RadioGroup برای زمانی که بخواهیم از چند دکمه رادیویی استفاده نماییم.
ProgressBar پروگرس بار ها برای زمان هایی که یک عملیات در پس زمینه برنامه اتفاق می افتد مناسب هستند و زمان پردازش را به صورت نمایان برای کاربر نمایش می دهند.
Spinner یک لیست کشویی که به کاربر اجازه می دهد به چندین آیتم دسترسی پیدا کرده و آیتم موردنظر را انتخاب کند.
TimePicker برای انتخاب یک زمان در روز که به صورت 24 ساعته و یا حالت "AM/PM" است.
DatePicker برای انتخاب تاریخ و مشخص کردن روز، ماه و سال موردنظر

استفاده از عناصر در کدنویسی

برای دسترسی به عناصر گرافیکی و معرفی آن به اشاره گر جاوا لازم است برای آن یک شناسه یکتا در نظر بگیریم. برای تعریف یک شناسه برای یک عنصر در فایل "XML" از کد زیر استفاده می کنیم:

          
 android:id="@+id/favorite_id"          
          

به جای "favorite_id" نام شناسه موردنظر خود را قرار می دهیم. به عنوان نمونه اگر یک "TextView" داشته باشیم آنگاه شناسه آن را به صورت زیر تعریف می نماییم:

          
 android:id="@+id/txt_title"          
          

لایه موردنظر ما به صورت زیر خواهد شد:

          
  <?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/txt_title"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="iZarebin Tutorial" />
  </LinearLayout>         
          

نحوه تعریف و معرفی یک عنصر به اشاره گر جاوا

          
 package com.example.helloworld;

 import android.os.Bundle;
 import android.app.Activity;

 public class MainActivity extends Activity {  
     
 @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      TextView txttitle = (TextView) findViewById(R.id.txt_title);   
   }   
 }