Android开发TableLayout属性介绍

合集下载

Android布局之表格布局TableLayout详解

Android布局之表格布局TableLayout详解

Android布局之表格布局TableLayout详解本⽂实例为⼤家分享了Android表格布局TableLayout的具体代码,供⼤家参考,具体内容如下1.TableLayoutTableLayout表格布局模型以⾏列的形式管理⼦控件,每⼀⾏为⼀个TableRow的对象,当然也可以使⼀个View的对象2.TableLayout的属性(全局属性)android:collapseColumns=”1,2”隐藏从0开始的索引列,列之间必须⽤逗号隔开1,2android:shrinkColumns=”1,2”收缩从0开始的索引列,当可收缩的列太宽(内容太多时)不会被挤出屏幕,列之间⽤逗号隔开1,2,你可以通过”*”代替收缩所有列,注意⼀列能同时表⽰收缩和拉伸android:stretchColumns=”1,2”拉伸从0开始的索引列,以填满剩下的多余空⽩空间,列之间必须⽤逗号隔开,1,2,你可以通过”*”代替收缩所有列,注意⼀列能同时表⽰收缩和拉伸3.TableLayout的局部属性(内部控件所⽤属性)android:layout_column=”1” 该控件显⽰在第1列android:layout_span=”2” 该控件占据两列<?xml version="1.0" encoding="utf-8"?><TableLayout xmlns:android="/apk/res/android"android:layout_width="match_parent" android:layout_height="match_parent"android:collapseColumns="0"android:shrinkColumns="4"><TableRowandroid:id="@+id/tablerow1"android:layout_width="wrap_content"android:layout_height="wrap_content" ><Buttonandroid:id="@+id/button4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button1" /><Buttonandroid:id="@+id/button5"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button2" /><Buttonandroid:id="@+id/button6"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button3" /><Buttonandroid:id="@+id/button7"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button4" /><Buttonandroid:id="@+id/button8"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button555555555555555555555555" /></TableRow></TableLayout><?xml version="1.0" encoding="utf-8"?><TableLayout xmlns:android="/apk/res/android" android:layout_width="match_parent"android:layout_height="match_parent"android:stretchColumns="*"><TableRowandroid:id="@+id/tablerow1"android:layout_width="match_parent"android:layout_height="match_parent"><Buttonandroid:id="@+id/button4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button1" /><Buttonandroid:id="@+id/button5"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button2" /><Buttonandroid:id="@+id/button6"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Button3" /></TableRow></TableLayout>以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

Android组件---四大布局的属性详解

Android组件---四大布局的属性详解

Android组件---四⼤布局的属性详解【声明】欢迎转载,但请保留⽂章原始出处→_→Android常见布局有下⾯⼏种:LinearLayout:线性布局。

所有的控件都是串在⼀条线上的。

RelativeLayout:相对布局。

所有的控件的位置,都是相对于⽗控件的。

FrameLayout:帧布局。

FrameLayout布局中的控件都是⼀层⼀层的。

帧布局每次添加的控件都显⽰在最上⾯,最后显⽰在界⾯上的是最后添加的⼀个控件。

TableLayout:表格布局。

表格布局可以实现的.⼀般可以使⽤线性布局实现。

AbsoluteLayout:绝对布局。

已经是废弃的状态,很少⽤了。

orientation:属性是指定线性布局的排列⽅向。

horizontal ⽔平。

线性布局默认的朝向是⽔平的。

vertical 垂直例如:android:orientation="vertical"gravity:指定当前控件⾥⾯的内容容显⽰位置。

(四⼤layout中均可使⽤)left 左边right 右边top 上边bottom 底边例如:android:gravity="center"gravity中的属性可以组合使⽤。

例如:android:gravity="bottom|right"layout_gravity:指定当前控件在⽗元素的位置。

(只在 LinearLayout 和 FrameLayout 中有效)left 左边right 右边top 上边bottom 底边centercenter_horizontalcenter_vertical例如:android:layout_gravity="center"另外,需要提⽰的是,对于 LinearLayout :当 android:orientation="vertical" 时,只有⽔平⽅向的设置才起作⽤,垂直⽅向的设置不起作⽤。

Android布局属性大全

Android布局属性大全

