android(2)-----线性布局 LinearLayout 滚动视图


一、屏幕显示相关

像素

相关概念:

  像素px:    可显示的最小单位

          英寸in

          毫米mm

          pt(磅,1/72英寸)

          dp:   与物理设备无关,只和屏幕尺寸有关

  sp: 用于设置字体大小

dp和px之间的联系取决于具体设备上的像素密(DisplayMetrics里的density参数),  表示每个dp的像素个数,当density=1.5时,表示两个dp值对应3个px值

颜色

组成:alpha +RGB

如八位编码:FFEEDDCC  ,FF为透明度

如何使用:

  代码中:1、setTextColor(0xff00ff00),Color对象含有系统自定义的颜色

                           2、 利用res/values/colors.xml    

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorPrimary">#6200EE</color>
    <color name="colorPrimaryDark">#3700B3</color>
    <color name="colorAccent">#03DAC5</color>
</resources>

      getResources().getColor(R.color.常量名)

          配置文件:android:textColor="#000000"。

屏幕分辨率

  DisplayMetrics对象,可以在代码中获取分辨率。

widthPixels:以px为单位计量的宽度值。
heightPixels:以px为单位计量的高度值。
density:像素密度,即一个dp单位包含多少个px单位。

二、基本视图view

控件和布局都是由View类直接或间接派生而来的

视图XML布局文件中常用的属性定义说明:

  id

         layout_width:指定该视图的宽度        layout_height:指定该视图的高度     layout_margin:指定该视图与周围视图之间的空白距离(包括上、下、左、右)

        minWidth:指定该视图的最小宽度。
  minHeight:指定该视图的最小高度。
  background:指定该视图的背景。

         layout_gravity:指定该视图与上级视图的对齐方式。

         visibility:指定该视图的可视类型。

三、布局与控件

Android中的视图分为两类,一类是布局,另一类是控件。

布局与控件的区别在于:

    布局本质上是个容器,里面还可以放其他视图(包括子布局和子控件);控件是一个单一的实体,已经是最后一级,下面不能再挂其他视图。

所有的布局视图都派生自,ViewGroup 视图。

    ViewGroup 有3个方法:(所有布局类视图 共同拥有的)

      addView: 往布局中添加一个视图

                           removeView:从布局中删除指定视图

                           removeALLViews: 删除该布局下的所有视图

四、线性布局 LinearLayout

LinearLayout内部视图的排列是有顺序的,水平或垂直。

继承了 View/ViewGroup类的所有属性和方法。

XML属性:

  orientation:指定线性布局的方向(horizontal、vertical)

  gravity: 指定布局内部视图与本线性布局的对齐方式。

     layout_weight:指定当前视图的宽或高占上级线性布局的权重。

五、滚动视图

垂直滚动的视图名: ScrollView

水平滚动的视图名: HorizontalScrollView

(1)垂直方向滚动时,layout_width要设置为match_parent,layout_height要设置为wrap_content。
(2)水平方向滚动时,layout_width要设置为wrap_content,layout_height要设置为match_parent。
(3)滚动视图节点下面必须且只能挂着一个子布局节点,否则会在运行时报错Caused by:java.lang.IllegalStateException:ScrollView can host only one direct child。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM