java.lang.Object | ||
↳ | android.view.View | |
↳ | android.widget.TextView |
|
|
Android2.2开始两者相同,2.2之前用fill_parent,官方推荐match_parent。
2、layout_gravity与gravity
2.1)gravity:指定控件中文字的对齐方式。
layout_gravity:指定控件在所在布局中的对齐方式。
LinearLayout中:
orientation:vertical时:layout_gravity水平方向的设置有效:left/right/center_horizontal
orientation:horiaontal时:layout_gravity垂直方向设置有效:top/bottom/center_vertical. center 都可以用,总有一个方向生效
2.2)想要设置某个控件居底,可以在空间外加一层LinearLayout并设置其gravity为bottom.
<LinearLayout
...
android:gravity="bottom"
...>
<Button
....../>
</LinearLayout>
3、Button点击事件
3.1)XML:
<Button
...
android:onClick="onClick"/><!--点击事件的方法名-->
public void onClick(View view){
}
3.2)
login_btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View view){
}
}
});//匿名类的方式
3.3)
public class MainActivity extends Activity implements onClickListener{
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
Button button = (Button)findViewById(R.id.button);
button.setOnClickListener(this);
}
@Override
public void onClick(View view){
}
}
3.4)
Button Btn = (Button) findViewById(R.id.button);
Btn2.setOnClickListener(listener);//设置监听
}
Button.OnClickListener listener = new Button.OnClickListener(){//创建监听对象
public void onClick(View v){
}
};
4、EditText
当需要输入EditText中的内容过多时,可以指定最大行数,当达到最大行数时文本就会往上滚动。
android:maxLines="2"
5、ProgressBar/AlertDialog/ProgressDialog
<ProgressBar
android:id="@+id/progressBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/><!-- 可以设置style="?android:attr/progressBarStyleHorizontal"
android:max="100"-->
//AlertDialog/ProgressDialog
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
switch(id){
case R.id.alertDialog:
AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);
alertDialog.setTitle("Warning");
alertDialog.setMessage("This is a warning");
alertDialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
});
alertDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
});
alertDialog.show();
break;
case R.id.progressDialog:
ProgressDialog progressDialog = new ProgressDialog(this);
progressDialog.setTitle("ProgressDialog");
progressDialog.setMessage("loading...");
progressDialog.show();
break;
default:
}
return super.onOptionsItemSelected(item);
}
完整代码在:https://github.com/HiSunny/ComeOnProgressBarAlertDialogProgressDialog.git