Android布局属性大全布局:AbsoluteLayout(绝对布局):xmlns:android="/apk/res/android"style="@..."android:clipChildren="true|false"android:clipToPadding="true|false"android:layoutAnimation="@---"android:animationCache="true|false"android:persistentDrawingCache="none|animation|scrolling|all":持续高速缓存绘图android:alwaysDrawnWithCache="true|false"android:andStatesFromChildre="true|false"android:descendantFocusability="beforeDescendants|afterDescendants|bl ocksDescendants":后裔可聚焦android:id="@+id/absoluteLayout"android:tag="@---"android:android:scrollX="---"android:android:scrollY="---"android:background="@---"android:padding="----"android:paddingLeft="----"android:paddingTop="----"android:paddingRight="----"android:paddingBotton="---"android:focusable="true|false"android:focusableInTouchMode="true|false"android:visibility="visible|invisible|gone"android:fitsSystemWindows="true|false":适合系统窗口android:scrollbars="none|horizontal|vertical"android:scrollbarStyle="insideOverlay(内覆盖)|insideInset(内插图)|outsideOverlay(外覆盖)|outsideInset(外插图)"android:isScrollContainer="true|false":是一个滚动集合android:fadeScrollbars="true|false":褪色的滚动条android:scrollbarFadeDuration="---":卷轴淡出android:scrollDefaultDelayBeforeFade="---":滚动前默认延迟android:scrollbarSize="---"android:scrollbarThumbHorizontal="@----":拇指水平滚动条android:scrollbarThumbVertical="@----":拇指垂直滚动条android:scrollbarTrackVertical="@---":垂直滚动条轨道android:scrollbarTrackHorizontal="@---":水平滚动条轨道android:scrollbarAlwaysDrawHorizontalTrack="true|false":水平滚动条总是吸引轨道android:scrollbarAlwaysDrawVerticalTrack="true|false":垂直滚动条总是吸引轨道android:fadingEdge="none|horizontal|vertical":衰落的边缘android:fadingEdgeLength="---":边长衰落android:nextFocusLeft="----":下左焦点android:nextFocusUp="---":下一个重点注册android:nextFocusRight="---":正确的下一个重点android:nextFocusDown="---":下一个焦点下移android:clickable="true|false":点击android:longClickable="true|false"android:saveEnabled="true|false":启用保存android:drawingCacheQuality="auto|low|hight":绘图缓存质量android:keepScreenOn="true|false":保持屏幕android:duplicateParentState="true|false":重复父状态android:minHeight="---":android:minWidth="----":android:soundEffectEnabled="true|false":音效启用android:hapticFeedbackEnable="true|false":触觉反馈启用android:contentDescription="@---":内容概述android:onClick="@---":android:layout_gravity="top|bottom|right|left|center_vertical|center_ horizontal|fill_vertical|fill_horizontal|center|fill|clip_vertical|cl ip_horizontal":重力android:layout_width="fill_parent|match_parent|wrap_content" android:Llayout_height="fill_parent|match)parent_wrap_content" android:layout_margin="":android:layout_marginLeft=""android:layout_marginTop=""android:layout_marginRight=""android:layout_marginBottom=""DialerFilter(拨号器过滤器):ExpandableListView(可扩展的列表视图):FrameLayout(针布局):GridView(网格视图):HorizontalScrollView(水平滚动查看):ImageSwither(图像切换):LinearLayout(线性布局):ListView(列表视图):MediaController(媒体控制器):RadioGroup(单选按钮组):RelativeLayout(相对布局):ScrollView(滚动查看):SlidingDrawer(滑动抽屉):TabHost(标签主机):TabWidget(标签控件):TableLayout(表格布局):TableRow(表行):TextSwitcher(文字切换):ViewAnimator(查看动画):ViewFlipper(参看弗利珀):ViewSwitcher(查看切换):--------------------------------------------------- GestureOverlayView(手势覆盖查看):SurfaceView(表现观):View(参看):ViewStub(查看存根):WebView(WEB视图):AnalogClock(模拟时钟):AutoCompleteTextView(自动完成文本视图):Button(按钮):CheckBox(复选框):CheckedTextView(检查的文字查看):Chronometer(时计):DatePicker(日期选择器):DigitalClock(数字时钟):EditText(编辑文字):Gallery(画廊):ImageButton(图像按钮):ImageView(图像查看):MultiAutoCompleteTextView(多自动完成文本查看): ProgressBar(进度):QuickContactBadge(快速联系徽章):Radio Button(单选按钮):RatingBar(评分酒吧):SeekBar(搜索栏:即拖拉进度条):Spinner(微调):TextView(文本视图):TimePicker(时间选择器):ToggleButton(切换按钮):TwoLineListItem(两线列表项):VideoView(视频查看):ZoomButton(变焦按钮):ZoomControls(缩放控制):Include(包括):-------------------------------<merge></merge>(合并):xmlns:android="/apk/res/android"android:layout_gravity="top|bottom|left|right|center_vertical|fill_ve rtical|center_horizontal|fill_horizontal|center|fill|clip_vertical|cl ip_horizontal"android:layout_width="fill_parent|match_parent|wrap_content" android:layout_height="fill_parent|match_parent|wrap_content" android:layout_margin=""android:layout_marginLef=""android:layout_marginTop=""android:layout_marginRight=""android:layout_marginBottom=""第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中android:layout_centerVertical 垂直居中android:layout_centerInparent 相对于父元素完全居中android:layout_alignParentBottom 贴紧父元素的下边缘android:layout_alignParentLeft 贴紧父元素的左边缘android:layout_alignParentRight 贴紧父元素的右边缘android:layout_alignParentTop 贴紧父元素的上边缘android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物第二类:属性值必须为id的引用名“@id/id-name”android:layout_below 在某元素的下方android:layout_above 在某元素的的上方android:layout_toLeftOf 在某元素的左边android:layout_toRightOf 在某元素的右边android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐第三类:属性值为具体的像素值,如30dip,40pxandroid:layout_marginBottom 离某元素底边缘的距离android:layout_marginLeft 离某元素左边缘的距离android:layout_marginRight 离某元素右边缘的距离android:layout_marginTop 离某元素上边缘的距离EditText的android:hint 设置EditText为空时输入框内的提示信息。

