andriod 动态创建控件
Button btNext=(Button)findViewById(R.id.next);
btNext.setOnClickListener(new Button.OnClickListener(){
public void onClick(View view){
//创建一个布局管理器控件
LinearLayout linearLayout=new LinearLayout(MainActivity.this);
setContentView(linearLayout);
//设置orientation为horizontal,1表示为vertical
linearLayout.setOrientation(0);
TextView tvSecond=new TextView(MainActivity.this);
tvSecond.setText("这是Android奉献给你的第二个页面");
Button btNext2=new Button(MainActivity.this);
btNext2.setText("下一步");
btNext2.setId(2);
LinearLayout.LayoutParams lp1 = new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
linearLayout.addView(tvSecond,lp1);
linearLayout.addView(btNext2,lp1);
btNext2.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
//这次只放置一个TextView不需要布局管理器
TextView tv3=new TextView(MainActivity.this);
tv3.setText("恭喜你已来到最后一个页面!");
//直接让页面显示一个TextView
setContentView(tv3);
}
});
}
});
类似
Button btNext=(Button)findViewById(R.id.next);
btNext.setOnClickListener(new ButtonCreateClickListener()); }
private class ButtonCreateClickListener implements View.OnClickListener {
public void onClick(View view) {
//创建一个布局管理器控件
LinearLayout linearLayout = new LinearLayout(MainActivity.this);
setContentView(linearLayout);
//设置orientation为horizontal,1表示为vertical
linearLayout.setOrientation(0);
TextView tvSecond = new TextView(MainActivity.this);
tvSecond.setText("这是Android奉献给你的第二个页面");
Button btNext2 = new Button(MainActivity.this);
btNext2.setText("下一步");
btNext2.setId(2);
LinearLayout.LayoutParams lp1 = new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
linearLayout.addView(tvSecond, lp1);
linearLayout.addView(btNext2, lp1);
btNext2.setOnClickListener(new btNext2ClickListener());
}
} private class btNext2ClickListener implements View.OnClickListener { public void onClick(View v) {
//这次只放置一个TextView不需要布局管理器
TextView tv3 = new TextView(MainActivity.this);
tv3.setText("恭喜你已来到最后一个页面!");
//直接让页面显示一个TextView
setContentView(tv3); }
}
创建按钮
Button btNext=(Button)findViewById(R.id.next);
btNext.setOnClickListener(new ButtonCreateClickListener()); }
private class ButtonCreateClickListener implements View.OnClickListener {
public void onClick(View view) { //创建一个button按钮
Button btn1 = new Button( MainActivity.this);
btn1.setText("this is a button");
btn1.setId(1);
TableLayout pTableLayout=(TableLayout)findViewById(R.id.table2);
pTableLayout.addView(btn1); }
}
可以是
private class ButtonCreateClickListener implements View.OnClickListener {
public void onClick(View view) {
//创建一个button按钮
Button btn1 = new Button( MainActivity.this);
btn1.setText("this is a button");
btn1.setId(1);
TableRow pTableRow=(TableRow)findViewById(R.id.TableRow2);
pTableRow.addView(btn1);
}
}
andriod 动态创建控件的更多相关文章
- 小子给大家分享一个或者多个新手创建tableview经常会遇到的坑(动态创建控件,xib的重用)
小子最近做了一个根据接口返回的数据在Cell中动态创建控件,感觉应该会一部分人卡在这里,小子就跟大家分享一下: 1.控件重复创建:这个问题出现的原因是动态创建的cell内容的时候,无法进行重用设置,所 ...
- VisionPro笔记(1):动态创建控件
VisionPro学习笔记(1):动态创建控件 有的时候可能需要在程序中动态创建控件,VisionPro实例中提供了一例动态创建Blob控件的方法.当然,动态创建过多的控件会极大的消耗系统的资源,建 ...
- 【转载】MFC动态创建控件及其消息响应函数
原文:http://blog.sina.com.cn/s/blog_4a08244901014ok1.html 这几天专门调研了一下MFC中如何动态创建控件及其消息响应函数. 参考帖子如下: (1)h ...
- MFC动态创建控件及其消息响应函数
这几天专门调研了一下MFC中如何动态创建控件及其消息响应函数. 参考帖子如下: (1)http://topic.csdn.net/u/20101204/13/5f1b1e70-2f1c-4205-ba ...
- delphi动态创建控件
动态创建控件 其实动态创建控件很简单,相信看过本文后你会全明白的. 1 先在单元的initialization 部分注册它,(这样在单元使用时会自动注册的)如: RegisterClass( TBut ...
- MFC 动态创建控件
动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个容器,一 ...
- 在DELPHI中动态创建控件以及控件的事件
在DELPHI中我们经常要动态的创建控件以及控件的事件.例如,我们可能想根据程序需要动态的创建一些Tshape组件来创建某个图形,并使得在鼠标移动上去之后可以完成某些操作.这一般需要需要三步: 生成一 ...
- Winfrom动态创建控件
FlowLayoutPanel flowLayoutPanel1 = new FlowLayoutPanel();for (int i = 0; i < 9; i++){ Button b ...
- 动态创建控件 #Create(...)
在类中创建一个控件对象;例:CButton m_btn; 用Create创建一个对象(#其实已经与其绑定)m_btn.Create(.....); #注意Create()函数的参数 问题一:点击一个b ...
随机推荐
- ionic button笔记
源码文件:_button.scss 和 _button-bar.scss,以及_variables.scss(66行-163行). 按钮是手机app不可或缺的一部分,不同风格的app,需要的按钮多种多 ...
- [LeetCode] Longest Valid Parentheses 动态规划
Given a string containing just the characters '(' and ')', find the length of the longest valid (wel ...
- java框架篇---spring IOC 实现原理
IOC(DI):其实这个Spring架构核心的概念没有这么复杂,更不像有些书上描述的那样晦涩.java程序员都知道:java程序中的每个业务逻辑至少需要两个或以上的对象来协作完成,通常,每个对象在使用 ...
- SEO优化之Title 和 Meta 标签
对搜索引擎最友好(Search Engine Friendly)的网页是静态网页,但大部分内容丰富或互动型网站都不可避免采用到相关技术语言来实现内容管理和交互功能.SEO 思想指导下的技术支持,主要是 ...
- JavaScript Scoping and Hoisting
JavaScript中所有变量及函数名会自动提升 http://www.cnblogs.com/betarabbit/archive/2012/01/28/2330446.html
- Gamma Gamma~!!!
左图是没有进行gamma矫正的,右图是进行了gamma矫正的.以前一直以为是Tone Map的公式计算有问题,后来看PBR的paper时候,终于明白了gamma的重要性,一改,果然发现颜色不想以前那么 ...
- C# 装箱与拆箱
知识点 值类型. 值类型是在栈中分配内存,在声明时初始化才能使用,不能为null. 值类型超出作用范围系统自动释放内存. 主要由两类组成:结构,枚举(enum),结构分为以下几类: ...
- ruby -- 进阶学习(十二)fragment cache
基于rails4.0环境 Rails 页面缓存的方法很多,最近弱弱地尝试了fragment cache,用法还算简单~@_@|| 首先,查看config/environment/production. ...
- Java --计算百分比
Learn From: http://blog.csdn.net/maggiehexu/article/details/6387636 方法一: public String getPercent(in ...
- C++ async task
最近在搞Android 开发,里面多线程的使用比较频繁,java多线程接口很方便. Thread, AysncTask, Handler 这些接口比起posix提供的pthread_create()等 ...