然后使用 android:layout_width 指定了控件的宽度,使用 android:layout_height 指定了控件的高度。Android 中所有的控件都具有这两个属性,可选值有三种 match_parent、fill_parent 和 wrap_content,其中 match_parent 和fill_parent 的意义相同,现在官方更加推荐使用 match_parent。match_parent 表示让当前控件的大小和父布局的大小一样
<TextView
android:id="@+id/text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="This is TextView"
/>
文字对齐(默认左对齐):
例如
android:gravity="center"
修改文字的大小和颜色:
例如:
android:textSize="24sp"
android:textColor="#00ff00"
Button的监听除了匿名类方式,还可以以实现接口的方式(implements OnclickListener)
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button"
/>
<EditText android:id="@+id/edit_text" android:layout_width="match_parent" android:layout_height="wrap_content" />
添加提示文字:
android:hint="随便写"
最大行数显示限制(写多了行数会增加,因为高度是wrap的)
android:maxLines="2"
Button和EditText的配合:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
editText = (EditText) findViewById(R.id.edit_text);
button.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.button:
//获得输入框中的字符串
String inputText = editText.getText().toString();
//吐司输出
Toast.makeText(MainActivity.this, inputText, Toast.LENGTH_LONG).show();
break;
default:
break;
}
}
<ImageView android:id="@+id/iamge_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" />
这里用warp是保证图片都不管什么尺寸都能显示
利用button改变显示的图片
onCreate中
imageView = (ImageView) findViewById(R.id.iamge_view);
onClick中
imageView.setImageResource(R.drawable.img);
圆形的:
<ProgressBar android:id="@+id/progress_bar" android:layout_width="match_parent" android:layout_height="wrap_content" />
安卓控件的属性:visible、invisible、gone三种。默认都是可见的,gone表示不占用屏幕空间了,但是invisible还占用着,案例:
onCreate中:
progressBar = (ProgressBar) findViewById(R.id.progress_bar);
onClick中:
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.button:
// String inputText = editText.getText().toString();
// Toast.makeText(MainActivity.this, inputText, Toast.LENGTH_LONG).show();
// imageView.setImageResource(R.drawable.img);
if(progressBar.getVisibility()==View.GONE){
progressBar.setVisibility(View.VISIBLE);
}else{
progressBar.setVisibility(View.GONE);
}
break;
default:
break;
}
}
长条形的Bar:
style="?android:attr/progressBarStyleHorizontal"
android:max="100"
在onClick中:
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.button:
AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this);
dialog.setTitle("this is dialog");
dialog.setMessage("something improtant");
dialog.setCancelable(false);
dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// TODO Auto-generated method stub
}
});
dialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// TODO Auto-generated method stub
}
});
dialog.show();
break;
default:
break;
}
}
在onClick中:
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
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;
}
}