android学习——TableLayout表格布局

android学习——TableLayout表格布局

android学习——TableLayout表格布局 TableLayout表格布局 TableLayout是指将⼦元素的位置分配到⾏或列中。

Android的⼀个TableLayout有许多TableRow组成,每⼀个TableRow都会定义⼀个Row。

TableLayout容器不会显⽰Row,Column,及Cell的边框线,每个Row拥有0个或多个Cell,每个Cell拥有⼀个View对象。

在使⽤tablelayout时,应注意每⼀个cell的宽度。

我们下⾯通过XML布局和Java代码布局两种⽅式分别举例:⼀、XML⽅式布局 1、创建⼀个空⽩Activity 2、打开“res/layout/activity_main.xml”⽂件,修改成以下代码。

(1)第①部分 <?xml version="1.0" encoding="utf-8" ?>,每个XML⽂档都由XML序⾔开始,在前⾯的代码中的第⼀⾏便是XML序⾔,<?xml version="1.0">。

这⾏代码表⽰按照1.0版本的XML规则进⾏解析。

encoding = "utf-8"表⽰此xml⽂件采⽤utf-8的编码格式。

编码格式也可以是GB2312。

(2)第②部分 <LinearLayout …… 表⽰采⽤表格布局管理器。

(3)第③部分 android:layout_width="match_parent" android:layout_height="match_parent"表⽰布局管理器宽度和⾼充将填充整个屏幕宽度和⾼度。

(4)第④部分 android:stretchColumns="1"表⽰表格布局管理器中第2列内组件可以扩充到的有可⽤空间。

3、插⼊1⾏TableRow、1个⽂本TextView、1个TextEdit。

[Android开发学习24]界面布局之表格布局TableLayout+TableRow

[Android开发学习24]界面布局之表格布局TableLayout+TableRow
[Android开发学习24]界面布局之表格布局TableLayout+TableRow 一、基础知识:
TableLayout置底,TableRow在TableLayout的上面,而Button、TextView等控件就在TableRow之上, 另外,TableLayout之上也可以单独放控件。TableLayout是一个使用复杂的布局,最简单的用法就仅 仅是拖拉控件做出个界面,但实际上,会经常在代码里使用TableLayout,例如做出表格的效果。

android:collapseColumns:以第0行为序,隐藏指定的列 android:shrinkColumns:以第0行为序,自动延伸指定的列填充可用部分 android:stretchColumns:以第0行为序,尽量把指定的列填充空白部分
二、方案一代码展示: 方案一采用xml布局,在代码中除了显示layout之外,未作任何布局相关的操作。 1."Acticity_06\src\yan\acticity_06\MainActivity.java" [java] package yan.activity_06;A import android.os.Bundle;A import android.app.Activity;A public class MainActivity extends Activity {A AAAAAAA AAA @OverrideAAA AAA public void onCreate(Bundle savedInstanceState) {AAA AAAAAAA super.onCreate(savedInstanceState);AAA AAAAAAA setContentView(yout.activity_main);AAA AAA }A }A pa

TabLayout基本属性全解

TabLayout基本属性全解

TabLayout基本属性全解前⾔之前讲过⼀篇TabLayout实现顶部导航的⽂章,这篇⽂章,来详细介绍下TabLayout的⼀些基本使⽤,让⼤家以后更加⽅便的使⽤。

这篇⽂章涉及的内容有:1. 控件库的导⼊2. TabLayout导航UI的快速实现3. TabLayout均分显⽰的问题4. 和ViewPager的联动5. 加⼊Padding6. Tab的宽度限制7. Tab的“Margin”8. 设置TabLayout选中和没选中时字体颜⾊9. 改变指⽰器下标的颜⾊10. 改变整个TabLayout的颜⾊11. 改变TabLayout内部字体⼤⼩12. 改变指⽰器下标的⾼度13. 添加图标14. 默认选中某项15. 监听事件16. TabLayout点击事件17. 项⽬截图及效果图⼀.控件库的导⼊TabLayout属于android的Design库中的控件,所以需要在使⽤之前在项⽬的app对应的buildle.gradle中导⼊该库://TabLayoutimplementation 'com.android.support:design:27.1.1'implementation 'com.android.support:support-v4:27.1.1'⼆.TabLayout导航UI的快速实现TabLayout导航ui的实现有两种⽅式,xml的实现和代码的实现。

