1. TextView控件
<TextView android:id="@+id/text_view" //给当前控件指定唯一的标识符 android:layout_width="match_parent"
//指定控件的宽度 默认值有match_parent=fill_parent,wrap_contet
//match_parent采用父布局的大小,wrap_content当前控件由控件的内容大小决定
android:layout_height="wrap_content" //同上 android:gravity="center" //指定文字的对齐方式 :center ,left,right,bottom,top等 android:textSize="20sp" //文字的大小 android:textColor="#00ff00"//文字的颜色 android:text="This is TextView" //文字的内容 />
2.Button控件
<Button android:id="@+id/button" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Button" android:textAllCaps="false"//取消android默认将小写字母转换为大写字母 />
//和TextView控件大体相似
ps:关于注册监听器
1.使用匿名类方式注册
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button = (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { } }); } }
2.使用实现接口的方法
public class MainActivity extends AppCompatActivity implements View.OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button = (Button) findViewById(R.id.button); button.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.button: //在此处添加逻辑 break; default: break; } } }
3.EditText控件
允许用户在控件里输入和编辑内容,并可以在程序中队这些内容进行处理
<EditText android:id="@+id/edit_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Type something here" //可选 提示性文字,输入后消失 android:maxLines="2" //控制EditText的最大行数 />
4.ImageView控件
<ImageView android:id="@+id/image_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/img_1" />
imageview.setImageResource(R.drawable.img_2); //更换图片
5.ProgressBar控件
<ProgressBar android:id="@+id/progress_bar" android:layout_width="match_parent" android:layout_height="wrap_content" //默认动态圆形 />
style="?android:attr/progressBarStyleHorizontal" android:max="100"//更改为长条形状
private ProgressBar progressBar;
progressBar = (ProgressBar)findViewById(R.id.progress_bar);
@Override public void onClick(View v) { switch (v.getId()) { case R.id.button: int progress = progressBar.getProgress(); progress+=10; progressBar.setProgress(progress); break; default: break; } }/通过点击button动态地让进度条增加
PS:android控件的可见属性:android:visibility 可选值visible(默认值),invisible,gone.
获得控件属性值:progressBar.getVisibility() //==View,GONE
设置属性值:progressBar.setVisibility(View.VISIBLE);
6.AlertDialog控件
在当前的界面弹出一个对话框,置顶于所有的界面元素之上,能屏蔽掉其他控件的交互能力,用于提示重要的内容或是警告信息
public void onClick(View v) { switch (v.getId()) { case R.id.button: AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this); dialog.setTitle("This is Dialog"); //设置title dialog.setMessage("Something important.");//设置显示内容 dialog.setCancelable(false);//设置是否可按返回键退出,默认为true 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(); break; default: break; } }
7.ProgressDialog控件
和AlertDialog类似 不同点:在对话框中显示一个进度条,表示当前工作比较耗时让用户耐心等待。
@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(false); //数据加载完毕后要调用dismiss()方法来关闭对话 progressDialog.show(); default: break; } }