资 讯

网站建设、app开发、微信开发、网络营销知识汇聚

We provide professional and all-round information services to enterprises from all levels and angles

怎样安装开发一个app(Android版)
admin 2018-08-30

      padding:指定该视图边缘与内部内容之间的空白距离。另有paddingTop、paddingBottom、paddingI eft、paddingRight分别表示指定视图边缘与内容上边、下边、左边、右边的距离。

      visibility:指定该视图的可视类型。可视类型的取值说明见表2-3。

      表2-3可视类型的取值说明XML中的可视类型  Vew类中的可视类型  说明

visible  VISIBLE  可见。默认值

invisible  INVISIBLE  不可见。虽然看不到自还占着位置gone  GONE  消失。不仅看不到而且不占位置了

      下面是视图在代码中常用的设置方法说明。

      setI ayoutParams:设置该视图的布局参数。参数对象的构造函数可以设罟视图的宽度和高度。其中,LayoutParams.MATCH_ PARENT表示与上级视图一样宽,也可以是LayoutParams.WRAP CONTENT,表示与内部内容一样宽;参数对象的setMargins方法可以设置该视图与周围视图之间的空白距离。

      setMinimumWidth:设置该视图的最小宽度。setMinimumHeight:设置该视图的最小高度。setBackgroundColor:设置该视图的背景颜色。

      setBackgroundDrawable:设置该视图的背景图片。setBackgroundResource:设置该视图的背景资源id。

      setPadding:设置该视图边缘与内部内容之间的空白距离。setVisibility:设置该视图的可视类型。取直说明见表2-3。

      前面提到margin和padding两个概念,margin是指当前视图与周围视图的距离,padding是指当前视图与内部内容的距离。这么说可能有些抽象,所谓百闻不如一见,说得再多不如亲眼看看是怎么回事。我们来做一个实验,看看它们的显示效果有什么不同。下面是实验用的布局文件源代码,以背景色观察每个控件的




      国25.HPd典小巴间

      最后的界面效果如图2-5所示。布局文件处于中间层的LinearLayout,设置margin是2odp、padding是6odpo从效果图可以看到,中间层与上级视图之间的距离大约是中间层与下级视图之间距离的三分之一,正好是margin和padding两个数值的比例。如此便从实际情兄中印证了: layout margin指的是当前图层与外部图层的距离,而padding指的是 当前图层与内部图层的距离。

      视图组ViewGroup是一类特殊视图,所有布局视图类都是从它派生而来的。Android中的视图分为两类,一类是布局,另一类是控件。布局与控件的区别在于:布局本质上是个容器,里面还可以放其他视图(包括子布局和子控件);控件是一个单一的实体,已经是最后一级,下面不能再挂其他视图。打个比方,我们把

      根节点看作树干,根节点下的各级布局就是树枝,一根树枝可以连着其他小树枝,也可以直接连树叶;树叶只能依附在树枝上,不能再连树枝或其他树叶。

      ViewGroup有3个方法,这3个方法也是所有布局类视图共同拥有的。addView:往布局中添加一个视图。removeView:从布局中删除指定视图。

      removeAllViews:删除该布局下的所有视图。2.2.2线性布 局LinearLayout

      LinearLayout是最常用的布局,名字叫线性布局。顾名思义,LinearLayout下面的子视图就像用-根线串了起来,所以LinearI ayout内部视图的排列是有顺序的,要么从上到下依次垂直排列,要么从左到右依次水平排列。LinearLayout除了继承View/ViewGroup类的所有属性和方法外,还有其特有的XML属性,说明如下。

      orientation:指定线性布局的方向。horizontal表 示水平布局,vertical表示垂直布局。如果不指定该属性,就默认是horizontalo这真是出乎意料,因为大家感觉手机App理应从上往下垂直布局,所以这里要特别注意垂直布局一定要设置orientation,不然默认的水平布局不符合多数业务场县。




      gravity:指定布局内部視囹与本銭性布局的対弃方式。取値説明同layout. gravity。

      layout_ weight:指定当前視囹的寛戴高占上級銭性布局的叔重。込里要注意, layout. weight属性并非在当前LinearLayout帯点中没畳,而是在下級祝囹的帯点中設畳。男外,如果layout. weight指定的是当前祝囹在寛度上占的叔重,layout. width就要同吋設畳内odp;如果layout. weight指定的是当前視圏在高度上占的叔重, layout_ height就 要同吋没盟勺odpo

      下面是LinearLayout在代碼中増加的丙个方法。

      setOrientation:没盟銭性布局的方向。LinearLayoutHORIZONTAL表示水平布局, Linearl ayout.VERTICAL表示垂直布局。

      setGravity:没盟布局内部祝圏囹与本銭性布局的対卉方式。具体的取値悦明腕表2-2-

      接下来重点解絳layout, gravity和gravity的区別。 前面悦辻, layout. gravity指定垓視囹与上級視図的対卉方式,而gravity指定 布局内部視図与本布局的対抃方式。内方便理解,我何通辻一个具体例子演示丙紳属性的旻示效果。下面是演示用的XMIL布局文件,内部指定了多神対疥方式,其中左辺視囹的layout_ gravity

