cari

Rumah  >  Soal Jawab  >  teks badan

android-ui - 设计师给的布局和字体尺寸单位为px,在写代码的时候要如何转换成Android用的dp和sp ?

问题如题描述,设计给的尺寸都是px的,而且也不告诉他们在什么尺寸和分辨率的屏幕上做的设计?作为程序员要如何转换单位?

我不是在问px与dp之间如何转换的问题。而是由设计师的px如何转换成写在xml里的dp的问题。

巴扎黑巴扎黑2890 hari yang lalu740

membalas semua(4)saya akan balas

  • 阿神

    阿神2017-04-17 18:01:24

    非战斗人员请远离, 现在开撕!

    Apabila anda menghadapi situasi seperti ini, anda hanya boleh memberitahu artis anda (kami tidak boleh memanggil mereka pereka di sini): Ini tidak boleh dilakukan!!!

    Setiap kali anda mereka bentuk UI Aplikasi, anda mesti mereka bentuk pada resolusi standard arus perdana Kemudian anda boleh mencari ketumpatan skrin yang sepadan, dan akhirnya anda boleh menukar px kepada dpi
    Jika anda menyimpang daripada prinsip ini adalah Anda bertindak seperti penyangak Pada akhirnya, pelaksanaan anda akan menjadi tidak realistik dan jauh daripada draf reka bentuk UI. Itu bukan urusan anda

    Rujukan:Metrik Peranti

    Kaedah pengiraan:Setelah mengetahui resolusi draf reka bentuk dan ketumpatan skrin yang biasanya sepadan dengan resolusi, kirakannya mengikut formula berikut:

    dpi = px / density

    p.s. Ketumpatan ialah nilai lajur Ketumpatan dalam Metrik Peranti

    p.p.s. Jangan bergaduh dengan artis anda selepas membaca jawapan berdarah panas ini Anda masih perlu membincangkannya dengan betul [ Penutup muka] [ Akui pengecut] 2333

    balas
    0
  • PHP中文网

    PHP中文网2017-04-17 18:01:24

    Pertama sekali, anda perlu tahu apakah saiz skrin dalam reka bentuk
    Ia biasanya 1080x1980 (? atau lain-lain), biasanya kepunyaan xxhdpi, iaitu, 1dp bersamaan dengan 3px
    Jika lebar skrin reka bentuk hanya 480 (atau kiri dan kanan), maka 1dp hendaklah 1px

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-17 18:01:24

    1dp ditakrifkan sebagai 1px apabila nilai ketumpatan skrin ialah 160ppi, iaitu pada mdpi, 1dp = 1px. Mengambil mdpi sebagai standard, nisbah nilai ketumpatan skrin ini ialah: ldpi: mdpi: hdpi: xhdpi: xxhdpi = 0.75: 1: 1.5: 2: 3; iaitu, pada ketumpatan xhdpi, 1dp=2px; kes hdpi, 1dp=1.5px. Analogi lain.

    1dp=(skrin ppi/160)px

    Pautan asal

    balas
    0
  • PHPz

    PHPz2017-04-17 18:01:24

    apung statik awam px2dp(Konteks konteks, apungan pxVal)

    {
        final float scale = context.getResources().getDisplayMetrics().density;
        return (pxVal / scale);
    }

    Kaedah penukaran: px ---> dp

    balas
    0
  • Batalbalas