五、常用控件
1.通用属性
android:id="@+id/add_data"
android:layout_width="match_parent"//与父类一样
android:layout_height="wrap_content"//与控件一样
android:layout_gravity //指定文字的对齐方式(多个间用 | 隔开)
android:textAllCaps="false" //关闭字体大写
2.TextView
3.Button的使用——在MainActivity为Button的点击事件注册一个监听器
Button button = (Button)findViewById(R.id.xxxx);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//此处添加逻辑
}
});
4.EditText的使用
(1)属性
android:hint="" (展示内容,可消失)
android:maxLines=""(设置最大行数)
(2)主函数操作
EditText editText = (EditText) findViewById(R.id.xxxx);//获取实例
String text = editText.getText().toString();获取文本
5.ImageView
android:src="@drawable/图名"
6.ProgressBar(进度条)
(1).属性:android:visibility="visible"(可见,默认) 其他:invisible (不可见,但仍占据位置) 、gone(不可见,不占位置)
(2).在主方法中调整:
Connector.getDatabase();
ProgressBar progressBar = (ProgressBar)findViewById(R.id.pb);
if (progressBar.getVisibility()==View.GONE)
progressBar.setProgress(View.VISIBLE);
(3).可改为水平进度条
在.xml处增加:
style="?android:attr/progressBarStyleHorizontal"
android:max="100"//最大值
在主函数增加:
ProgressBar progressBar =new ProgressBar(MainActivity.this);
int progress = progressBar.getProgress();//获取进度
progress = progress + 10;//改变进度
progressBar.setProgress(progress);//返回进度
7.AlertDialog(对话框)
(1)确认对话框
new AlertDialog.Builder(this).setTitle("Dialog对话框")
.setMessage("是否确定退出")
.setIcon(R.mipmap.ic_launcher) //图标
.setPositiveButton("yes",null)
.setNegativeButton("no",null)
.create().show();
常用操作:
setTitle: 为对话框设置标题 ;
setIcon : 为对话框设置图标;
setMessage: 为对话框设置内容;
setView : 给对话框设置自定义样式 ;
setItems: 设置对话框要显示的一个list,一般用于显示几个命令时;
setMultiChoiceItems:用来设置对话框显示一系列的复选框;
setNeutralButton : 响应中立行为的点击;
setPositiveButton : 响应Yes/Ok的点击 ;
setNegativeButton :响应No/Cancel的点击 ;
create : 创建对话框 ;
show : 显示对话框;
注意:
有关AlertDialog.Builder,在创建时一定要用this做为参数,
如:new AlertDialog.Builder(this);
有些时候用this 会出现错误,因为dialog不是在oncreate中定义的。
不妨在MainActivity建立类
public static MainActivity mainactivity;
然后在oncreate中mainactivity = this;
之后建立Dialog
new AlertDialog.Builder(MainActivity.mainactivity);
(2)单选对话框
new AlertDialog.Builder(this).setTitle("请选择性别")
.setIcon(R.mipmap.ic_launcher) //图标
.setPositiveButton("yes",null)
.setSingleChoiceItems(new String[]{"男","女"},-1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.create().show();
(3)多选对话框
new AlertDialog.Builder(this).setTitle("请添加兴趣爱好")
.setIcon(R.mipmap.ic_launcher) //图标
.setPositiveButton("yes",null)
.setMultiChoiceItems(new String[]{"旅游","美食","汽车","购物"},null,null)
.create().show();
8.ProgressDialog(进度条对话框)
ProgressDialog dialog = new ProgressDialog(this);
dialog.setTitle("进度条对话框");
dialog.setIcon(R.mipmap.ic_launcher);
dialog.setMessage("正在下载");
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.show();
注:如果在setCancelable()中传入false,则不能通过Back取消,需要在数据加载完后调用dismiss()关闭