Android学习笔记十五之TableLayout表格布局
TableLayout表格布局,类似于表格,与前面介绍的LinearLayout和RelativeLayout类似,介绍一下常用的属性:
- android:collapseColumns:设置需要被隐藏的列的序号
- android:shrinkColumns:设置允许被收缩的列的列序号
- android:stretchColumns:设置运行被拉伸的列的列序号
下面用TableLayout实现一个简单的登录页面:
布局代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="0,3">
<TableRow>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:gravity="center"
android:paddingLeft="8dp"
android:paddingRight="8dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户名:"
android:textSize="18sp" />
<EditText
android:id="@+id/et_username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入用户名" />
</LinearLayout>
</TableRow>
<TableRow>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:gravity="center"
android:paddingLeft="8dp"
android:paddingRight="8dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密 码:"
android:textSize="18sp" />
<EditText
android:id="@+id/et_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入密码"
android:inputType="textPassword" />
</LinearLayout>
</TableRow>
<TableRow>
<Button
android:id="@+id/btn_sign_in"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:text="登录" />
</TableRow>
</TableLayout>
</LinearLayout>
Acvitity代码:
private EditText et_username;
private EditText et_password;
private Button btn_sign_in;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tablayout);
et_username = (EditText) findViewById(R.id.et_username);
et_password = (EditText) findViewById(R.id.et_password);
btn_sign_in = (Button) findViewById(R.id.btn_sign_in);
btn_sign_in.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String username = et_username.getText().toString().trim();
String password = et_password.getText().toString().trim();
if (username.equals("zhangsan") && password.equals("zhangsan")) {
Toast.makeText(TableLayoutActivity.this, "登录成功", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(TableLayoutActivity.this, "登录失败", Toast.LENGTH_LONG).show();
}
et_username.setText("");
et_password.setText("");
}
});
}
实现效果图:
附上TableLayout的国内镜像API
关于TableLayout就介绍到这里,比较简单。下面我们介绍FrameLayout帧布局。