1.1 xml实现TabLayout导航栏直接在TabLayout内部加⼊TabItem即可,<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="/apk/res/android"xmlns:app="/apk/res-auto"xmlns:tools="/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.android.testdemo.main.MainActivity"><android.support.design.widget.TabLayoutandroid:id="@+id/tablayout"android:layout_width="0dp"android:layout_height="wrap_content"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"><android.support.design.widget.TabItemandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab1"/><android.support.design.widget.TabItemandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab2"/><android.support.design.widget.TabItemandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab3"/><android.support.design.widget.TabItemandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab4"/></android.support.design.widget.TabLayout></android.support.constraint.ConstraintLayout>1.2 代码实现TabLayout导航栏先声明⼀个导航代码实现如下:@BindView(R.id.tablayout)TabLayout mTabLayout;private String mTitles[] = {"上海", "头条推荐", "⽣活", "娱乐⼋卦", "体育","段⼦", "美⾷", "电影", "科技", "搞笑","社会", "财经", "时尚", "汽车", "军事","⼩说", "育⼉", "职场", "萌宠", "游戏","健康", "动漫", "互联⽹"};//TabLayout的基本使⽤for(int i=0;i<4;i++){TabLayout.Tab tab=mTabLayout.newTab();tab.setTag(i);tab.setText(mTitles[i]);mTabLayout.addTab(tab);}这两种⽅法的区别是xml添加的只能是固定的⼏个item,若item的个数超过⼀屏宽度则不能使⽤这种⽅式布局,⽽代码布局则能实现item的个数超过⼀屏宽度的布局。

安卓学习之--排版TableLayout表格布局

安卓学习之--排版TableLayout表格布局

安卓学习之--排版TableLayout表格布局表格布局包含⼀系列的 TableRow对象,⽤于定义⾏(实际上你也可以使⽤其它⼦对象,将在后⾯进⾏解释)。

表格布局不为它的⾏、列和单元格显⽰表格线。

每个⾏可以包含0个以上(包括0)的单元格;每个单元格可以设置⼀个View对象.与⾏包含很多单元格⼀样,表格包含很多列。

表格的单元格可以为空.单元格可以象 HTML 那样跨列。

列的宽度由该列所有⾏中最宽的⼀个单元格决定.不过表格布局可以通过 setColumnShrinkable() ⽅法或者 setColumnStretchable() ⽅法来标记某些列可以收缩或可以拉伸. 如果标记为可以收缩,列宽可以收缩以使表格适合容器的⼤⼩。

如果标记为可以拉伸,列宽可以拉伸以占⽤多余的空间。

表格的总宽度由其⽗容器决定. 记住列可以同时具有可拉伸和可收缩标记是很重要的。

在列可以调整其宽度以占⽤可⽤空间,但不能超过限度时是很有⽤的.最后,你可以通过调⽤setColumnCollapsed() ⽅法来隐藏列。

表格布局的⼦对象不能指定 layout_width 属性.宽度永远是 MATCH_PARENT。

不过⼦对象可以定义 layout_height 属性;其默认值是WRAP_CONTENT. 如果⼦对象是 TableRow,其⾼度永远是 WRAP_CONTENT。

下⾯以⼀个实际例⼦展⽰如何设计界⾯....xml⽂件<LinearLayout xmlns:android="/apk/res/android"xmlns:tools="/tools"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"tools:context=".TwoHouseTansActivity" ><TableLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:gravity="left"><TableRowandroid:id="@+id/tableRow1"android:layout_width="wrap_content"android:layout_height="wrap_content" ><TextViewandroid:id="@+id/tvprice"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="价格"/><EditTextandroid:id="@+id/etprice"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textColor="#606060"android:textSize="16px"android:width="90dp" ></EditText><TextViewandroid:id="@+id/tvbuildarea"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="建筑⾯积" /><EditTextandroid:id="@+id/etbuildarea"android:layout_width="70dp"android:layout_height="wrap_content"android:width="85dp"/></TableRow><TableRowandroid:id="@+id/tableRow2"android:layout_width="wrap_content"android:layout_height="wrap_content" ><TextViewandroid:id="@+id/tvmf"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="买⽅ "/><TextViewandroid:id="@+id/tvmfd"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="90dp"android:text=""/><TextViewandroid:id="@+id/tvmf"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="卖⽅" /></TableRow><TableRow><TextViewandroid:id="@+id/tvqs"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="契税 "/><EditTextandroid:id="@+id/etqs"android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:width="80dp"/><TextViewandroid:id="@+id/tvyes"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="营业帨" /><EditTextandroid:id="@+id/etyes"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="60dp" /></TableRow><TableRow><TextViewandroid:id="@+id/tvmjyyhs"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="印花税"/><EditTextandroid:id="@+id/etmjyyhs"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="90dp"/><TextViewandroid:id="@+id/tvmijyyhs"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="印花税" /><EditTextandroid:id="@+id/etmijyyhs"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="60dp" /></TableRow><TableRow><TextViewandroid:id="@+id/tvmjyfws"android:layout_width="wrap_content" android:layout_height="wrap_content"android:text="交易服务税"/><EditTextandroid:id="@+id/etmjyfws"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="80dp" /><TextViewandroid:id="@+id/tvmijyfws"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="交易服务税" /><EditTextandroid:id="@+id/etmijyfws"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="60dp" /></TableRow><TableRow><TextViewandroid:id="@+id/tvmcqdjf"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="产权登记费"/><EditTextandroid:id="@+id/etmcqdjf"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="80dp" /><TextViewandroid:id="@+id/tvmicqdjf"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="个⼈所得税" /><EditTextandroid:id="@+id/etmicqdjf"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="60dp" /></TableRow><TableRow><TextViewandroid:id="@+id/tvtotal"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="合计"/><EditTextandroid:id="@+id/ettotalprice"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="95dp" /><TextViewandroid:id="@+id/tvmtotal"android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="合计" /><EditTextandroid:id="@+id/etmtotalprice"android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="70dp" /></TableRow><TableRow ><Buttonandroid:id="@+id/btncal"android:layout_width="wrap_content" android:layout_height="wrap_content"android:text="计算" /></TableRow> </TableLayout></LinearLayout>。

