Android - Kullanıcı Arayüzü Tasarımı

Bu bölümde android ekranının farklı UI bileşenlerine bakacağız. Bu bölüm aynı zamanda daha iyi bir kullanıcı arayüzü tasarımı yapmak için ipuçlarını ve ayrıca bir kullanıcı arayüzünün nasıl tasarlanacağını açıklar.

UI ekran bileşenleri

Bir android uygulamasının tipik bir kullanıcı arayüzü, işlem çubuğu ve uygulama içerik alanından oluşur.

  • Ana Eylem Çubuğu
  • Kontrolü Görüntüle
  • İçerik alanı
  • Eylem Çubuğunu Böl

Bu bileşenler aşağıdaki resimde de gösterilmiştir -

Ekran Bileşenlerini Anlamak

Android uygulamasının temel birimi etkinliktir. Bir UI, bir xml dosyasında tanımlanır. Derleme sırasında, XML'deki her öğe, yöntemlerle temsil edilen özniteliklere sahip eşdeğer Android GUI sınıfına derlenir.

Grupları Görüntüle ve Görüntüle

Bir etkinlik, görünümlerden oluşur. Görünüm, yalnızca ekranda görünen bir widget'tır. Düğme vb. Olabilir Bir veya daha fazla görünüm tek bir GroupView olarak gruplanabilir. ViewGroup örneği, düzenleri içerir.

Düzen türleri

Pek çok düzen türü vardır. Bazıları aşağıda listelenmiştir -

  • Doğrusal Düzen
  • Mutlak Düzen
  • Masa Düzeni
  • Çerçeve Düzeni
  • Bağıl Düzen

Doğrusal Düzen

Doğrusal düzen ayrıca yatay ve dikey düzene ayrılmıştır. Bu, görünümleri tek bir sütunda veya tek bir satırda düzenleyebileceği anlamına gelir. İşte bir metin görünümü içeren doğrusal düzen (dikey) kodu.

<?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, alt öğelerinin tam konumunu belirlemenizi sağlar. Bu şekilde ilan edilebilir.

<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>

Tablo Düzeni

TableLayout, görünümleri satırlar ve sütunlar halinde gruplandırır. Bu şekilde ilan edilebilir.

<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>

Göreli Düzen

RelativeLayout, alt görünümlerin birbirine göre nasıl konumlandırılacağını belirlemenizi sağlar.

<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>

Çerçeve Düzeni

FrameLayout, tek bir görünümü görüntülemek için kullanabileceğiniz ekran üzerinde bir yer tutucudur. Bu şekilde ilan edilebilir.

<?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>

Bu özniteliklerin dışında, tüm görünümlerde ve Görünüm Gruplarında ortak olan başka öznitelikler de vardır. Aşağıda listelenmiştir -

Sr.No Görüntüle ve açıklama
1

layout_width

View veya ViewGroup'un genişliğini belirtir

2

layout_height

View veya ViewGroup'un yüksekliğini belirtir

3

layout_marginTop

View veya ViewGroup'un üst tarafında fazladan boşluk belirtir

4

layout_marginBottom

View veya ViewGroup'un alt tarafında fazladan boşluk belirtir

5

layout_marginLeft

View veya ViewGroup'un sol tarafında fazladan boşluk belirtir

6

layout_marginRight

View veya ViewGroup'un sağ tarafında fazladan boşluk belirtir

7

layout_gravity

Alt Görünümlerin nasıl konumlandırıldığını belirtir

8

layout_weight

Düzendeki fazladan alanın ne kadarının Görünüme tahsis edilmesi gerektiğini belirtir.

Ölçü birimleri

Android kullanıcı arayüzünde bir öğenin boyutunu belirlerken aşağıdaki ölçü birimlerini hatırlamanız gerekir.

Sr.No Birim ve açıklama
1

dp

Yoğunluktan bağımsız piksel. 1 dp, 160 dpi ekranda bir piksele eşdeğerdir.

2

sp

Ölçekten bağımsız piksel. Bu dp'ye benzer ve yazı tipi boyutlarını belirlemek için önerilir

3

pt

Nokta. Bir nokta, fiziksel ekran boyutuna bağlı olarak bir inçin 1 / 72'si olarak tanımlanır.

4

px

Piksel. Ekrandaki gerçek piksellere karşılık gelir

Ekran Yoğunlukları

Sr.No Yoğunluk ve DPI
1

Low density (ldpi)

120 dpi

2

Medium density (mdpi)

160 dpi

3

High density (hdpi)

240 dpi

4

Extra High density (xhdpi)

320 dpi

Düzenleri optimize etme

Etkili düzenler oluşturmaya yönelik bazı yönergeler.

  • Gereksiz yuvalama yapmaktan kaçının
  • Çok fazla Görünüm kullanmaktan kaçının
  • Derin iç içe geçmekten kaçının