[Android开发学习24]界面布局之表格布局TableLayout+TableRow

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[Android开发学习24]界面布局之表格布局TableLayout+TableRow 一、基础知识:
TableLayout置底,TableRow在TableLayout的上面,而Button、TextView等控件就在TableRow之上, 另外,TableLayout之上也可以单独放控件。TableLayout是一个使用复杂的布局,最简单的用法就仅 仅是拖拉控件做出个界面,但实际上,会经常在代码里使用TableLayout,例如做出表格的效果。

android:collapseColumns:以第0行为序,隐藏指定的列 android:shrinkColumns:以第0行为序,自动延伸指定的列填充可用部分 android:stretchColumns:以第0行为序,尽量把指定的列填充空白部分
二、方案一代码展示: 方案一采用xml布局,在代码中除了显示layout之外,未作任何布局相关的操作。 1."Acticity_06\src\yan\acticity_06\MainActivity.java" [java] package yan.activity_06;A import android.os.Bundle;A import android.app.Activity;A public class MainActivity extends Activity {A AAAAAAA AAA @OverrideAAA AAA public void onCreate(Bundle savedInstanceState) {AAA AAAAAAA super.onCreate(savedInstanceState);AAA AAAAAAA setContentView(yout.activity_main);AAA AAA }A }A package yan.activity_06; import android.os.Bundle; import android.app.Activity; public class MainActivity extends Activity { AAAAA AAA @OverrideA AAA public void onCreate(Bundle savedInstanceState) {A AAAAAAA super.onCreate(savedInstanceState);A AAAAAAA setContentView(yout.activity_main);A AAA } } 2."Activity_06\res\layout\activity_main.xml" [html]A <TableLayout xmlns:android="/apk/res/android"A AAA xmlns:tools="/tools"A AAA android:layout_width="fill_parent"A AAA android:layout_height="fill_parent"A AAA tools:context=".MainActivity"A AAA android:stretchColumns="0" >A A<TableRow>A AAAAAAA <TextViewA AAAAAAAAAAA android:text="第一行第一列"A AAAAAAAAAAA android:background="#aa0000"A AAAAAAAAAAA android:padding="3dip" />A AAAAAAA <TextViewA AAAAAAAAAAA android:text="第一行第二列"A AAAAAAAAAAA android:padding="3dip"A AAAAAAAAAAA android:gravity="center_horizontal"A AAAAAAAAAAA android:background="#00aa00"A AAAAAAAAAAA ></TextView>A AAAAAAA <TextViewA AAAAAAAAAAA android:text="第一行第三列"A AAAAAAAAAAA android:gravity="right"A AAAAAAAAAAA android:background="#0000aa"A AAAAAAAAAAA android:padding="3dip" />A AAA </TableRow>A AAA <TableRow>A AAAAAAA <TextViewA AAAAAAAAAAA android:text="第二行第一列"A AAAAAAAAAAA android:padding="3dip" />A AAAAAAA <TextViewA AAAAAAAAAAA android:text="第二行第二列"A AAAAAAAAAAA android:gravity="right"A AAAAAAAAAAA android:padding="3dip" />A AAA </TableRow>A AAAAA AAA <TextViewA AAA android:layout_width="wrap_content"A AAA android:layout_height="wrap_content"A AAA android:text="@string/hello_world" />A </TableLayout>A <TableLayout xmlns:android="/apk/res/android" AAA xmlns:tools="/tools" AAA android:layout_width="fill_parent" AAA android:layout_height="fill_parent" AAA tools:context=".MainActivity" AAA android:stretchColumns="0" > A<TableRow> AAAAAAA <TextView AAAAAAAAAAA android:text="第一行第一列" AAAAAAAAAAA android:background="#aa0000" AAAAAAAAAAA android:padding="3dip" /> AAAAAAA <TextView AAAAAAA Aandroid:text="第一行第二列" AAAAAAA Aandroid:padding="3dip" AAAAAAA Aandroid:gravity="center_horizontal" AAAAAAAAAAA android:background="#00aa00" AAAAAAA A></TextView> AAAAAAA <TextView AAAAAAAAAAA android:text="第一行第三列" AAAAAAAAAAA android:gravity="right" AAAAAAAAAAA android:background="#0000aa" AAAAAAAAAAA android:padding="3dip" /> AAA </TableRow> AAA <TableRow> AAAAAAA <TextView AAAAAAAAAAA android:text="第二行第一列" AAAAAAAAAAA android:padding="3dip" /> AAAAAAA <TextView AAAAAAAAAAA android:text="第二行第二列" AAAAAAAAAAA android:gravity="right" AAAAAAAAAAA android:padding="3dip" /> AAA </TableRow> AAA AAA <TextView AAA android:layout_width="wrap_content" AAA android:layout_height="wrap_content" AAA android:text="@string/hello_world" /> </TableLayout> 三、方案二代码展示: 方案二采用代码布局,在layout文件中除了显示一个空的TabLayout之外,未作任何其它布局。 1."Acticity_06\src\yan\acticity_06\MainActivity.java" [java] package yan.activity_06;A import import import import import import android.os.Bundle;A android.view.ViewGroup;A android.widget.TableLayout;A android.widget.TableRow;A android.widget.TextView;A android.app.Activity;A
public class MainActivity extends Activity {A AAA /** Called when the activity is first created. */AAA AAA private final int WC = youtParams.WRAP_CONTENT;AAA AAA private final int FP = youtParams.FILL_PARENT;AAA AAAAAAA AAA @OverrideAAA AAA public void onCreate(Bundle savedInstanceState) {AAA AAAAAAA super.onCreate(savedInstanceState);AAA AAAAAAA setContentView(yout.activity_main);AAA AAAAAAA //新建TableLayout01的实例AAAAA AAAAAAA TableLayout tableLayout = (TableLayout)findViewById(R.id.TableLayout01);AAA AAAAAAA //全部列自动填充空白处AAAAA AAAAAAA tableLayout.setStretchAllColumns(true);AAA AAAAAAA //生成10行,8列的表格AAAAA AAAAAAA for(int row=0;row<10;row++)AAA AAAAAAA {AAA AAAAAAAAAAA TableRow tableRow=new TableRow(this);AAA AAAAAAAAAAA for(int col=0;col<8;col++)AAA AAAAAAAAAAA {AAA AAAAAAAAAAAAAAA //tv用于显示AAAAA AAAAAAAAAAAAAAA TextView tv=new TextView(this);AAA AAAAAAAAAAAAAAA tv.setText("("+col+","+row+")");AAA AAAAAAAAAAAAAAA tableRow.addView(tv);AAA AAAAAAAAAAA }AAA AAAAAAAAAAA //新建的TableRow添加到TableLayoutAAAAA AAAAAAAAAAA tableLayout.addView(tableRow, new youtParams(FP, WC));AAA AAAAAAA }AAA AAA }A }A package yan.activity_06; import import import import import import android.os.Bundle; android.view.ViewGroup; android.widget.TableLayout; android.widget.TableRow; android.widget.TextView; android.app.Activity;
相关文档
最新文档