private LinearLayout layout
private TextView textView
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
layout = new LinearLayout( this ) // 变量layout是该Activity的成员变量(private LinearLayout layout)
layout.setOrientation( LinearLayout.VERTICAL ) // 设置layout布局方向为垂直
setContentView( layout )
// 接下来向layout中添加TextView
textView = new TextView( this )
textView.setText( "This Is a TextView" )
layout.addView( textView )
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
layout.removeView(textView)
super.onResume()
}
}
但是Activity在启动的时候调用onCreate()之后也会调用onResume()方法,所以进入程序也看不到textview了
可以的,android中使用布局是为了加快开发,最终控件还是通过解析XML后,通过代码添加的。具体方法:
例如你的布局是一个Linearlayout linear上面有一本Button btn1
要删除这个btn1要做的就是 linear.removeView( btn1 )
动态添加也是一样的:
linear.addView( btn2 )
要注意的是,Button btn2 = new Button( context )这时候控件是没有大小的,必须设置控件大小以后添加了才能看到。设置控件大小的方法是view.setLayoutParams()
希望能够帮到你。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)