布局控件
一、TextView
1、
2、指定控件的宽度和高度
android:layout_width="match_parent"
android:layout_height="wrap_content"
Android中所有的控件都有这2种属性,可选三种值:match_parent,fill_parent,wrap_content。其中match_parent和fill_parent意义相同,都表示让当前控件大小和父布局的相同,只是官方更加推荐使用match_parent。wrap_content表示让控件大小能够刚好包含里面的内容就行。当然,我们也可以对控件自定义指定高和宽,但是这样会在不同手机屏幕的适配方面出现问题。
3、对TextView文本对齐方式
对齐方式可选值有:top、bottom、left、right、center等,可以用“|”来指定多种方式。如center效果等同于center_vertical | center_horizontal。若不指定任何,则默认向右上角对齐。
4、对TextView中文字大小、颜色修改。 如:android:textSize="24sp"对字体大小指定, android:textColor="#00ff00"对字体颜色指定。
*5、对于其他的文本具体属性设置,可具体去查阅,主要写法正确。
二、Button
1、这是在布局添加一个按键的控件。
2、button命名为英文时系统默认名称所有字母为大写,可以以通过android:textAllCaps="false"来禁用这个默认。
3、在活动中注册监听器(见第二章内容)。
三、EditText
1、
2、在布局中基础调用:
//布局控件的基础调用方式都基本相同,即写好控件所属标签先给控件定义一个id再指定宽度高度。而个性添加会不同。
3、个性添加:
如 android:hint="something here",表示添加提示性文本为“something here”。
如android:maxLines="2",表示文本内容字符最多容纳两行。
4、获取EditText的内容。第一步:editText=(EditText) findViewById(R.id.edit_tex);在oncreat方法中获取实例(布局控件在活动创建中获取实例的方法都一样,只是要改变方法中的参数即控件的地址)。第二步:String inputText=editText.getText().toString();把数据赋予inputText这个参数(editText的getText()方法获取文本内容再通过toString()方法转化成字符串)。
四、ImageView
1、ImageView是用于在界面展示图片的一个控件。
2、 在该布局控件标签中,写android:src="@drawable/img_1",这就添加了一张图片是在drawable目录下的img_1图片。所需要的图片我们要额外手动在该文件夹下复制添进去并命名(上面的代码说明图片被命名为img_1)。
3、同样,在活动中应用控件都要在oncreate方法中创建实例,方法上面讲过了。
4、在应用该控件时,imageView.setImageResource(R.drawable.img_2);表示切换图片。通过imageView的setImageResource方法讲图片换成别的,其中它执行需要的一个参数便是新图片的地址。
五、ProgressBar
1、ProgressBar控件用于在界面上显示一个进度条(表示我们正在加载一些数据)。
2、设置进度条加载100%后消失。所有控件都有这个可见属性,代码如:android:visibility=visible表示可见,不指定任何也是默认这样为可见的,此外还可以指定invisible(表示不可见但仍然要占屏幕位置)和gone(表示不仅不可见而且不占用屏幕任何空间)。我们还可以在活动中用setVisibility()方法设置控件的可见性,setVisibility()里的参数可以传入View.INVISIBLE、View.VISIBLE和View.GONE结果对应上面的三种情况。示例:
@Override
public void onClick(View V) {
switch(v.getId){
case R.id.button: //这个switch的case是指不同button执行不同触发活动,case后面跟button的地址
if(progressBar.getVisibility()==View.GONE){
progressBar.setVisibility(View.VISIBLE);
}else{ //表示如果进度条是不显示状况就变为显示,否则变为不显示
progressBar.setVisibility(View.GONE);
} //必须先创建Progress的对象实例
}
break;
default;
break;
}
}
3、进度条的样式在ProresssBar标签内引用style="?android:att/progressBarStyleHorizontal"可以改成水平进度条(默认情况下是圆形进度条)。然后用android:max="100",来设置进度条最大值(这设置了100为进度条最大值)。在活动中用动态进度条(用按键控制进度):
case R.id.button: //按键触发
int progress=progressBar.getProgress(); //给参数赋值(获取进度数据)
progress=progress+10; //改变参数值
progress.setProgress(progress); //把进度值改为参数值
*4、ProgressBar的样式还有其他,自己去琢磨!
六、AlertDialog
1、AlertDialog控件是在当前的界面弹出一个对话框(这个对话框在所有界面元素之上)。
2、示例:
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.button:
AlertDialog.Builder dialog=new AlertDialog.Builder(MainActivity.this); //创建一个AlertDialog实例
dialog.setTitle("This is Dialog"); //对话框标题
dialog.setMessage("something important"); //对话框内容
dialog.setCancelable(false); //设置是否可取消属性
dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() { //“OK”是设置按钮的显示名称
@Override //对话框确认按钮点击事件
public void onClick(DialogInterface dialog, int which) {
}
});
dialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override //对话框取消按钮点击事件
public void onClick(DialogInterface dialog, int which) {
}
});
dialog.show();
break;
default:
break;
}
}
七、ProgressDialog
1、ProgressDialog和AlertDialog有点类似。两者都是在界面最上显示对话框覆盖其他功能。不同的是ProgressDialog会在对话框内显示进度条。用法两者相似。
2示例:
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.button:
ProgressDialog progressDialog=new ProgressDialog(MainActivity.this);
progressDialog.setTitle("This is progressDialog");
progressDialog.setMessage("Loading……");
progressDialog.setCancelable(true);
progressDialog.show();
break;
default:
break;
}
}
3、注意:setCancelable()中传入了false表示该对话框不能通过Back键取消掉。因此,如果传入了false,在ProgressDialog类型的对话框中还要在代码中做好数据加载完自动调用ProgressDialog的dismiss()方法关闭对话框的控制。