怎么把xml文件用java写

主要是有一天老大跟我说你用java代码写布局,不用画,然后呢你有xml布局引用,当时听了没明白啥意思,后来还是写出来了,以下我就把我写的做一个分享,当然如果你们有什么好的意见,也希望你们能告诉我谢谢啦

因为之前老大让我写了一个MyDesignButton类来继承AbsoluteLayout,你们也可以继承view或者ViewGruop
//下面是代码,我写的是绝对布局,老大要求的,公司做车载的

public class MyCustomLayout extends MyDesignButton {

Context context;
private ImageView iv;
private TextView tv;
MyDesignButton Mylayout;

public MyCustomLayout(Context context, AttributeSet attrs) {
    super(context, attrs);

    AbsoluteLayout layout = new AbsoluteLayout(context);//先创建一个绝对布局

    AbsoluteLayout.LayoutParams lp = new AbsoluteLayout.LayoutParams(152, 182,0,0);//绝对布局的位置
    //new 我之前写的一个类,您们也可以new view 或者new viewgruop    
    Mylayout = new MyDesignButton(context, attrs);
    //最后把布局添加进去
    Mylayout.setLayoutParams(lp);
    this.addView(Mylayout);

    iv = new ImageView(context);
    tv = new TextView(context);
    AbsoluteLayout.LayoutParams lp1 = new AbsoluteLayout.LayoutParams(152,152, 0, 0);

    iv.setLayoutParams(lp1);
    Mylayout.addView(iv);
    iv.setImageResource(R.drawable.vehicle_img_101);

    AbsoluteLayout.LayoutParams lp2 = new AbsoluteLayout.LayoutParams(152,34, 0, 152);
    tv.setLayoutParams(lp2);
    Mylayout.addView(tv);

    tv.setTextSize(10);
    tv.setText("11222");
}


//这个几个方法
public void SetChangeText(String string){

    tv.setText(string);
}
public void SetChangeImage(int picture){
    iv.setImageResource(picture);
}
public void SetChangeTextSize(float size){
    tv.setTextSize(size);
}
public void SetTextCenter(){
    tv.setGravity(Gravity.CENTER);
}

你可能感兴趣的:(Andriod,动态添加view)