SORU
5 Ocak 2011, ÇARŞAMBA


Dönüştürme dp piksel

Yüksekliği ile benim uygulama oluşturulan ve 480 x 800 piksel genişliği olan Pantech aygıt piksel cinsinden verdim.

G1 bir cihaz için yükseklik ve genişlik dönüştürmek istiyorum. Dp dönüştürerek sorunu çözmek ve her iki cihaz için aynı çözüm sağlar diye düşündüm.

Daha kolay bir yolu var piksel dp dönüştürmek için var mı?Herhangi bir öneriniz var mı?

CEVAP
5 Mart 2012, PAZARTESİ


/**
 * This method converts dp unit to equivalent pixels, depending on device density. 
 * 
 * @param dp A value in dp (density independent pixels) unit. Which we need to convert into pixels
 * @param context Context to get resources and device specific display metrics
 * @return A float value to represent px equivalent to dp depending on device density
 */
public static float convertDpToPixel(float dp, Context context){
    Resources resources = context.getResources();
    DisplayMetrics metrics = resources.getDisplayMetrics();
    float px = dp * (metrics.densityDpi / 160f);
    return px;
}

/**
 * This method converts device specific pixels to density independent pixels.
 * 
 * @param px A value in px (pixels) unit. Which we need to convert into db
 * @param context Context to get resources and device specific display metrics
 * @return A float value to represent dp equivalent to px value
 */
public static float convertPixelsToDp(float px, Context context){
    Resources resources = context.getResources();
    DisplayMetrics metrics = resources.getDisplayMetrics();
    float dp = px / (metrics.densityDpi / 160f);
    return dp;
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • LivestrongWoman

    LivestrongWo

    1 Aralık 2011
  • ParryGripp

    ParryGripp

    12 AĞUSTOS 2006
  • TheDamnWreckless

    TheDamnWreck

    12 Temmuz 2010