Android表格布局编程
我学习了如何使用XML文件创建UI。但请帮助我了解如何在不使用XML文件的情况下以编程方式创建UI,特别是对于线性布局以外的应用程序。下面给出了代码示例Android表格布局编程,android,android-tablelayout,Android,Android Tablelayout,我学习了如何使用XML文件创建UI。但请帮助我了解如何在不使用XML文件的情况下以编程方式创建UI,特别是对于线性布局以外的应用程序。下面给出了代码示例 }使用以下代码创建TableLayout TableLayout tbl=new TableLayout(context); 使用以下命令创建表行 TableRow tr=new TableRow(context); 将视图添加到表行中 tr.addView(view); 此处的视图可以是TextView或EditText或ect 将表行
}使用以下代码创建TableLayout
TableLayout tbl=new TableLayout(context);
使用以下命令创建表行
TableRow tr=new TableRow(context);
将视图添加到表行中
tr.addView(view);
此处的视图可以是TextView或EditText或ect
将表行添加到TableLayout中
tbl.addView(tr);
这样,您就可以在表格布局中添加更多的表格行。*|使用Java代码的3 x 3按钮的表格布局:
设置tblRowCwtVal中的行数
设置TBLCWTVAL中的列数
将字符串设置为可在tblAryVar中绘制
在本例中,我们为每个表视图使用了按钮。您可以使用TextView | ImageView并进行相应修改
int-tblRowCwtVal=3;
int-tblcwtval=3;
int[]tblAryVar=
{
{R.drawable.ic_name,R.drawable.ic_name,R.drawable.ic_name},
{R.drawable.ic_name,R.drawable.ic_name,R.drawable.ic_name},
{R.drawable.ic_name,R.drawable.ic_name,R.drawable.ic_name}
};
@凌驾
创建时受保护的void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.srn_nam_uic);
NamrelyVar=(RelativeLayout)findViewById(R.id.NamSrnLyoUid);
TableLayout namTblLyoVar=新的TableLayout(本);
TableLayout.LayoutParams tblLyoRulVar=新的TableLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_内容,ViewGroup.LayoutParams.WRAP_内容);
TableRow.LayoutParams btnLyoRulVar=新的TableRow.LayoutParams(50,50);
对于(int-tblRowIdxVar=0;tblRowIdxVar
它正在正确运行,但未在活动屏幕上显示任何输出……以下是我的codeLayoutParams params=new LayoutParams(LayoutParams.FILL\u PARENT,LayoutParams.WRAP\u CONTENT)TableLayout layout=new TableLayout(this);TableLayout.LayoutParams LayoutParams=新建TableLayout.LayoutParams(LayoutParams.FILL\u父级,LayoutParams.WRAP\u内容);TableRow TableRow=新的TableRow(本);TextView tv=新的TextView(此);tv.setText(“桌面布局演示”);tv.setLayoutParams(参数);EditText et=新的EditText(本);et.setHint(“输入文本”);et.setLayoutParams(参数);tablerow.addView(电视);tablerow.addView(et);layout.addView(tablerow);this.addContentView(布局、布局参数);什么是上下文,我对xamarin和android真的很陌生,我使用了布局设计器
tbl.addView(tr);
int tblRowCwtVal = 3;
int tblColCwtVal = 3;
int[][] tblAryVar =
{
{R.drawable.ic_name, R.drawable.ic_name, R.drawable.ic_name},
{R.drawable.ic_name, R.drawable.ic_name, R.drawable.ic_name},
{R.drawable.ic_name, R.drawable.ic_name, R.drawable.ic_name}
};
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.srn_nam_uic);
namRelLyoVar = (RelativeLayout) findViewById(R.id.NamSrnLyoUid);
TableLayout namTblLyoVar = new TableLayout(this);
TableLayout.LayoutParams tblLyoRulVar = new TableLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
TableRow.LayoutParams btnLyoRulVar = new TableRow.LayoutParams(50,50);
for(int tblRowIdxVar = 0; tblRowIdxVar < tblRowCwtVal; tblRowIdxVar++)
{
TableRow tblRowVar = new TableRow(this);
for(int tblColIdxVar = 0; tblColIdxVar < tblColCwtVal; tblColIdxVar++)
{
Button namIdxBtnVar = new Button(this);
Drawable DrwablIdxVar = getResources().getDrawable(tblAryVar[tblRowIdxVar][tblColIdxVar]);
DrwablIdxVar.setColorFilter(Color.rgb(0,128,0), PorterDuff.Mode.SRC_IN);
namIdxBtnVar.setBackground(DrwablIdxVar);
tblRowVar.addView(namIdxBtnVar, btnLyoRulVar);
}
namTblLyoVar.addView(tblRowVar, tblLyoRulVar);
}
namTblLyoVar.setLayoutParams(tblLyoRulVar);
namRelLyoVar.addView(namTblLyoVar);
}