控件常用属性

XML属性 对应方法 备注
android:text setText(CharSquence)
setText(int resId)
设置文本框显示的文本内容
android:textColor setTextColor(ColorStateList) 设置文本框显示文本的颜色
android:textSize setTextSize(float) 设置文本框显示文本的字号
android:textStyle setTypeface(Typeface) 设置文本框显示文本的字体风格
android:textAppearance   设置文本框显示文本的颜色、字体、大小等样式
android:ellipsize setEllipsize(TextUitls.TruncateAt) 设置显示文本超出TextView的长度时如何处理处理文本内容
android:gravity setGravity(int) 设置文本框显示文本的对齐方式
android:maxLines setMaxLines(int) 设置文本框的最多占几行
android:minLines setMinines(int) 设置文本框最少占几行
android:singleLine setTransformationMethod 设置文本框是否是单行模式。
android:drawableLeft setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable) 在文本框左侧绘制图像
android:drawableRight setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable) 在文本框右侧绘制图像
android:drawableTop setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable) 在文本框上方绘制图像
android:drawableBottom setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable) 在文本框下方绘制图像
android:drawableStart   在文本框开始处绘制图像
android:drawableEnd   在文本框结束处绘制图像
android:drawablePadding   设置文本框显示文字和图像之间的间距

android:layout_gravity 和 android:gravity 的区别

gravity 这个英文单词是重心的意思,在这里就表示停靠位置的意思。

从名字上可以看到,android:gravity是对元素本身说的,元素本身的文本显示在什么地方靠着换个属性设置,不过不设置默认是在左侧的。

android:layout_gravity是相对与它的父元素说的,说明元素显示在父元素的什么位置。

比如说button: android:layout_gravity 表示按钮在界面上的位置。 android:gravity表示button上的字在button上的位置。

当作为父layout的LinearLayout的属性为android:orientation="vertical" 的时候,android:layout_gravity="?"这里设为横向的时候才能生效。比如:left,right,center_horizontal等;

当作为父layout的LinearLayout的属性为android:orientation="horizental" 的时候,android:layout_gravity="?"这里设为纵向的时候才能生效。比如:top,bottom,center_vertical等;

有一个比较特殊的是center,不管是横向还是纵向的时候,它总有一个方向起作用, 因为LinearLayout他只可能有一个方向,

3.ImageView的scaleType属性值 说明

fitCenter 缺省值.保持纵横比缩放,图片放在ImageView中央

fitStart  保持纵横比缩放,图片放在ImageView左上角

fitEnd 保持纵横比缩放,图片放在ImageView右下角

fitXY  对图片横向、纵向独立缩放以适应控件大小。

center  把图片放在ImageView中间,不进行任何缩放

centerCrop  保持纵横比缩放,图片完全覆盖ImageView。

centerInside  保持纵横比缩小,ImageView能完全显示该图片。

4.layout_weight

只有在Linearlayout中,该属性才有效。

这就是它奇葩的地方,很容易就让我们一直误认为是整个控件分割空间。到这里,大家一定会认为,这样的话,layout_weight 这个属性就没有什么意义了,原以为它可以分配空间呢,原来只是分割剩余空闲空间。

其实,呵呵,layout_weight 是可以用来进行整个空间的分割的,如果我们让控件的宽度定义为0,这样比如2个控件的 layout_weight="1" 就可以各自50%平分整个空间了,因为:0 + 1/2空闲空间 = 0 + 1/2空闲空间

这是一个小技巧,也是非常实用的一个实用layout_weight分割方案:定义控件的 layout_width="0dp" 或 layout_height="0dp" 配上 layout_weight 就可以实现对整个空间的比例分割了。

android:layout_weight的真实含义是:一旦View设置了该属性(假设有效的情况下),那么该 View的宽度等于原有宽度(android:layout_width)加上剩余空间的占比!

设 屏幕宽度为L,在两个view的宽度都为match_parent的情况下,原有宽度为L,两个的View的宽度都为L,那么剩余宽度为L-(L+L) = -L, 左边的View占比三分之一,所以总宽度是L+(-L)*1/3 = (2/3)L.事实上默认的View的weight这个值为0,一旦设置了这个值,那么所在view在绘制的时候执行onMeasure两次的原因就在 这。

@@设置android:layout_width为wrap_content和match_parent会造成两种截然相反的效果。

1. 将两个TextView的宽度均设为match_parent,一个权重为1,一个权重为2.得到效果如下:

可以看到权重为1的反而占了三分之二!

2. 宽度为wrap_content,得到视图如下:

左边 TextView占比三分之一,又正常了。

5.TextViewellipsize

TextView及其子类,当字符内容太长显示不下时可以省略号代替未显示的字符;省略号可以在显示区域的起始,中间,结束位置,或者以跑马灯的方式显示文字(textview的状态为被选中)。

其实现只需在xml中对textview的ellipsize属性做相应的设置即可。

