Android 在布局容器中动态添加控件
这里,通过一个小demo,就可以掌握在布局容器中动态添加控件,以动态添加Button控件为例,添加其他控件同样道理。
1、addView
添加控件到布局容器
2、removeView
在布局容器中删掉已有的控件
3、使用,来个小demo就明白了
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 生成一个LinearLayout,作为布局容器来动态添加3个Button
final LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
setContentView(layout);
// 生成3个Button
final Button btn1 = new Button(this);
btn1.setText("1");
btn1.setText("Button1");
final Button btn2 = new Button(this);
btn2.setText("2");
btn2.setText("Button2");
final Button btn3 = new Button(this);
btn3.setText("3");
btn3.setText("Button3");
// 动态把三个Button添加到
layout.addView(btn1);
layout.addView(btn2);
layout.addView(btn3);
// 点击按钮时,先把原来在布局容器layout上的删掉,再添加上局容器layout,这样本次添加的控件就会排序到最后,以理解动态添加控件的思路
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
layout.removeView(btn1);
layout.addView(btn1);
}
});
// 同btn1一样道理
btn2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
layout.removeView(btn2);
layout.addView(btn2);
}
});
// 同btn1一样道理
btn3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
layout.removeView(btn3);
layout.addView(btn3);
}
});
setContentView(layout);
}
}
4、上图


Android 在布局容器中动态添加控件的更多相关文章
- VC中动态添加控件
VC中动态添加控件 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个 ...
- 怎样在不对控件类型进行硬编码的情况下在 C#vs 中动态添加控件
文章ID: 815780 最近更新: 2004-1-12 这篇文章中的信息适用于: Microsoft Visual C# .NET 2003 标准版 Microsoft Visual C# .NET ...
- android 在布局中动态添加控件
第一步 final LayoutInflater inflater = LayoutInflater.from(this); 第二步:获取需要被添加控件的布局 final LinearLayout l ...
- MFC中动态添加控件----寻找多年的秘籍,吐血推荐
原文作者tianwaik 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立 ...
- 结合ItemsControl在Canvas中动态添加控件的最MVVM的方式
今天很开心的收获: ItemsControl 中 ItemsPanel的重定义和 ItemContainerStyle 以及 ItemTemplate 三者的巧妙结合,在后台代码不实例化任何控件的前提 ...
- WinForm中动态添加控件 出现事件混乱,解决办法记录。
还是在抢票软件中出的问题,我没点击一个联系人,要生成一排控件,其中有席别combobox这样的下拉框控件,会出现如下图所示的问题:问题描述:在代码中动态创建的控件,事件混乱了,一个控件触发了所有同类型 ...
- Android中动态改变控件的大小的一种方法
在Android中有时候我们需要动态改变控件的大小.有几种办法可以实现 一是在onMeasure中修改尺寸,二是在onLayout中修改位置和尺寸.这个是可以进行位置修改的,onMeasure不行. ...
- WPF:理解ContentControl——动态添加控件和查找控件
WPF:理解ContentControl--动态添加控件和查找控件 我认为WPF的核心改变之一就是控件模型发生了重要的变化,大的方面说,现在窗口中的控件(大部分)都没有独立的Hwnd了.而且控件可以通 ...
- winform导入导出excel,后台动态添加控件
思路: 导入: 1,初始化一个OpenFileDialog类 (OpenFileDialog fileDialog = new OpenFileDialog();) 2, 获取用户选择文件的后缀名(s ...
随机推荐
- NAT/PAT
NAT/PAT 编辑 NAT就是网络地址翻译的英文缩写,在路由器上配置NAT服务,可提供公司内100~200人同时上网的服务.不需要Proxy Server,所有的服务都可顺利使用(除Netmeeti ...
- LINUX下 my.cnf php.ini的位置
my.cnf:/etc/ php.in:/usr/local/php/etc/
- 微信内测"微视频" 朋友圈可以发6-8秒短视频
我们在发朋友圈时现在只能发文字和图片,图片又分为从相册中选择和直接拍摄照片,以后朋友圈拍6-8秒短视频可能是一种新的内容形式,作为文字和图片外的补充.因为微信开始内测新功能“微视频”,其产品理念与微视 ...
- 调用{dede:likewords}为dedecms添加相关搜索词
经常看到一些大型的网站会设置相关搜索,即使访客搜索的内容在本站暂时没有,它们也会展示一些其他搜索关键词,引导用户去点击查看,增加pv,提高用户体验:如果没有这些相关搜索,游客没有找到自己想要的内容就直 ...
- Memcached的配置和使用
1.下载windows版本,64位下载地址: http://s3.amazonaws.com/downloads.northscale.com/memcached-win64-1.4.4-14.zip ...
- 变色龙安装程序 Chameleon Install 2.2 svn 2281发布
变色龙安装程序 Chameleon Install 2.2 svn 2281发布 1.更好的支持10.9 Mavericks2.更新ATi.nVidia显卡支持列表3.添加新的 CPU Model I ...
- IOS 使用横屏
http://lizhuang.iteye.com/blog/1684881 在iPad应用开发时如何让设备只支持横屏(landscape)模式,我做了多次尝试,并没有发现比较简捷的设置方法.我尝试了 ...
- 关于 CAS 不能登录的问题
经过排查,是因为 Capistrano 部署中设置了 http_proxy.此时通过 cas.m.xxxx.com 域名去访问 CAS 服务时,就不通了,需要修改为 IP 来访问. 但是公司的 CAS ...
- Linux netstat详解
做计算机管理员,我们都必要了解一下netstat这个命令,它是一个查看网络连接状态的工具,在windows下也默认有这个工具.Netstat命令详解 netstat命令怎样使用 如何关闭TIME_WA ...
- QQ,MSN,Skype在线客服代码
QQ,MSN,Skype在线客服代码 在网站建设时,为了更好的实施网站的营销型,会用到QQ,MSN等在线交流,以便客户能够快捷方便的联系我们.在这里,提供QQ,MSN的在线客服代码给大家分享: 1.Q ...