1 控件都是放在容器里面的,也就是各种 layout ,我们动态添加实际就是向这里添加
例如
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/RelativeLayout" // android 都是根据 ID 来操作控件等,这个很重要,一般自动生成的文件没有,需要自己添加
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
2 在添加的时候首先要根据 目标layout 的id得到这个容器
代码片段:
my_first_lay = (RelativeLayout) findViewById(R.id.RelativeLayout); // 得到要添加新控件的 layout
Button my_new_button = new Button(MainActivity.this); // 新建一个button
my_new_button.setText("随机生成一个");
RelativeLayout.LayoutParams msl1 = new RelativeLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
msl1.leftMargin = 50;
msl1.topMargin = 100;
my_first_lay.addView(my_new_button); // 添加完成!!