代碼實現px與dip轉換

 
Resources resources = getResources();

float fPx = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 300, resources.getDisplayMetrics());

// 同理 px轉dip:
// float fDip = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, 300, resources.getDisplayMetrics());
// int iDip = Math.round(fDip);

int iPx = Math.round(fPx);

EditText editText = new EditText(this);
editText.setWidth(iPx);
editText.setHeight(LayoutParams.WRAP_CONTENT);

// 或者
// LayoutParams layoutParams = new LayoutParams(iPx, LayoutParams.WRAP_CONTENT);
// editText .setLayoutParams(layoutParams);

注:有時直接使用setWidth等不起作用,可以使用LayoutParams 設置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章