
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了
通过使用LayoutInflater 每次点击按钮时候去读取布局文件,然后找到布局文件里面的各个VIEW *** 作完VIEW后加载进我们setContentView 方面里面的要放的布局文件里面,每次动态加载文件必需 调用
removeAllViews方法,清除之前的加载进来的 View 。是不是很简单?当然动态加载VIEW
还有许多种方法,多尝试不同写法。可能会领会不一样的心得,祝你早上掌握android 的开发技术。
主要原理:在一个分割出来的大的Layout中(如图中的白色区域),使用layout.removeAllViews()和layout.addView()实现动态加载,其中要使用的LayoutInflater等。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)