public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置界面的布局
RelativeLayout relativeLayout = new RelativeLayout(this);
setContentView(relativeLayout);
//添加一个AbsoluteLayout子布局,并给这个布局添加一个button
AbsoluteLayout abslayout=new AbsoluteLayout (this);
abslayout.setId(11);
Button btn1 = new Button(this);
btn1.setText(”this is a abslayout button”);
btn1.setId(1);
AbsoluteLayout.LayoutParams lp0 = new AbsoluteLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,100,0);
abslayout.addView(btn1, lp0 );
//将这个子布局添加到主布局中
RelativeLayout.LayoutParams lp1 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp1.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp1.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
relativeLayout.addView(abslayout ,lp1);
//再添加一个子布局
RelativeLayout relativeLayout1 = new RelativeLayout(this);
Button btn2 = new Button(this);
btn2.setText(”this is a relativeLayout1 button”);
btn2.setId(2);
RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp2.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp2.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
relativeLayout1.addView(btn2 ,lp2);
//将这个布局添加到主布局中
RelativeLayout.LayoutParams lp11 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp11.addRule(RelativeLayout.BELOW ,11);
relativeLayout.addView(relativeLayout1 ,lp11);
}
原文来自: http://www.oschina.net/code/snippet_163910_6212
分享到:
相关推荐
在Android开发中,有时我们需要根据特定需求动态地创建和管理UI元素,比如在用户交互时按需生成按钮、文本输入框等控件。这个过程涉及到Android的布局管理、控件的实例化、事件监听以及视图层次结构的构建。下面我们...
- **Activity和View生命周期**:理解Activity和View的生命周期对何时创建和添加控件至关重要。 - **布局管理器**:LinearLayout、RelativeLayout、ConstraintLayout等布局管理器的工作原理,它们如何管理子视图的...
本教程将深入探讨如何在Android应用中创建一个自定义的导航控件,并通过动态添加控件来实现功能的扩展。我们将主要关注以下几个方面: 1. **自定义视图类**: 自定义导航控件的第一步是创建一个新的视图类,继承自...
5. **优化性能**:虽然动态添加控件提供了灵活性,但过多的动态添加操作可能影响性能。考虑使用可复用的ViewHolder模式(如在RecyclerView中),或者在必要时才进行动态添加。 总之,Android应用程序中的动态添加和...
在Android开发中,有时我们需要根据用户的操作或者特定的业务需求,动态地改变界面中的控件位置。这在创建可交互、灵活多变的用户界面时非常常见,例如游戏中的元素布局调整、聊天应用的消息气泡定位等。这篇博客...
在安卓开发中,有时我们需要根据应用需求在运行时动态创建和添加控件,例如列表、按钮、文本框等。这可以极大地提高应用的灵活性和用户体验。动态添加控件是通过Java代码来实现的,而非在XML布局文件中预先定义。...
在Android开发中,动态生成控件是一项常见的技术需求,它允许开发者在运行时根据需要创建和添加UI元素,而不是在XML布局文件中静态定义。这个"Android高级应用源码-java代码动态生成控件.zip"文件可能包含了一些示例...
"Android 自动生成添加控件"的主题就是针对这种情况提供的一种高效解决方案。它旨在帮助开发者简化工作流程,通过自动化的方式实现控件的动态创建、换行显示以及在屏幕中的滑动居中,从而提高开发效率。 首先,我们...
在IT领域,动态生成控件是一项重要的编程技术,特别是在开发用户界面时。Xamarin是一个流行的跨平台移动应用开发框架,它允许开发者使用C#和.NET框架来构建原生的iOS、Android和Windows应用。本篇将深入探讨Xamarin...
总结,实现一个动态且样式可扩展的Android表格控件,关键在于理解TableLayout的基本用法,以及如何在代码中动态创建和管理视图。同时,结合自定义View和样式设计,可以构建出满足各种需求的表格组件。在实际开发中,...
在Java编程语言中,动态生成控件是一项常用的技术,特别是在Android开发中,它允许开发者在运行时根据需要创建和添加用户界面元素。本教程将深入探讨如何使用Java代码来实现这一功能。 首先,理解控件(Widgets)在...
在Android中,自定义控件是指开发者通过继承已有的View或ViewGroup,然后在其基础上添加新的功能或改变其外观,以满足特定需求的控件。在这个例子中,我们将几个原生的控件组合在一起,形成一个全新的控件,这样不仅...
2. 在XML布局文件中添加控件: ```xml android:id="@+id/process_chart" android:layout_width="match_parent" android:layout_height="wrap_content" /> ``` 3. 初始化并设置数据: ```java ProcessChart ...
在安卓开发中,动态添加控件是一项常见的需求,特别是在创建可扩展、自适应用户界面时。动态添加控件指的是在程序运行时,根据需要通过代码创建并添加到布局中的控件,而不是在XML布局文件中预先定义。这种方法使得...
本资源"android表格控件动态生成表格源码"提供了一种解决方案,它基于Eclipse IDE,可以帮助开发者实现动态生成表格的功能,同时解决了表格内容显示不全的问题,通过集成滚动条确保所有数据都能被用户查看。...
在Android开发中,动态加载控件是一项重要的技术,它允许应用程序在运行时根据需要加载和显示用户界面元素,而不是在编译时固定。这为开发者提供了更大的灵活性,特别是在处理复杂和可变的用户界面或者更新UI组件时...
6. **在布局文件中使用**:最后,将自定义控件添加到项目的`res/layout`目录下的XML布局文件中,通过`<com.example.SaRoundProgressBar>`标签引用,并可以设置之前定义的属性。 saRoundProgressBarDemo的具体实现...
在Android开发中,"完美下拉框控件"通常指的是具有高效、自定义化和用户体验优良的Spinner组件。Spinner是Android SDK提供的一种基础UI控件,用于实现下拉选择的效果,它可以在用户点击后弹出一个列表供用户选择。本...
在Android开发中,给控件添加动画是一种提升用户体验的有效手段,可以使用户界面更加生动和吸引人。本篇文章将深入探讨如何在Android应用中为控件添加动画,包括基本的动画类型、实现方式以及最佳实践。 一、动画...