各种控件和布局--android学习

来源:互联网 发布:php 网盘 程序 编辑:程序博客网 时间:2024/05/20 10:56

TextView

使用android:gravity来指定文字的对齐模式,可选值有top,bottom,left,right,center等。
可以用“|”来指定多个值,如“center_vertical|center_horizontal”等同于“center”


Button

Button两种注册监听的方法:
1.第一种必须随时注册监听

button = (Button)findViewById(R.id.button);button.setOnClickListener(new onClickListener(){         @Override         public void onClick(View v){         //code         }});

2.第二种在一个方法内,监听多种事件(要实现OnClickListener接口)

button = (Button)findViewById(R.id.button);button.setOnClickListener(this);//重写方法public void onClick(View v){        switch(v.getId()){        case R.id.button:                 //code                 break;        default:                 break;        }}
EditText

android:hint:用来编写提示性文本
android:maxLines:指定EditText最多为两行高,不能随着内容的不断增多而被拉长。
如何获取EditText输入的内容?

private EditText  editText;editText = (EditText)findViewById(R.id.edit_text);String inputText = editText.getText().toString();

ImageView
android:src:给ImageView指定一张图片


ProgressBar
进度条(默认样式:环形)
可通过style属性设为水平的:style=“?android:attr/progressBarStyleHorizontal”
android:max="100":给进度条设置一个最大值
android:visibility:控件可见
android:invisible:控件不可见,但仍占据空间大小
android:gone:空间不可见,也不占据空间大小
代码控制:
setVisibility():设置控件的可见性
getVisibility():获得控件的可见性状态
上面两个方法传值:View.VISIBLE,View.INVISIBLE,View.GONE
getProcess():获得当前进度条的值
setProcess(myValue):myValue重新设置进度条的值


AlertDialog对话框


AlertDialog.Builder dialog = new AlertDialog.Builder(CurrentActivity.this);dialog.setTitle("this is a title");dialog.setMessage("something important.");dialog.setCancelable(false);//不能通过Back键取消//设置确定按钮dialog.setPositiveButton("OK",new DialogInterface.OnclickListener(){      @Override      public void onClick(DialogInterface dialog, int which){      }});//设置取消按钮的点击事件dialog.setNegativeButton("Cancel",new DialogInterface.OnclickListener(){      @Override      public void onClick(DialogInterface dialog, int which){      }});dialog.show();

ProgressDialog

当数据加载完成后必须调用ProgressDialog的dismiss()方法来关闭对话框,否则ProgressDialog将会一直存在。

progressDialog progressDialog = new ProgressDialog (MainActivity.this);progressDialog.setTitle("This is ProgressDialog");progressDialog.setMessage("loading......");progressDialog.setCancelable(true);progressDialog.show();

布局
LinearLayout,线性布局

layout_weight:权值分配


RelativeLayout,相对布局
相对父布局:layout_alignParentLeft = "true"
                       layout_centerInParent = "true"


layout_above:一个控件位于另一个控件的上方。
layout_below:同理
layout_toLeftOf:位于另一控件左侧
layout_toRightOf:同理
layout_alignLeft:两个控件的左边缘对齐
+另一控件的id(必须先出现那另一控件)




FrameLayout
我的理解:页面布局,且无视兄弟控件,即会重叠


TableLayout,顾名思义,表格控件
<TableRow>.......</Tablerow>:定义一行
layout_span = "2":该控件占空间几列
strechColumns = “1”:拉伸第二列控件以达到适应适应屏幕

参考资料《第一行代码--android》

0 0
原创粉丝点击