是bottom、gravity是left; 右辺視圏的layout. gravity是top 、gravity是right, 布局文件内容如下:


鲜花派客服 2018/8/30 15:33:40


2.2.3 滚动视图ScrollView

      手机屏幕的显示空间有限,常常需要上下滑动或左右滑动才能拉出其余页面内容,可惜Android的布局节点都不支持自行滚动,这时就要借助ScrollView滚动视图实现了。与线性布局类似,滚动视图也分为垂直方向和水平方向两类,其中垂直滚动的视图名是ScrolIView,水平滚动的视图名是HorizontalScrollViewo这两个滚动视图的使用并不复杂,主要注意以下3点:

      (1)垂直方向滚动时,layout. width要 设置为match_ parent, layout_ height要设置为wrap_ content 。

      (2)水平方向滚动时,layout_. width要 设置为wrap_ _content, layout. height要设置为match_ parent 。

      (3)滚动视图节点下面必须且只能挂着一个子布局节点,否则会在运行时报错Caused by: java.langIlegalStateException : ScrollView can host only one directchildo

      下面是滚动视图ScrollView和水平滚动视图HorizontalScrollView的XML用法示例:


鲜花派客服 2018/8/30 15:34:37

android:ayout height "match, parent"android:buckground"taf" P

android:layout width "400p”
android:lyout height "match parent"android:background-"#or >
ScrollView
android-layou width-*mach paren"androidtlayou height- wrap conent'>

androidlayout width-"match parent"androidlayout height="wrap content"androidorientation-"vertical">

android:layout widh-"match parent"android:layout heigh-400kdp"android:buckground-*40ofoor口

andoid:layout width "match parent"android:layout heigh-"40kdp"android:buckgound-*#ffa B 有时ScrolView的实际内容不够,又想让它充满屏幕,怎么办呢?如果把layout_ height 属性赋值为match_ parent, 那么结果还是不会充满,正确的做法是再增加一行ilViewport的属性设置,安卓app开发举例如下:
android:layout_ height="match_ parent"android:fllViewport="true"


 

  • 上一篇:上海app开发android手机应用开发
  • 下一篇:app开发四大组件之-Activity
  • © 2011-2018 www.keyrey.com 上海科睿网络科技有限公司 © 版权所有 沪ICP备12032097号-1
    友情链接 : 上海app开发 app开发公司 app制作 手机软件开发 手机软件开发公司 小程序开发 上海网站制作公司
    QQ在线咨询

    上海app开发QQ在线咨询 上海app开发QQ在线咨询
    电话咨询
    400-877-9280 app开发公司电话咨询
    即时在线咨询 手机软件开发即时在线咨询
    微信扫一扫
    添加app制作微信 上海网站制作公司微信
    科睿网络-互联网开发营销专家

    凡事有交代 件件有着落 事事有回应

    立即获取为您量身定制的开发营销方案

    咨询热线 400-877-9280