• android 中动态创建控件


    public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     //确定界面的布局
     AbsoluteLayout abslayout=new AbsoluteLayout (this);
     setContentView(abslayout);
     //创建一个button按钮
     Button btn1 = new Button(this);
     btn1.setText(”this is a button”);
     btn1.setId(1);
     //确定这个控件的大小和位置
     AbsoluteLayout.LayoutParams lp1 =
     new AbsoluteLayout.LayoutParams(
     ViewGroup.LayoutParams.WRAP_CONTENT,
     ViewGroup.LayoutParams.WRAP_CONTENT,
     0,100);
     abslayout.addView(btn1, lp1 );

    }

    一个界面可以布置一个布局,可以多个布局一起设计

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //设置界面的布局
        RelativeLayout relativeLayout = new RelativeLayout(this);
        setContentView(relativeLayout);

        //添加一个AbsoluteLayout子布局,并给这个布局添加一个button
        AbsoluteLayout abslayout=new AbsoluteLayout (this);
        abslayout.setId(11);
        Button btn1 = new Button(this);
        btn1.setText(”this is a abslayout button”);
        btn1.setId(1);
        AbsoluteLayout.LayoutParams lp0 = new AbsoluteLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
        ViewGroup.LayoutParams.WRAP_CONTENT,100,0);
        abslayout.addView(btn1, lp0 );
        //将这个子布局添加到主布局中
        RelativeLayout.LayoutParams lp1 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        lp1.addRule(RelativeLayout.ALIGN_PARENT_TOP);
        lp1.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
        relativeLayout.addView(abslayout ,lp1);

        //再添加一个子布局
        RelativeLayout relativeLayout1 = new RelativeLayout(this);
        Button btn2 = new Button(this);
        btn2.setText(”this is a relativeLayout1 button”);
        btn2.setId(2);
        RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        lp2.addRule(RelativeLayout.ALIGN_PARENT_TOP);
        lp2.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
        relativeLayout1.addView(btn2 ,lp2);

        //将这个布局添加到主布局中
        RelativeLayout.LayoutParams lp11 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        lp11.addRule(RelativeLayout.BELOW ,11);
        relativeLayout.addView(relativeLayout1 ,lp11);
    }
  • 相关阅读:
    mysql基本命令(转)
    查找大文件
    vim/vi 复制,删除,粘贴,查找,替换
    redhat 6用yum方式安装nginx
    解决yum安装时 Cannot retrieve repository metadata (repomd.xml) for repository
    RHEL6解决无法使用YUM源问题(转)
    Linux 信号概念
    Linux 进程通信(共享内存区)
    Linux 进程通信(有名管道)
    Linux 进程通信(无名管道)
  • 原文地址:https://www.cnblogs.com/Don/p/2554711.html
Copyright © 2020-2023  润新知