android:ellipsize="start" 省略号在开头

android:ellipsize="middle" 省略号在中间

android:ellipsize="end" 省略号在结尾

android:ellipsize="marquee" 跑马灯显示

或者在程序中可通过setEillpsize显式设置。

注: EditText不支持marquee这种模式。

6.ps dp sp:

ps:像素值,开发过程中一般不建议使用。因为不能根据屏幕的分辨率进行等比例的缩放

dp (dip): 多用于图片大小 p device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。

sp: 根据屏幕分辨率,等比例缩放,主要用于字体显示。

in(英寸):长度单位。

mm(毫米):长度单位。

时间: 2024-10-11 05:24:18

控件常用属性的相关文章

android软件开发之TextView控件常用属性

TextView控件 text属性,设置显示的文本 textColor:设置文本颜色 textSize:设置文本字体大小 autoLink:设置文本为电话,URL连接等的时候是否显示为可点击的链接 cursorVisible:设定光标为显示或者隐藏,默认为显示 drawableTop:在文本上方输出一个drawable,如图片 drawableLeft.drawableBottom.drawableRight如上 drawablePadding:设置图片的外边距 singleLine:设置单行显

UIWebView浏览器控件常用属性与方法汇总

一.什么是UIWebView UIWebView是iOS内置的浏览器控件 系统自带的Safari浏览器就是通过UIWebView实现的 二.UIWebView常用属性和方法 UIWebView常用的加载资源的方法 - (void)loadRequest:(NSURLRequest *)request; @property(nonatomic) UIDataDetectorTypes dataDetectorTypes; // 需要进行检测的数据类型 @property(nonatomic,rea

TextView控件常用属性

android:text 定义组件的显示文字 android:maxLength 最大允许长度 android:textColor 文本颜色 android:textSize 文字大小(px,pt,in,mm,dip,sp) android:textStyle 文字显示的样式,粗体.斜体等(正常:normal 粗体:bold 斜体:italic) android:selectAllOnFocus 默认选中并获得焦点 android:password 按密文方式显示文本信息

Android中常用控件及属性

在之前的博客为大家带来了很多关于Android和jsp的介绍,本篇将为大家带来,关于Andriod中常用控件及属性的使用方法,目的方便大家遗忘时,及时复习参考.好了废话不多讲,现在开始我们本篇内容的介绍. 1.控制应用显示的方向: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖直显示效果. setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LA

C#控件事件属性大全

C#控件及常用设计整 1.窗体... 1 2.Label 控件... 3 3.TextBox 控件... 4 4.RichTextBox控件... 5 5.NumericUpDown 控件... 7 6.Button 控件... 7 7.GroupBox 控件... 7 8.RadioButton控件... 8 9.CheckBox 控件... 8 10.ListBox 控件... 9 11.ComboBox 控件... 10 12.CheckedListBox 控件... 10 13.Pict

WPF布局控件常用属性介绍

WPF布局控件常用属性介绍 其它 | 作者:慧都控件网 | 2011-04-06 13:41:57| 阅读 0次 有用(0) 评论(0) 概述:WPF布局控件都是派生自System.Windows.Controls.Panel抽象类的面板,Panel类继承自 FrameworkElement,Panel类本身并没有什么特别的,但是WPF中提供了许多用于布局的控件都继承自Panel类,如 StackPanel控件,WrapPanel,DockPanel,Grid,UniformGrid,Canva

网络操作不能直接写在主线程中 以及 为什么不能在子线程中更新UI控件的属性

- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ //注意: 所有网络操作不能直接写在主线程中 因为所有的网络操作都是耗时的,如果加载到主线程中,会导致与用户的交互出现问题 ,所以要加载到子线程中 // [self loadImage]; [self performSelectorInBackground:@selector(loadImage) withObject:nil]; } //加

UI控件tag属性和魔法数字的处理

说明:tag属性有很大的用处,它就好像每个UI控件的id,当多个按钮指向同一个监听方法时,可以给方法带参数UIButton,然后根据不同的tag值 来判断执行哪个按钮的监听事件: - (IBAction)up:(UIButton *)sender // 该方法有四个btn指向,tag值是下边的,即可根据不同tag值执行相应的代码 { //upMoveTag的tag是10 //bottomMoveTag:11 //leftMoveTag:12 //rightMoveTag:13 CGRect re

在C#中使用属性控件添加属性窗口

转自原文 在C#中使用属性控件添加属性窗口 第一步,创建在应用程序中将要展现的字段属性为public公有属性.其中,所有的属性必须有get和set的方法(如果不设置get方法,则要显示的属性不会显示在属性控件中).为了设置相关的属性,必须设置下面的一些关于属性控件的属性值,如下表所示: 属性值 含义 CategoryAttribute 该属性对在Property控件中的属性按字母顺序进行归类 DescriptionAttribute 其值为对每个属性的具体文字描述,将会显示在property控件