android布局layout中的一些属性(DOC)

android布局layout中的一些属性(DOC)

android布局layout中的一些属性1、可以使某些资源文件或UI组件可重用<include layout="@layout/other"/>2、定义一个文本编辑框,使用绝对定位android:layout_x="20dip"android:layout_y="80dip"3、控件位置android:layout_centerHorizontal 控制该组件是否位于布局容器的水平居中位置android:layout_centerVertical 控制该组件是否位于布局容器的垂直居中位置android:layout_centerInParent 控制该组件是否位于布局容器的中央位置android:layout_alignParentBottom 控制该组件是否与布局容器底端对齐android:layout_alignParentLeft 控制该组件是否与布局容器左边对齐android:layout_alignParentRight 控制该组件是否与布局容器右边对齐android:layout_alignParentTop 控制该组件是否与布局容器顶端对齐android:layout_toRightOf 控制该组件位于给出的ID组件的右侧android:layout_toLeftOf 控制该组件位于给出的ID组件的左侧android:layout_above 控制该组件位于给出的ID组件的上方android:layout_below 控制该组件位于给出的ID组件的下方android:layout_alignTop 控制该组件与给出的ID组件的上边界对齐android:layout_alignBottom 控制该组件与给出的ID组件的下边界对齐android:layout_alignLeft 控制该组件与给出的ID组件的左边界对齐android:layout_alignRight 控制该组件与给出的ID组件的右边界对齐4、设置单元格内的控件的形状(可压缩,可伸长,可隐藏等)android:shrinkColumns 设置该列的所有单元格的宽度可以被收缩,以保证该表格能够适应父容器宽度android:stretchColumns 设置该列的所有单元格的宽度可以被拉伸,以保证组件能完全填满表格空余空间android:collapseColumns 设置该列的所有单元格会被隐藏5、TextView属性设置设置字体为30pt android:textSize="30pt"设置中间省略android:singleLine="true"android:ellipsize="middle"对邮件增加链接android:autoLink="email"android:autoLink="email"测试密码框android:password="true"绘制一张图片android:drawableLeft="@drawable/icon"6、EditText属性设置当前组件在得到焦点的时候,自动选取该组件内的所有的文本内容android:selectAllOnFocus="true"当前组件只能输入数字android:phoneNumber="true"当前组件显示的提示信息,被选中时,内容自动被清空android:hint="@string/edtPhone7、按钮以及属性(B utton……)普通文字按钮android:background=""普通图片按钮<ImageButton android:src=""/>按下时显示不同图片的按钮(利用配置文件解决即,button_selector.xml,android:src="@drawable/button_selector")B utton_selector.xml:指定按钮按钮下时的图片<item android:state_pressed="true"android:drawable="@drawable/red"/>指定按钮松开时的图片:<item android:state_pressed="false"android:drawable="@drawable/purple"/>带文字的图片按钮android:background="@drawable/button_selector" android:text="@string/btnImage"8、单选按钮和多选按钮(RadioGroup、CheckBox)定义一组单选框<RadioGroup android:orientation="vertical" android:layout_gravity="center_horizontal">定义一个单选框<RadioButton android:text="@string/male"/>定义一个垂直的线性布局<LinearLayout android:layout_gravity="center_horizontal"定义三个复选框<CheckBox android:text="@string/red"android:checked="true"/>……9、带类似开关式的按钮(ToggleButton)定义一个ToggleButton按钮:<ToggleButtonandroid:textOff="@string/layoutH"android:textOn="@string/layoutV"/>定义一个可以动态改变方向的线性布局:TestActivity:ToggleButton tb = (ToggleButton) findViewById(R.id.toggle);layout = (LinearLayout) findViewById(R.id.test);匿名内部类:tb.setOnCheckedChangeListener(newOnCheckedChangeListener() {public void onCheckedChanged(CompoundButton arg0, boolean arg1) { if (arg1) {layout.setOrientation(LinearLayout.HORIZONTAL);} else {layout.setOrientation(LinearLayout.VERTICAL);}}});9、计时器组件(Chronometer)获取计时器组件:final Chronometer chro = (Chronometer) findViewById(R.id.test);改变显示的信息内容,使用"%s"表示计时信息chro.setFormat("计时信息:%s");获取“开始”按钮Button btnStart = (Button) findViewById(R.id.start);获取事件监听:btnStart.setOnClickListener(new OnClickListener() {public void onClick(View arg0) {设置开始计时时间:SystemClock系统时钟类,elapsedRealtime方法是得到当前系统的真实时间hro.setBase(SystemClock.elapsedRealtime());启动计时器:chro.start();}});时钟改变一次监听一次:chro.setOnChronometerTickListener(newOnChronometerTickListener() {public void onChronometerTick(Chronometer ch) {如果从开始计时到现在超过了20s。

as中tablayout的用法

as中tablayout的用法

