Does setWidth(int pixels) use dip or px?

前端 未结 6 1397
执念已碎
执念已碎 2020-11-28 17:58

Does setWidth(int pixels) use device independent pixel or physical pixel as unit? For example, does setWidth(100) set the a view\'s width to 100 dips or 100 pxs?

Tha

6条回答
  •  陌清茗
    陌清茗 (楼主)
    2020-11-28 18:32

    It uses pixels, but I'm sure you're wondering how to use dips instead. The answer is in TypedValue.applyDimension(). Here's an example of how to convert dips to px in code:

    // Converts 14 dip into its equivalent px
    Resources r = getResources();
    int px = Math.round(TypedValue.applyDimension(
        TypedValue.COMPLEX_UNIT_DIP, 14,r.getDisplayMetrics()));
    

提交回复
热议问题