zoukankan      html  css  js  c++  java
  • 布局管理器

    布局管理器都是以ViewGroup为基类派生出来的; 使用布局管理器可以适配不同手机屏幕的分辨率,尺寸大小;

    布局管理器之间的继承关系 :

    在上面的UML图中可以看出, 绝对布局 帧布局 网格布局 相对布局 线性布局直接继承ViewGroup,表格布局继承的LinearLayout;


    父容器与本容器属性 :

    android_layout...属性是本容器的属性, 定义在这个布局管理器的LayoutParams内部类中, 每个布局管理器都有一个LayoutParams内部类.Android:... 是父容器用来控制子组件的属性.

    如android:layout_gravity 是控制组件本身的对齐方式

    android:gravity是控制本容器子组件的对齐方式;


    注意事项:

    各布局不要乱用各自的属性。比如把属于AbsoluteLayout布局的android:layout_x和android:layout_y用到LinearLayout布局或RelativeLayout布局,或者把RelativeLayout布局的 below,rightof等属性应用到其他布局中。这样做虽然不会报错,但是根本达不到我们需要的效果。

    1. 关于android:layout_width=”fill_parent”和android:layout_height=”wrap_content” ,这是对每个布局宽和高的设置。wrap_content可表示随着其中控件的不同而改变这个布局的宽度或高度,类似于自动设置宽和高,fill_parent使布局填充整个屏幕,另外还有一种match_parent,它本质上和 fill_parent 一样,并从API Level8开始替代fill_parent。


    布局填充器的三种写法:

    setContentView(R.layout.activity_main);

    等同于下面二句话:

    View view = View.inflate(this, R.layout.activity_main, null);

    setContentView(view);

     第一种:

    setContentView(R.layout.activity_main);

    LinearLayout ll = (LinearLayout) findViewById(R.id.ll_content);

    View.inflate(this,R.layout.item, ll); //将item布局添加到ll布局中

     
    第二种:

    LinearLayout ll = (LinearLayout) findViewById(R.id.ll_content);

    LayoutInflater factory = LayoutInflater.from(this);

    View view = factory.inflate(R.layout.item, ll);


    第三种:

    LinearLayout ll = (LinearLayout) findViewById(R.id.ll_content);

    LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    View view = inflater.inflate(R.layout.item, ll);

    setContentView(view);

  • 相关阅读:
    python3之微信文章爬虫
    selenium不提供修改请求headers、获取响应headers的功能
    dos/bat/cmd相关知识的三个层面
    python处理xml的常用包(lib.xml、ElementTree、lxml)
    python列表操作总结
    从哪些层面评价编程语言
    Windows环境下python多版本配置方案
    一个urllib2构建的html下载器的代理组件的实现方案
    python-selenium实现的简易下载器,并常见错误解决
    python环境配置selenium与IE、Chrome、Firefox、PhantomJS
  • 原文地址:https://www.cnblogs.com/loaderman/p/6430491.html
Copyright © 2011-2022 走看看