一、UI控件的参数设置
①在width中参数为match_parent即根据界面的大小自动控制大小,在height中的参数为wrap_content即为根据控件内字段的大小来确定控件的大小。
②Android:gravity来确定控件中字段的对其方式,分别有top,bottom,left,right,center
而textSize与textColor分别用来确定字段的大小与颜色,textSize的单位为sp。
③系统会对button中的字符进行自动的大写转换
④imageView添加图片
public void onClick(View view) {
/* String inputtext=editText1.getText().toString();
Toast.makeText(NormalActivity.this,inputtext,Toast.LENGTH_SHORT).show();*/
image_view1.setImageResource(R.drawable.img_2);
}
该代码可以完成两个图片的切换
⑤progressBar
效果如图
代码如下
public void onClick(View view) {
/* String inputtext=editText1.getText().toString();
Toast.makeText(NormalActivity.this,inputtext,Toast.LENGTH_SHORT).show();*/
/* image_view1.setImageResource(R.drawable.img_2);*/
/* if(progressBar.getVisibility()==View.GONE)
progressBar.setVisibility(View.VISIBLE);
else
progressBar.setVisibility(View.GONE);*/
int progress=progressBar.getProgress();
progress=progress+10;
progressBar.setProgress(progress);
}
⑥AlertDialog提示对话框
代码如下
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
AlertDialog.Builder dialog=new AlertDialog.Builder(DialogActivity.this);
dialog.setMessage("Something important.");
dialog.setCancelable(false);
dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
});
dialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
});
dialog.show();
}
});
⑦progressDialog
代码如下
public void onClick(View view) {
/* AlertDialog.Builder dialog=new AlertDialog.Builder(DialogActivity.this);
dialog.setMessage("Something important.");
dialog.setCancelable(false);
dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
});
dialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
});
dialog.show();*/
ProgressDialog progressDialog=new ProgressDialog(DialogActivity.this);
progressDialog.setTitle("This is ProgressDialog");
progressDialog.setMessage("Loading...");
progressDialog.setCancelable(true);
progressDialog.show();
}
});
注意在setCancelble中传入了false,progressDialog便不能通过cancel取消掉
二、
安卓中的布局控件(1)linearLayout线性布局
①android:orientation="vertical";
②android:orientation="horizontal";
③android:orientation="horizontal";
当三个button控件的参数设置分别如下时
android:layout_gravity="top";
android:layout_gravity="center_vertical";
android:layout_gravity="bottom";
④
<EditText
android:id="@+id/input_message"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:hint="Type something"
/>
<Button
android:id="@+id/send"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="send" />
如图android:layout_weight
使用时,控件的宽度就不应该再由android:layout_width
决定,layout_weight
决定了两个控件之间的距离
注意:我们可以将一个控件添加layout_weight
属性,而另一个控件仍然用wrap_content
计算。使用这种方式编写的界面,不仅在各种屏幕的适配方面会非常好,而且看起来也更加舒服。
(2)相对布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="button 1"
/>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="button 2"/>
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="button 3"
/>
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:text="button 4"/>
<Button
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="button 5"
/>
</RelativeLayout>
相对布局还有其他的一些功能,在这里我就先暂时不仔细研究了,直接进入下一个帧布局
(3)帧布局
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<TextView
android:id="@+id/text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:text="This is TextView"
/>
<ImageView
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:src="@mipmap/ic_launcher"
/>
</FrameLayout>
(4)百分比布局
Percent_layout需要修改gradle文件,比较复杂,在这我就暂时先不看了