我们知道,android中一个activity对应一个xml的UI配置文件,除了用xml文件配置的方式创建用户界面外,还可以使用代码编程的方式来创建一个用户界面。如果用户界面需要在运行过程中动态生成的时候,这种方法就非常有用。其基本原理就是用UI的控件类来实现UI的布局和生成。实现方式比如如下:
package com.example.uicode; import android.os.Bundle; import android.view.ViewGroup.LayoutParams; import android.widget.Button; import android.widget.LinearLayout; import android.widget.TextView; import android.app.Activity; public class UICodeActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.main); //视图参数 LayoutParams params = new LinearLayout.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT); //创建layout LinearLayout layout = new LinearLayout(this); layout.setOrientation(LinearLayout.VERTICAL); //创建TextView视图 TextView tv = new TextView(this); tv.setText("This is a TextView"); tv.setLayoutParams(params); //创建Button视图 Button button = new Button(this); button.setText("This is a Button"); button.setLayoutParams(params); //把视图添加到layout中 layout.addView(tv); layout.addView(button); //为layout创建一个参数 LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT); this.addContentView(layout, layoutParams); } }