一、px与pt的区别
1. px: pixels(像素).不同设备显示效果相同
2. pt: point,是一个标准的长度单位, 1pt=1/72英寸,用于印刷业,非常简单易用;
二、dp与sp的作用
1. dip: device independent pixels(设备独立像素).不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持wVGA、HVGA和QVGA推荐使用这个,不依赖像素。
2. dp:就是dip
3. sp: scaled pixels(放大像素).主要用于字体显示best for textsize
三、LayoutParams
LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。
package com.example.mychicun;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
//代码中设置布局
LinearLayout linearlayout=new LinearLayout(this);
LinearLayout.LayoutParams layoutParams =new LinearLayout.LayoutParams
(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
linearlayout.setLayoutParams(layoutParams);
TextView textView = new TextView(this);
textView.setText("测试文本");
textView.setBackgroundColor(0xFF00FF00);
LinearLayout.LayoutParams textLayoutParams
=new LinearLayout.LayoutParams(400,400);
/* textView.setLayoutParams(textLayoutParams);
linearlayout.addView(textView);*/
linearlayout.addView(textView,textLayoutParams);
setContentView(linearlayout);
}
}