android布局例子
1. android 如何动态布局自定义view,不用XML.
可以直接new View来得到View对象来实现代码布局。以下为示例代码:
1.绝对布局
AbsoluteLayout abslayout=new AbsoluteLayout (this);
setContentView(abslayout);
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);
2.相对布局
RelativeLayout relativeLayout = new RelativeLayout(this);
setContentView(relativeLayout);
AbsoluteLayout abslayout=new AbsoluteLayout (this);
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);
3.线性布局
LinearLayout ll = new LinearLayout(this);
EditText et = new EditText();
ll.addView(et);
//动态添加布局的方法1. LinearLayout ll = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main1,null); setContentView(ll); LinearLayout ll2 = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main2,ll); //这样 main2 作为 main1的子布局 加到了 main1的 根节点下
//动态添加布局的方法2 addView. LinearLayout ll = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main1,null); setContentView(ll); LinearLayout ll2 = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main2,null); ll.addView(ll2);
2. Android 界面排版
Android布局是应用界面开发的重要一环,在Android中,共有五种布局方式,分别是:FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局).
一、FrameLayout
这个布局可以看成是墙脚堆东西,有一个四方的矩形的左上角墙脚,我们放了第一个东西,要再放一个,那就在放在原来放的位置的上面,这样依次的放,会盖住原来的东西。这个布局比较简单,也只能放一点比较简单的东西。
二、LinearLayout
线性布局,这个东西,从外框上可以理解为一个div,他首先是一个一个从上往下罗列在屏幕上。每一个LinearLayout里面又可分为垂直布局(android:orientation="vertical")和水平布局(android:orientation="horizontal" )。当垂直布局时,每一行就只有一个元素,多个元素依次垂直往下;水平布局时,只有一行,每一个元素依次向右排列。
linearLayout中有一个重要的属性 android:layout_weight="1",这个weight在垂直布局时,代表行距;水平的时候代表列宽;weight值越大就越大。
三、AbsoluteLayout
绝对布局犹如div指定了absolute属性,用X,Y坐标来指定元素的位置android:layout_x="20px" android:layout_y="12px" 这种布局方式也比较简单,但是在垂直随便切换时,往往会出问题,而且多个元素的时候,计算比较麻烦。 AbsoluteLayout 可以让子元素指定准确的x/y坐标值,并显示在屏幕上。AbsoluteLayout 没有页边框,允许元素之间互相重叠(尽管不推荐)。他是绝对坐标,所以在实际中不提倡使用。
相对布局可以理解为某一个元素为参照物,来定位的布局方式。主要属性有:
相对于某一个元素
// 相对于给定ID控件
android:layout_above 将该控件的底部置于给定ID的控件之上;
android:layout_below 将该控件的底部置于给定ID的控件之下;
android:layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐;
android:layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘对齐;
android:layout_alignBaseline 将该控件的baseline与给定ID的baseline对齐;
android:layout_alignTop 将该控件的顶部边缘与给定ID的顶部边缘对齐;
android:layout_alignBottom 将该控件的底部边缘与给定ID的底部边缘对齐;
android:layout_alignLeft 将该控件的左边缘与给定ID的左边缘对齐;
android:layout_alignRight 将该控件的右边缘与给定ID的右边缘对齐;
// 相对于父组件
android:layout_alignParentTop 如果为true,将该控件的顶部与其父控件的顶部对齐;
android:layout_alignParentBottom 如果为true,将该控件的底部与其父控件的底部对齐;
android:layout_alignParentLeft 如果为true,将该控件的左部与其父控件的左部对齐;
android:layout_alignParentRight 如果为true,将该控件的右部与其父控件的右部对齐;
// 居中
android:layout_centerHorizontal 如果为true,将该控件的置于水平居中;
android:layout_centerVertical 如果为true,将该控件的置于垂直居中;
android:layout_centerInParent 如果为true,将该控件的置于父控件的中央;
// 指定移动像素
android:layout_marginTop 上偏移的值;
android:layout_marginBottom 下偏移的值;
android:layout_marginLeft 左偏移的值;
android:layout_marginRight 右偏移的值;
example:
android:layout_below = "@id/***"
android:layout_alignBaseline = "@id/***"
android:layout_alignParentTop = true
android:layout_marginLeft = “10px”
还可以指定边距等,具体详见API
五.TableLayout
表格布局类似Html里面的Table。每一个TableLayout里面有表格行TableRow,TableRow里面可以具体定义每一个元素,设定他的对齐方式 android:gravity="" 。
每一个布局都有自己适合的方式,另外,这五个布局元素可以相互嵌套应用,做出美观的界面。TableLayout 将子元素的位置分配到行或列中。一个TableLayout 由许多的TableRow 组成,每个TableRow 都会定义一个 row 。TableLayout 容器不会显示row 、cloumns 或cell 的边框线。每个 row 拥有0个或多个的cell ;和html中的table查不多少。在实际中也经常使用。
Android的Margin和Padding跟Html的是一样的。通俗的理解 Padding 为内边框,Margin 为外边框
对应的属性为
android:layout_marginBottom="25dip"
android:layout_marginLeft="10dip"
android:layout_marginTop="10dip"
android:layout_marginRight="10dip"
android:paddingLeft="1dip"
android:paddingTop="1dip"
android:paddingRight="1dip"
android:paddingBottom="1dip"
如果左右上下都是相同的设置则可以直接设置
android:layout_margin="10dip"
android:padding="5dip"
过去,程序员通常以像素为单位设计计算机用户界面。例如,定义一个宽度为300像素的表单字段,列之间的间距为5个像素,图标大小为16×16像素 等。这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面会显得很小。在有些情况下,用户界面可能会小到难以看清 内容。
与分辨率无关的度量单位可以解决这一问题。Android支持下列所有单位。
px(像素):屏幕上的点。
in(英寸):长度单位。
mm(毫米):长度单位。
pt(磅):1/72英寸。
dp(与密度无关的像素):一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp = 1px。
dip:与dp相同,多用于android/ophone示例中。
sp(与刻度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。
为了使用户界面能够在现在和将来的显示器类型上正常显示,建议大家始终使用sp作为文字大小的单位,将dip作为其他元素的单位。当然,也可以考虑使用矢量图形,而不是用位图.
dp是与密度无关,sp除了与密度无关外,还与scale无关。
如果屏幕密度为160,这时dp和sp和px是一样的。1dp=1sp=1px,但如果使用px作单位,如果屏幕大小不变(假设还是3.2寸),而屏幕密度变成了320。
那么原来TextView的宽度设成160px,在密度为320的3.2寸屏幕里看要比在密度为160的3.2寸屏幕上看短了一半。
但如果设置成160dp或160sp的话。系统会自动将width属性值设置成320px的。
也就是160 * 320 / 160。其中320 / 160可称为密度比例因子。也就是说,如果使用dp和sp,系统会根据屏幕密度的变化自动进行转换
3. android中常见的五种布局有什么特点
1,FrameLayout,特点:所有的View都会放在左上角,并且后添加进去的View会覆盖之前放进去的View。
2,LinearLayout,特点:在水平或者垂直方向上依次按照顺序来排列子元素,控件的排列顺序遵循其在布局文件中被写出的先后顺序。
3,RelativeLayout,特点:以某一个子元素为参照物,其余子元素均按照其相对位置来完成布局。
4,TableLayout,特点:每个TableLayout都是由一个或多个TableRow组成的,一个TableRow就代表TableLayout的一行。
5,AbsoluteLayout,表格布局类似Html里面的Table。每一个TableLayout里面有表格行TableRow,TableRow里面可以具体定义每一个元素,设定他的对齐方式 android:gravity="" 。
(3)android布局例子扩展阅读:
开放性:
在优势方面,Android平台首先就是其开放性,开发的平台允许任何移动终端厂商加入到Android联盟中来。显着的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。
开放性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。
丰富的硬件:
这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容,如同从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。
4. android 界面布局实现
1、最外面用线性布局,属性为垂直,margin TOP属性设置为10px,在这个布局包括了下面的2、3、4、5、6几个布局
2、日常选项为TextView,
3、时间用线性布局属性为水平,margin right属性设置为10px,同时添加背景图片属性,里面在放两个TextView分别是时间和2011-10-06 11:04,包含在时间的线性布局中
4、账户用线性布局属性为水平,margin right属性设置为10px,同时添加背景图片属性,里面在放两个TextView分别是账户和现金,包含在时间的账户的线性布局中
5、商家地点用线性布局属性为水平,margin right属性设置为10px,同时添加背景图片属性,里面在放两个TextView分别是商家地点和未指定,包含在商家/地点的线性布局中
6、备注用线性布局属性为水平,margin right属性设置为10px,同时添加背景图片属性,里面放一个TextView是备注
这样就可以做出来了
还不明白的话在给我留言吧~我把大概的代码写给你看~
5. Android入门计划<二> ---- 三大常用布局
android现在可以说是一共有六大布局,但是之前的几乎已经不用,有兴趣的可以自行网络,这里直说现在常用的三个布局,还有常用的属性。
顾名思义:线性布局 线性就是指的一条线,是个直的,在手机屏幕上,你要么横着,要么竖着,别给我拐弯。拐弯会挨打的。
emmmm,写一个小东西简单说一下吧。
先说一下通用宽高属性:
layout_width与layout_height
值:match_parent 你可以理解为全屏
值:wrap_content 填充内容,指的是其大小会根据内容的大小而定
值:fill_parent 用新版的同学发现它已经被弃用了,指的是填充,有兴趣可以自行左转了解更多。
好了开始吧:
orientation属性:vertical 垂直方向如图
orientation属性:horizontal 水平方向如图
扩展:LinearLayout分割线
divider:分割线资源
showDividers:显示方式
middle:控件之间
end最后
none 没有
beginning 开始
如果我们想实现这个布局,用RelativeLayout怎么做呢?
首先根布局是RelativeLayout
*我们什么都不做
我们会发现,布局上只能看到一个view,就是最后写的那个view。
这里意思是,我rl内部所有的子view都是想对于我rl本身内部的位置。
我们什么都不做会默认在左上角。
我们来介绍一个属性
android:layout_toRightOf ------ 意思为:在xxx的右边
效果如图
还是介绍一个属性:
android:layout_below ----- 意思是:在xxx的下面
效果如图段世枝:
再来介绍三个属性:
android:layout_centerHorizontal ---- 相对于父控件rl 水平居中
android:layout_alignParentLeft ---- 相对于父控件rl 最左侧
android:layout_alignParentRight ---- 相对于父控件rl 最右侧
效果如图:(布局很丑,不要介意)
我们有相对控件右边,下面,当然也有左边,上面。 有相对于父控件最左最右,也要有最上最下,水平居中自然还会有垂直居中,还有直接居中。
我们来分别结合看一下效果:
1、先看一下居中效果
垂直居中:android:layout_centerVertical="true"
直接居中:android:layout_centerInParent="true"
2、再来看一下相对上和左
android:layout_above: 相对于xx控件上方
android:layout_toLeftOf: 相对于xx控件左边
那么就会有人问了,这感觉有点不对啊,我是想在控件的左边,为啥它离这么远呢?返盯
这张截图,我是别有深意的,请自己看居中控件的握敏有条预览辅助线: 我们看到两个控件确实在居中控件的相对位置,可是并没有移动到居中控件的正上方和正左方。(后面正右方正下方同理)
我们知道,我们的控件可以相对于父控件垂直、水平和直接 居中。
虽然我们的居中控件居中了,但是所想依赖它的控件并没有,所以我们再来调整一下:
关键位置已经在图中用箭头标出。
cl的由于是谷歌推出的新布局,虽然现在已经不能叫新了,作者这边不单独出教程了,这里推荐一个外链:
约束布局ConstraintLayout看这一篇就够了
文章写的相当不错。学习时间可能较长, 还希望大家认真学习。
这节课就到这里。下课
6. Android的五大布局
1.RelativeLayout 相对布局
2. LinearLayout 线性布局
3. FrameLayout 帧布局
4.TableLayout 表格布局 (被GridView代替)
5.AbsoluteLayoutf 绝对布局(已经被谷歌废弃,几乎不会用到)
相对布局RelativeLayout允许子元素指定它们相对于其父元素或兄弟元素的位置,这是实际布局中最常用的布局方式之一。
特点:相对于其他空间的位置,和相对父元素的位置进行布局;
layout_centerHorizontal(相当于父节点是水平居中)
layout_centerVertical(相当于父节点是垂直居中)
layout_centerInParent(相当于父节点在正中间)
layout_above(在XX之上)
layout_below(在XX之下)
layout_toLeft(在XX的左边)
layout_toRight(在XX的右边)
layout_alignParentTop(和父节点的顶部对齐)
layout_alignParentBottom(和父节点的底部对齐)
layout_alignParentLeft(和父节点的左边对齐)
layout_alignParentRight(和父节点的右边对齐)
layout_alignTop(和XXX顶部对齐)
layout_alignBottom(和XXX底部对齐)
layout_alignLeft (和XXX左边对齐)
layout_alignRight(和XXX右边对齐)
线性布局LinearLayout是根据指定朝向orientation水平Horizontal或者垂直Vertical方向排列的布局,其最大的特点是可以给子控件按照权重weight属性分配空间.
常见案例:计算器
3. FrameLayout 帧布局
通俗的讲就是在屏幕上一层覆盖着一层的控件,在fragment中比较常用
<TextView
android:layout_width= "200px"
android:layout_height= "200px"
android:layout_gravity= "center"
android:background= "#00ff00"
android:gravity= "center" />
7. 请介绍下Android中常用的五种布局,分别的布局方式。谢谢!急
请介绍下Android中常用的五种布局,分别的布局方式。谢谢!急
LinearLayout,线性布局
RelativeLayout,相对布局
AbsoluteLayout,绝对布局
FrameLayout,帧布局
TableLayout,表格布局
java中常用的布局方式有哪几种
BorderLayout,
BoxLayout,
CardLayout,
DefaultMenuLayout,
FlowLayout,
GridBagLayout,
GridLayout,
GroupLayout
swing里常用的也有这些,至于每个具体的功能你自己查一下API就可以了。
1、Java初步
Java是由sun公司开发的一种新型的面向物件的程式设计语言,主要用于web页面的设计。
Java语言的发展颇具传奇性,它与Inter的的迅猛发展是分不开的。由于其发展迅速,有人将它比喻为Inter上的世界语。前面讲到在Inter上Web页面的设计采用的是HTML语言,使用者借助于Web浏览器(如Netscape,HotJava,IE等),可以访问到远端web服务器上静态的、具有超连结的Web页面。Java语言的出现改变了 Web页面的这种传统的静态模式,通过在Web页面中附加一些利用Java编写的App1et(称为小程式),可饥型以使Web页面更具多样蠢空性和变化性,这样使用者就能够访问到动态的,具有互动功能的web页面。
例如一些小的动画,实时更新的图表、声音等。总之,Web页面的设计主要采用HTML语言,利用Java则使其锦上添花。
Sun公司于1995年5月正式推出Java语言,由于其简单、高效、可移植性强等特点,一经推出,很快引起广大使用者和众多厂商的普遍关注,特别是Sum公司将其定位于Inter的应用开发上,使得Java得以迅速发展。在同期推出的还有被称为HotJava(热咖啡)的浏览器,Hotjava是一个完全由Java语言编写,基于Java典型应用的web浏览器,并且第一个支援Java Applet。HotJava充分展示了Java在全球Inter网上的强大威力,同时也为Java语言程式设计提供了一个理想的执行平台。
Java语言推出后,各大软体厂商相继宣布支援Java。首先是Netscape公司在其Web浏览器(Netscape Navigator2.0)中支援Java,不久,sun,SGI和Macromedia三家公司制定了基于Java的开放式多媒体标准。后来许多公司,如IBM,Microsoft,Orac1e等,都宣布支援Java。Netscape公司进一步与sun公司合作,推出了类似于Java的JavaScript语言。目前,Sun公司已成立了专门的Javasoft分部,负责管理Java语言的开发、维护工作(可从Http:Javasoft,站点了解详细资讯)。
对于Java这一名字,较为流行的说法是它来源于印度尼西亚的一个重要岛屿,该岛屿的中文译名为"爪哇",岛上盛产咖啡,于是sun公司的开发人员将这种新语言起名为Java,寓意是使其与热气腾腾的咖啡联络起来,将它奉献给全球的计算机使用者。
2、Java语言的特点
Java语言的流行除了因为它能够编制嵌入HTML档案中的Applet外,还在于Java语言本身的面向物件、简单、平台无关性、安全性、多执行绪等特点。Java语言的结构与编写方式,与c++语言类似,因此学习Java语言,不仅要了解Java语言独有的程式设计特点,同时还要有程式设计基础和面向物件的概念。 <BR>Java语言的主要特点如下:
(1)简单、高效
Java语言与C++类似,如果使用者了解C++和面向物件的概念,就可以很快编写出Java程式;此外,Java又不同于诸如C++语言提供的各种各样的方法,它只提供了基本的方法,这样就减少了程式设计的复杂性,例如去掉了标头档案、指标变数、结构、运算子过载、多重继承等复杂特性。Java语言虽然简单,却很高效,它可以用面向物件的方法来描述使用者的每一个动作。
(2)面向物件
Java语言是一种新的面向物件的程式设计语言,它除了几种基本的资料型别外,大都是类似c++中的物件和方法,程式程式码大多体现了类机制,以类的形式带肢瞎组织,由类来定义物件的各种行为。Java同样支援类继承,这样也减少了程式设计的复杂性。
(3)平台无关性 Java语言经编译后生成与计算机硬体结构无关的位元组程式码(Bytecode),这些位元组程式码被定义为不依赖任何硬体平台和作业系统。当Java程式在执行时,需要由一个解释程式对生成的位元组程式码解释执行。这体现了Java语言的与平台无关性,使得Java程式可以在任何平台上执行,如MS-DOS,Windows,Unix等,因此具有很强的移植性。
(4)互动式特性
Java是面向物件的网路程式语言,由于它支援TCP/IP协议,使得使用者可以通过浏览器访问到Inter上的各种动态物件。并且在网路上使用者可以互动式地进行各种动作,而多执行绪技术的引入使得这种互动式操作更为容易。
(5)多执行绪机制
Java语言支援多执行绪机制,多执行绪机制使得Java程式能够并行处理多项任务。Java程式可以设计成具有多个执行绪,例如让一个执行绪负责资料的检索、查寻,另一个执行绪与使用者进行互动,这样,两个执行绪得以并行执行。多执行绪机制可以很容易地实现网路上的互动式操作。
(6)动态的记忆体管理机制
Java语言采用了自动垃圾回收机制进行记忆体的管理。在C++语言中,程式设计师在编写程式时要仔细地处理记忆体的使用,例如当某个记忆体快使用完毕时,要及时释放,以供其它程式使用,一旦记忆体管理不当,就有可能造成记忆体空间浪费或程式执行故障。 <BR>在Java系统中包括了一个自动垃圾回收程式,它可以自动、安全地回收不再使用的记忆体块,这样,程式设计师在程式设计时就无需担心记忆体的管理问题,从而使Java程式的编写变得简单,同时也减少了记忆体管理方面出错的可能性。
(7)安全性
在类似Inter的这种分散式网路环境中,安全性是个不容忽视的问题。Java语言在安全性方面引入了实时记忆体分配及布局来防止程式设计师直接修改实体记忆体布局;通过位元组程式码验证器对位元组程式码的检验,以防止网路病毒及其它非法程式码侵入。此外,Java语言还采用了许多面向物件的异常处理机制,负责对一些异常事件进行处理,如记忆体空间不够,程式异常中止等的处理。 <BR>以上介绍了Java语言的一些主要特点,除此之外它还具有动态性、类库丰富、高效能等特点,这些都使得Java语言在各个方面得以成熟和完善,成为大众日益青睐的程式设计语言之一。
3、Java应用程式和Java AppletJava语言是一种面向物件的程式设计语言,利用Java语言,能够编写出两大类程式:Java应用程式(Application)和Java App1et(小程式):
Java应用程式是由Java语言编写,在经过编译和解释后,可以独立执行在MS-DOS,UNIX等操作平台上。Java应用程式一般以命令列方式执行。
Java Applet是不能独立执行的,App1et必须嵌入到HTML档案中,并且需要启动浏览器才能执行。这样,指定的Applet会自动下载到使用者的浏览器中执行,从而产生一些特殊的页面效果,如动画、声音、图表、影象等。通过在Web页面中嵌入Applet,可以使Web页面与使用者之间进行动态互动,例如接收使用者的输入,然后根据使用者的需要产生不同的响应。
就Java Applet而言,它是嵌入到HTML档案中的,HTML档案呈现的内容大多为文字、图片、表格、声音等,但这些内容一般都是静态的、二维的。但当HTML档案中嵌有 Applet后,整个页面会呈现出多样性和变化性,例如互动功能、图表等。在运用方面Java语言和HTML语言的区别在于:
(1)HTML语言属于一种简单的标记语言,一般使用者均可在数小时内学会如何编写HTML档案。而Java语言的结构和编写方法更类似于c++,所以学习Java语言要有程式设计的基础和面向物件的概念。
(2)Web页面的编写主要采用HTML语言,但若想使页面更具变化性、多样性、互动性,可采用Java语言来达到这种效果,起到锦上添花的作用。
4、在HTML档案中嵌入Applet</FONT> <BR>Applet是Java在Inter的中的一个重要应用,同时它的出现也促使了Java成为日益流行的程式设计语言。Applet是指由Java语言编写的,被嵌入到Web页面中,并通过浏览器执行以产生特殊页面效果的小程式。嵌入了Applet的Web页面看上去会更加丰富多彩,具有动态互动能力。
在Inter上拥有大量的App1et,这些Applet大都是由Sun等公司的Java开发人员设计出来的,对于广大使用者,特别是初学者,可以将这些App1et下载到自己的计算机中,井通过将这些下载下来的App1et嵌入到自己的Web页面中来,获得自己具有相同效果的Web页面,以丰富自己的页面内容。
简述Android常用的布局方式有哪几种
Android的常见布局方法:线性布局、表格布局、相对布局、帧布局和巢状布局;
新建的android应用程式预设的布局方式是什么布局方式,该布局中
好的,纠结了几天了,换了各种版本的eclipse,那什么版本以下预设的是线性布局的呢 检视原帖>>
android中有那6种布局方式
线性布局LinearLayout 表格布局TableLayout 帧布局Framelayout 相对布局RelativeLayout 绝对布局AbsoluteLayout
android4.0版本后新增的GridLayout
在网页设计中,css+div的布局方式,比table的布局方式,带来哪些优点
你在网络搜索 “css+div的布局方式,比table的布局方式” 就会有很多关于这个问题答案,你可以看看,虽然都有优缺点,但是建议还是改用div+css吧,table已经过时了
:codesky./article/201008/139693.
希望可以帮到你
KIKC采用的怎样的布局方式
KIKC自2013年创立以来,在几年内已经扩张600多个店铺,预计将在2018年实现1000个店铺的全面布局,其发展速度堪称业界奇迹。
HTML中怎样的布局方式称为响应式布局?
借用网络一句话:响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够相容多个终端——而不是为每个终端做一个特定的版本。这个概念是为解决移动网际网路浏览而诞生的。
响应式布局就是可以,适应多种装置的网页,比如电脑端和移动端 可以共用同一套CSS。不需要为单独的装置而开发相应程式
的布局方式有哪些
浮动布局,定位布局以及响应式布局,这三种布局是最基本最常见的,此外比较特殊的是弹性布局,弹性布局相对使用较少,需要根据专案的具体情况而定。
在网站开发当中,通常是需要结合多种布局去实现网页布局的。如果是在学习网页布局的相关知识,可以弄本 HTML5布局之路 ,来辅助自己的学习
8. Android如何实现类似下面的布局。
你的问题应该是要动态生成空间吧。
下面的答案可以参考下。
首先要却这个界面的布局,是absolutelayout,relativelayout还是其他,然后就可以再里面添加控件了:
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);
}