一、简介Android中的TabLayout是一种用于实现选项卡式导航栏的控件,它可以让用户在不同的标签页之间进行切换,是Android开发中常用的界面设计元素之一。

二、 TabLayout的使用方法1. 引入TabLayout库为了使用TabLayout控件,首先需要在项目的build.gradle文件中引入TabLayout库。

在dependencies中添加以下代码:```gradleimplementation .android.support:design:28.0.0'```2. 在布局文件中添加TabLayout在需要使用TabLayout的界面的布局文件中添加TabLayout控件,并设置相应的属性。

例如:```xml<android.support.design.widget.TabLayoutandroid:id="+id/tabLayout"android:layout_width="match_parent"android:layout_height="wrap_content"app:tabMode="scrollable"app:tabGravity="fill"/>在上述代码中,设置了TabLayout的宽度为match_parent,高度为wrap_content,并且设置了tabMode为scrollable,tabGravity为fill。

3. 创建ViewPagerTabLayout通常与ViewPager一起使用,因为ViewPager可以让用户在不同的标签页之间进行滑动切换。

首先需要在布局文件中添加ViewPager控件,并设置相应的属性。

例如:```xml<android.support.v4.view.ViewPagerandroid:id="+id/viewPager"android:layout_width="match_parent"android:layout_height="match_parent"/>```4. 与TabLayout关联在Activity或Fragment中,通过findViewById方法找到TabLayout和ViewPager,并将它们关联起来。

Android布局控件之LinearLayout和TableLayout

Android布局控件之LinearLayout和TableLayout

一、LinearLayout布局控件xml属性android:baselineAligned:是否允许用户调整它内容的基线。

android:baselineAlignedChildIndex:当一个线性布局与另一个布局是按基线对齐的一部分,它可以指定其内容的基线对齐方式。

android:gravity:指定控件中内容的基本内容。

android:orientation:设置它内容的对其方向,有两个可以选择的值:horizontal 和vertical。

分别表示水平排列和垂直排列。

LinearLayout是线性布局控件,它包含的子控件将以横向或竖向的方式排列,按照相对位置来排列所有的widgets或者其他的containers,超过边界时,某些控件将缺失或消失,不能完全显示。

因此垂直方式排列时,每一行只会有一个widget 或者是container,而不管他们有多宽,而水平方式排列是将会只有一个行高(高度为最高子控件的高度加上边框高度)。

LinearLayout保持其所包含的widget或者是container之间的间隔以及互相对齐(相对一个控件的右对齐、中间对齐或者左对齐)。

LinearLayout还支持为其包含的widget或者是container指定填充权值。

允许其包含的widget或者是container可以填充屏幕上的剩余空间。

剩余的空间会按这些widgets或者是containers指定的权值比例分配屏幕。

默认的weight 值为0 ,表示按照widgets或者是containers实际大小来显示,若高于0的值,则将Container剩余可用空间分割,分割大小具体取决于每一个widget或者是container的layout_weight及该权值在所有widgets或者是containers中的比例。

例如,如果有三个文本框,前两个文本框的取值一个为2,一个为1,显示第三个文本框后剩余的空间的2/3给权值为2的,1/3大小给权值为1的。

Android布局之TableLayout表格布局

Android布局之TableLayout表格布局

Android布局之TableLayout表格布局Tablelayout类以⾏和列的形式对控件进⾏管理,每⼀⾏为⼀个TableRow对象,或⼀个View控件。

当为TableRow对象时,可在TableRow下添加⼦控件,默认情况下,每个⼦控件占据⼀列。

当为View时,该View将独占⼀⾏。

三个常⽤的属性android:collapseColumns:设置需要被隐藏的列的序号android:shrinkColumns:设置允许被收缩的列的列序号android:stretchColumns:设置运⾏被拉伸的列的列序号学习导图(1)TableLayout的相关简介 java的swing编程和html中经常会使⽤到表格,可见表格的应⽤开发中使⽤还是⽐较多的,同样android也为我们提供这样的布局⽅式。

(2)如何确定⾏数 a:直接向TableLayout组件,直接占⼀⾏ b:如果想在⼀⾏添加多个组件,就需要使⽤TableRow中添加 c:TableRow中有多少个组件,这⼀⾏就会有多少列(3)三个常⽤属性(都是从零开始计数) Shrinkable:如果某⼀列被设置为Shrinkable,那么该列的所有单元格的宽度可以被收缩,以保证表格能适应⽗容器的宽度; Stretchable:如果某⼀列被设置为Stretchable,那么该列的所有单元格的宽度可以拉伸,以保证组件完全填充表格空余空间; Collapsed:如果某⼀列被设置为Collapsed,那么该列的所有单元格的都会被隐藏;(4)使⽤实例(为了演⽰效果没有,所有组件都没有设置id)<?xml version="1.0" encoding="utf-8"?><LinearLayoutxmlns:android="/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><!--定义第⼀个表格布局,指定第⼆列允许收缩,第三列拉伸--><TableLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:shrinkColumns="1"android:stretchColumns="2"><!-- 直接添加组件会独占⼀⾏--><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="独⾃占⼀⾏"/><TableRow><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="普通按钮"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="收缩按钮"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="拉伸按钮"/></TableRow></TableLayout><!--定义第⼆个表格布局指定第⼆列隐藏--><TableLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:collapseColumns="1"><!-- 直接添加组件会独占⼀⾏--><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="独⾃占⼀⾏"/><TableRow><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="普通按钮"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="普通按钮"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="普通按钮"/></TableRow></TableLayout><!--定义第三个表格布局,指定第⼆列,第三列都可以被拉伸--><TableLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:stretchColumns="1,2"><!-- 直接添加组件会独占⼀⾏--><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="独⾃占⼀⾏"/><TableRow><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="普通按钮"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="拉伸按钮"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="拉伸按钮"/></TableRow></TableLayout></LinearLayout>以上内容是⼩编给⼤家介绍的android布局之TableLayout表格布局,希望⼤家喜欢。

Android五大布局详解——TableLayout(表格布局)

Android五大布局详解——TableLayout(表格布局)

Android五⼤布局详解——TableLayout(表格布局)TableLayout前⾯所学的LinearLayout和RelativeLayout两⼤布局已经完全适⽤于各种开发条件下,其他的布局仅供参考学习,毕竟知识就是⼒量,以后的开发过程中万⼀遇到也能游刃有余。

表格布局允许我们使⽤表格的⽅式来排列组件,就是⾏与列的⽅式。

简单描述1.直接往TableLayout中添加组件,这个组件占满⼀⾏。

<?xml version="1.0" encoding="utf-8"?><TableLayout xmlns:android="/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><Buttonandroid:id="@+id/button"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="TableLayout"/></TableLayout>效果如图:2.如果想要⼀⾏上有多个组件,就要添加⼀个TableRow的容器。

<?xml version="1.0" encoding="utf-8"?><TableLayout xmlns:android="/apk/res/android" android:layout_width="match_parent"android:layout_height="match_parent"><TableRow><Buttonandroid:id="@+id/button_1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="1"/><Buttonandroid:id="@+id/button_2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="2"/><Buttonandroid:id="@+id/button_3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="3"/><Buttonandroid:id="@+id/button_4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="4"/></TableRow></TableLayout>效果如图:3.tablerow中的组件个数就决定了该⾏有多少列。

从头学Android之布局之TableLayout表格布局

从头学Android之布局之TableLayout表格布局

类结构图:ng.Object↳a ndroid.view.View↳a ndroid.view.ViewGroup↳a ndroid.widget.LinearLayout↳a ndroid.widget.TableLayout1.<?xml version="1.0"encoding="utf-8"?>2.3.<LinearLayout xmlns:android="/apk/res/android"4.5.android:orientation="vertical"android:layout_width="fill_parent"6.7.android:layout_height="fill_parent">8.9.11.<TableLayout android:stretchColumns="1"12.13.android:layout_width="fill_parent"android:layout_height="wrap_content">14.15.<TableRow>16.17.<TextView android:layout_width="wrap_content"18.19.android:layout_height="wrap_content"android:text="姓名"/>20.21.<EditText android:text=""android:layout_width="fill_parent"22.23.android:layout_height="wrap_content"/>24.25.</TableRow>26.27.<TableRow>28.29.<TextView android:layout_width="wrap_content"30.31.android:layout_height="wrap_content"android:text="密码 "/>32.33.<EditText android:text=""android:layout_width="fill_parent"34.35.android:layout_height="wrap_content"/>36.37.</TableRow>38.39.<TableRow>40.41.<Button android:text="取消"android:layout_width="wrap_content"42.43.android:layout_height="wrap_content"/>45.<Button android:text="取消"android:layout_width="fill_parent"46.47.android:layout_height="wrap_content"/>48.49.</TableRow>50.51.</TableLayout>52.53.</LinearLayout>这个关于用到了android:stretchColumns它是指定哪一列被拉伸[从0开始],在这里我们指定了为了1,所以出现如下的效果图:关于动态添加设置TableLayout官方并不推荐所以也不在此阐述,所以在实际开发中,我们一般只用XML来设置布局。

android布局属性详解

android布局属性详解

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" 这种布局方式也比较简单,但是在垂直随便切换时,往往会出问题,而且多个元素的时候,计算比较麻烦。

四、RelativeLayout相对布局可以理解为某一个元素为参照物,来定位的布局方式。

主要属性有:相对于某一个元素android:layout_below="@id/aaa" 该元素在id为aaa的下面android:layout_toLeftOf="@id/bbb" 改元素的左边是bbb相对于父元素的地方android:layout_alignParentLeft="true" 在父元素左对齐android:layout_alignParentRight="true" 在父元素右对齐还可以指定边距等,具体详见API五。

android studio tablelayout用法

android studio tablelayout用法

android studio tablelayout用法Android Studio TableLayout用法TableLayout是Android Studio中一种用于显示数据的布局工具。

它可以在界面中创建一个二维表格,类似于HTML中的表格。

每个单元格都可以放置视图元素,如文本框、按钮等。

TableLayout使得数据的展示更加有序、整齐,并具有良好的可读性。

本篇文章将一步一步地介绍TableLayout的用法,帮助你更好地使用这个布局工具。

第一步:在Android Studio中创建TableLayout首先,打开Android Studio并创建一个新的项目。

选择一个合适的项目名称和存储位置。

在项目创建完成后,进入layout文件夹,并打开你想要添加TableLayout的布局文件。

一般来说,这个文件是activity_main.xml。

在布局文件中,引入TableLayout的命名空间。

在根节点的属性中添加以下代码:xmlns:android="xmlns:app="xmlns:tools="接下来,在布局文件中创建一个TableLayout元素。

TableLayout是一个容器,用于包含表格中的所有行和列。

添加以下代码:<TableLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"></TableLayout>第二步:添加表头在TableLayout中,我们首先需要添加表头。

表头是表格的第一行,通常用于描述每一列的名称。

添加TableRow元素,用于创建表头。

TableRow是TableLayout中的一个子元素,表示一行数据。

在T ableLayout中可以添加多个TableRow,每个TableRow 表示一行。

android tablelayout用法

android tablelayout用法

android tablelayout用法Android中的TableLayout是一种用于显示表格形式数据的布局控件,可用于构建具有行列结构的用户界面。

下面是TableLayout的基本用法:1.在布局文件中定义TableLayout控件,并设置其布局参数。

```xml<TableLayoutandroid:id="@+id/table_layout"android:layout_width="match_parent"android:layout_height="wrap_content"android:stretchColumns="*"android:shrinkColumns="*"android:background="#fff"></TableLayout>```2.在TableLayout控件中定义TableRow控件,并设置其布局参数。

TableRow控件用于定义表格的一行数据。

```xml<TableRowandroid:id="@+id/table_row1"android:layout_width="match_parent"android:layout_height="wrap_content"><TextViewandroid:id="@+id/textview1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Text1" /><TextViewandroid:id="@+id/textview2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Text2" /></TableRow>```3.在TableRow控件中定义表格的列数据,例如TextView控件、ImageView控件等。

Android布局--TableLayout示例

Android布局--TableLayout示例

在Android开发中UI设计十分重要,当用户使用一个软件时,最先感受到的不是这款软件的功能是否强大,而是界面设计是否精致,用户体验是否良好。

也可以这样说,有一个好的界面设计去吸引用户的使用,才能让更多的用户体验到软件功能的强大。

需要说明的是,各个布局既可以单独使用,也可以嵌套使用,在实际应用中应灵活掌握。

TableLayout是指将子元素的位置分配到行或列中。

Android的一个TableLayout有许多TableRow组成,每一个TableRow都会定义一个Row。

TableLayout容器不会显示Row,Column,及Cell的边框线,每个Row拥有0个或多个Cell,每个Cell拥有一个View对象。

在使用tablelayout时,应注意每一个cell的宽度。

<TableLayoutxmlns:android="/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><TableRow><TextView android:id="@+id/lable1" android:text="用户名"android:textStyle="bold"android:layout_width="55dip" android:gravity="center"/><EditText android:id="@+id/entry1" android:layout_width="250dip"android:layout_height="wrap_content"/></TableRow><TableRow><TextView android:id="@+id/lable2" android:textStyle="bold" android:text="密码"android:layout_width="55dip" android:gravity="center"/><EditText android:id="@+id/entry2"android:layout_width="250dip" android:layout_height="wrap_content"android:password="true" android:scrollHorizontally="true"/></TableRow></TableLayout>。

TabLayout介绍

TabLayout介绍
android:id="@+id/tabs"
app:tabMinWidth="100dp"
android:layout_gravity="bottom">
</android.support.design.widget.TabLayout>
</android.support.v4.源自iew.ViewPager>
ImageView img = (ImageView) v.findViewById(R.id.tab_img);
img.setImageResource(R.mipmap.ic_launcher);
returnv;
}
TabLayout
概念:提供一个水平布局展示Tabs
2.基本使用介绍:
1》xml布局:ViewPager嵌套TabLayout,例如:
<!--容器-->
<android.support.v4.view.ViewPager
android:id="@+id/layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<!--标题,默认在容器顶部-->
<android.support.design.widget.TabLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在android开发中,常见的布局方式有:LinearLayout (线性布局),RelativeLayout (相对布局),TableLayout (表格布局),AbsoluteLayout (绝对布局),FrameLayout (帧布局),今天我们主要介绍表格布局的相关属性。

TableLayout经常用到的属性有:
android:collapseColumns:以第0行为序,隐藏指定的列:
android:collapseColumns该属性为空时,效果如下图:
把android:collapseColumns=0,2--------------》意思是把第0和第2列去掉,如下图:
android:shrinkColumns:以第0行为序,自动延伸指定的列填充可用部分:
当LayoutRow里面的控件还没有布满布局时,shrinkColumns不起作用,如下图:
设置了shrinkColumns=0,1,2,布局完全没有改变,因为LayoutRow里面还剩足够的空间。

当LayoutRow布满控件时,如下图:
设置设置了shrinkColumns=2,则结果如下图,控件自动向垂直方向填充空间:
android:stretchColumns:以第0行为序,尽量把指定的列填充空白部分:
设置stretchColumns=1,则结果如下图,第1列被尽量填充(Button02与TextView02同时向右填充,直到TextView03被压挤到最后边)。

更多android开发视频入门教程,点此查看>> /course/2/。

相关文档
最新文档