欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android 基本控件的常用属性

程序员文章站 2022-06-27 14:30:48
TextView EditText Button imageView Spinner下拉列表 RadioGroup(复选框) / Checkbox(单选框) ProgressBar进度条 RatingBar星级控件 SeekBar进度条控件 ......

textview

//normal 默认 bold 粗体 italic斜体 可用| 多选
android:textstyle

//设置限定可以输入哪些字符
android:digits

//设置文本可点击,类型有none、web、email、phone、map、all
android:autolink

//设置行间距
android:linespacingextra  

//设置行间距的倍数
android:linespacingmultiplier   设置行间距的倍数。如”1.2”  

//设置文字的间隔,默认是1.0f
android:textscalex

//以.代替文本内容
android:password

//省略超出的文本,以...代替,start 在开头 end在结尾 middle在中间 marquee 跑马灯,跑马灯还需设置一个值,setselected(true);,才可滚动
android:ellipsize

//指定文本阴影的颜色
android:shadowcolor 

//设置阴影横向坐标开始位置
android:shadowdx 

//设置阴影纵向坐标开始位置
android:shadowdy

 //设置阴影的半径。设置为0.1会变成字体的颜色
android:shadowradius

//占位符:%s表示字符串类型,%d表示整型,%f表示浮点型

<string name="my_info">看%1$s,到%2$s观看。</string>

string s = string.format(getresources().getstring(r.string.text), "廷禧攻略", "爱奇艺");

edittext

//设置输入框的类型,如text、number、phone、texturi、textpassword
android:inputtype

//设置提示文字
android:hint="请输入姓名"

//提示文字的颜色
android:textcolorhint="#ffff00"

//限制最大输入字符
android:maxlength

//限制允许输入的字符
android:digits 

//单行显示
android:singleline="true"

//enter图标设置 actiongo前往、actionsearch搜索、actionsend发送、actionnext下一个、actiondone完成
android:imeoptions

//输入监听器
edtext.addtextchangedlistener(new textwatcher() {
  @override
  public void beforetextchanged(charsequence s, int start, int count, int after) {
        //在文本改变时,该方法被第一个调用
  }

  @override
  public void ontextchanged(charsequence s, int start, int before, int count) {
        //当文本正在改变时被调用
  }

  @override
  public void aftertextchanged(editable s) {
        //当文本改变后被调用
  }
});

button

//设置按钮不可用
setenabled(false); 

//设置按钮不可点击
setclickable(false); 

imageview

//是否调整边界来保持所显示图片的长宽比
android:adjustviewbounds

//设置渲染颜色
android:tint

//设置填充方式
android:scaletype,属性:

matrix:不改变原图的大小,从imageview的左上角开始绘制原图,原图超过imageview的部分直接剪裁。

center:保持原图的大小,显示在imageview的中心,原图超过imageview的部分剪裁。

centercrop:等比例放大原图,将原图显示在imageview的中心,直到填满imageview位置,超出部分剪裁。

centerinside:当原图宽高或等于imageview的宽高时,按原图大小居中显示;反之将原图等比例缩放至imageview的宽高并居中显示。

fitcenter:按比例拉伸图片,拉伸后图片的高度为imageview的高度,且显示在imageview的中间。

fitend:按比例拉伸图片,拉伸后图片的高度为imageview的高度,且显示在imageview的下边。

fitstart:按比例拉伸图片,拉伸后图片的高度为imageview的高度,且显示在imageview的上边。

fitxy:拉伸图片(不按比例)以填充imageview的宽高。

spinner下拉列表

//dialog弹出列表,dropdown下拉列表
android:spinnermode

//dialog模式可以设置一个标题
android:prompt

//设置xml数据源
android:entries

//xm数据源
<resource>

   <string-array name="arraylist">

    <item>item1</item>

    <item>item2</item>

    <item>item3</item>

  </string-array>

<resource>

//系统提供的样式
simple_spinner_dropdown_item(列表-间距较高)

simple_spinner_item(列表-间距紧凑)

simple_list_item_checked(复选框)

simple_list_item_single_choice (单选框)

//事件监听

adapterview.onitemclicklistener 列表项被点击时触发

adapterview.onitemlongclicklistener 列表项被长按时触发

adapterview.onitemselectedlistener 列表项被选择时触发

radiogroup(复选框) / checkbox(单选框)

//指定为选中状态
setcheck(true)

//获取单选框的值
gettext();

//判断是否被选中
ischecked();

//选中监听
radiogroup.setoncheckedchangelistener(new oncheckedchangelistener() {
            
    public void oncheckedchanged(compoundbutton buttonview, boolean ischecked) {
           //ischecked 是否被选中
    }
});

progressbar进度条

//true为不精确模式只有循环动画,false为精确模式只有设置此属性才能显示进度
android:indeterminate="true"

//设置进度的最大值
android:max

//定义一级进度值
android:progress

//定义二级进度值,该进度在主进度和背景之间,比如缓存进度条
android:secondaryprogress

//定义当进度达到最大时,repeat表示进度从0重新开始;cycle表示进度保持当前值,并且回到0
android:indeterminatebehavior

//自定义动画
android:indeterminatedrawable

//自动义拖动块的样式
android:thumb

//系统风格 
@android:style/widget.progressbar.horizontal:水平进度条(只有这个可以显示刻度,其他为循环动画)

@android:style/widget.progressbar.small:小进度条

@android:style/widget.progressbar.large:大进度条

@android:style/widget.progressbar.inverse:不断跳跃、旋转画面的进度条

@android:style/widget.progressbar.large.inverse:不断跳跃、旋转动画的大进度条

@android:style/widget.progressbar.small.inverse:不断跳跃、旋转动画的小进度条

//java属性
setprogress(int) 设置第一进度

setsecondaryprogress(int) 设置第二进度

getprogress() 获取第一进度

getsecondaryprogress() 获取第二进度

incrementprogress(int) 增加或减少第一进度

incrementsecondaryprogress(int) 增加或减少第二进度

getmax() 获取最大进度

ratingbar星级控件

//设置是否允许用户修改
android:isindicator

//设置评分控件一共展示多少个星星,默认5个
android:numstars

//设置初始默认星级数
android:rating

//设置每次需要修改多少个星级
android:stepsize

//事件监听,ratingbar表示触发事件的控件,rating表示当前的星级,fromuser表示是否用户触发的修改事件

@override
public void onratingchanged(ratingbar ratingbar, float rating,
    boolean fromuser) {

}

seekbar进度条控件

//事件监听
sb.setonseekbarchangelistener(new seekbar.onseekbarchangelistener() {
    @override
    public void onprogresschanged(seekbar seekbar, int i, boolean b) {
             //在移动的时候调用
    }

    @override
    public void onstarttrackingtouch(seekbar seekbar) {
             //在移动开始前调用
    }

    @override
    public void onstoptrackingtouch(seekbar seekbar) {
             //在结束时调用
    }
});