Dip, Dp, Sp Nedir? Android Tasarım Terimleri Ölçüler

Android Tasarımlarında Ölçü Birimleri

Android tasarımlarında yani layout, xml dosyalarında belirli öğelerde ölçü değişikliği yapmak istediğimiz zaman kullanabileceğimiz farklı birimler vardır. Bunlar sırasıyla;

  • dp, dip – density independent pixels
  • sp – scale independent pixels
  • pt – points
  • px – pixels
  • mm – milimeters
  • in – inches

Dp, Dip Nedir?

Yoğunluk bağımsız piksel olarak çevirebileceğimiz dp veya dip cihaz ekranının fiziksel yoğunluğuna bağlı soyut birimlerdir.
Bu tanımlamayı tamamlayabilmek için dpi kullanacağız ki oda dot per inch yani inç başına düşen nokta sayısı demek oluyor. 160dpi bir ekranda 1dp 1 piksele eşit olmaktadır. 320dpi bir ekranda ise 1dp 2 piksele eşit olacaktır. Anlaşılacağı üzere dp orantısal bir birimdir ve farklı ekranlarda aynı oranları yakalayabilmek için tasarlanmıştır.

Dp Formulü / Hesaplaması şu şekilde yapılmaktadır;
dp = (piksel genişlik * 160) / dpi

Örnek olarak 1200 piksel genişliğe sahip 320dpi bir android cihazda genişlik değeriniz 600dp olacaktır.
(1200 * 160) / 320 = 600dp

Aşağıdaki kodda 20dp margin değeri 160dpi bir ekranda 20piksel ve 320dpi bir ekranda ise 40piksel olacaktır.

<Button android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”@string/clickme”
android:layout_margin=”20dp” />

Videolu açıklama isterseniz Android tarafının hazırladığı şu videoya göz atabilirsiniz. Android video derslerinden density independent pixels.

Ekran dokunuşlarında yeterli alanı sağlamak için önerilen parmak genişliği 50dp’dir.

 Sp Nedir?

Ölçek bağımsız piksel, dp birimine benzer olup aynı zamanda kullanıcının font boyutu tercihi ile ilişkilidir bu nedenle yazı boyutları tanımlamaları için daima sp kullanımı tavsiye edilmektedir!

<TextView android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:textSize=”20sp” />

Android Emulator Hatası HAXM Çözümü

android studio emulatör hatası çözümü

Android uygulama yapımına yeni başlayanların bir sorunu olan android emulator hatası HAXM çözümü için aşağıdaki adımları takip etmeniz gerekmektedir.
Muhtemel android emulator hata mesajınız
Please ensure Intel HAXM is properly installed and usable hatası
cpu acceleration status: hax kernel module is not installed! hatası
Android – ERROR: x86 HAXM kernel module is not installed
gibi farklı şekillerde olabilir.

AMD Kullanıcıları için android emulator hatası çözüm adımları

Tıklanması gereken her yer için tıkla ve benzeri terimler kullanmadan açılan pencerelerde tıklanması gereken yerin ismi direk telaffuz edilmiştir.

  1. AVD Manager
  2. Create Virtual Device
  3. Nexus 5 seçili iken Clone Device
  4. Yeni isim verip ayarları aynı bırakarak Ok
  5. Next
  6. Show downloadable system images
  7. Lollipop / 21 / armeabi-v7a / Android 5.0 -> Download
  8. İndirdiğiniz versiyonu seçip Next
  9. Finish
  10. AVD Manager Kapat
  11. Run App
  12. Launch Emulator
  13. Oluşturulan Klonu Seç ve Ok

Android Emulatorün Daha Hızlı Çalışması için

2 GB rame sahip bir bilgisayarda yapılan denemeye göre 3. adımda klonlanan cihazı farklı seçebileceğiniz (mesela Nexus S) gibi 7. adımda 21. API yerine 17. API’yi (ya da daha düşük api hedefliyorsanız onu) seçerseniz ilk açılış ve genel kullanım daha hızlı olacaktır.

4. adımda ayarları aynı bırakabileceğiniz gibi kullanmayacağınız kamera ve sensör özelliklerini kaldırabilirsiniz. Düşük sistemli bilgisayarlar için ne kadar az ihtiyaç olursa verimlilik artacaktır.

 

Android Emulator Hatasının çözüm adımlarını ilgili videoyu izleyerek gerçekleştirin.

 

Android Emulator Hatası Devam Eden Sorunlar

Cannot set up guest memory ‘android_arm’: Invalid argument
Hatası alırsanız klonladığınız cihazın ayarlarına girerek tanımladığınız ram değerini düşürün.
Android Virtual Device Manager Açın
Cihazınız hizasında sağdaki kalem simgesine tıklayın
Show Advanced Settings > Memory and Storage > Ram yolunu izleyerek değeri düşürün
2 GB ramli bir bilgisayarınız varsa değeri 512ye kadar düşürmeniz gerekebilir. Denenen 2GB ramli sistemde 768 mb değeriyle çalışmada sorun çıkmamışıtır.
Finish

Tekrar Run’a tıklayıp cihanızı seçerek emulatörünüzü başlatabilirsiniz.
Android emulatörün ilk açılışı biraz zaman alacaktır.
Kolay gelsin.

 

İlgili bağlantılar üzerinden benzer android emulator hataları ve diğer android hataları ile ilgili görüşlere ulaşılabilinir.

http://stackoverflow.com/search?q=android+emulator

https://groups.google.com/forum/#!searchin/android-developers/android$20emulator

Sesi Yazıya Çevirme Speech to Text Android Dersleri

Android Uygulama Yapımı Sesi Yazıya Çevirme Dersleri
Speech to Text
Ufak bir kütüphane olması amacıyla hazırlanan bu android dersleri yazısında konuyla ilgili araştırmalar yaparken bulunan faydalı kaynaklar bir araya toplanmaya çalışılmıştır.

 

Türkçe kaynaklar
http://www.akilliyazilim.org/category/androiddersleri
https://gelecegiyazanlar.turkcell.com.tr/konu/android/egitim/301

Android Speech To Text API

Android Speech to Text Tutorial

Başka bir örnek

Android Speech Recognition – Example

Standart arayüz yerine özel dialog kutusu ile ses algılama uygulaması yapımı

Android Speech Recognition Without Dialog In A Custom Activity

Ses algılama özelliğinin durması sorunu/hatası ile ilgili görüşler
http://stackoverflow.com/questions/13670378/voice-recognition-stops-listening-after-a-few-seconds

Önemli bağlantılar
http://developer.android.com/reference/android/speech/package-summary.html

 

Diğer farklı ortamlar için ses tanıma, ses algılama sistemleri, yöntemleri.