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》