Android中UI(User Interface)的基本设计

UI(User Interface)包含四种基本元素,View(视图), ViewGroup(视图组),Fragment(碎片), Activity(活动);

View: 所有可视的界面元素的基类;

ViewGroup:视图类的扩展, 包含多个子视图, 布局管理器;

Fragment: 创建可重用的布局, 把布局分块;

Acitivity: 显示给用户的窗口或屏幕, 需要分配一个视图;

所有可视化组件都是由View类派生来的;

将用户界面分配给Activity, 使用setContentView(), 可以接受一个布局资源的ID(资源), 也可以接受一个单独的视图的实例(new);

findViewById(), 得到布局(layout)中, 每个视图的引用, 可以从parent activity中找到fragment的任何子视图;

布局管理器是对ViewGroup类的继承, 用来控制子控件在UI中的位置, 包含四种常见的布局类:

FrameLayout: 简单的布局管理器, 直接堆积, 默认左上角, 会产生遮掩;

LinearLayout: 垂直方向或水平方向的布局管理;

RelativeLayout: 每一个子视图与其他视图之间, 以及屏幕的相对位置;

GridLayout: 网格视图, 嵌套各种视图和布局;

可以把控件添加嵌套在视图中, 调整参数;

wrap_content: 包含内容的最小尺寸, wrap(包围);

match_parent:填满父类视图;

也可以使用代码实现布局;

作者:csdn博客 Spike_King

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/

时间: 2024-11-03 20:26:11

Android中UI(User Interface)的基本设计的相关文章

android中UI主线程与子线程深入分析_Android

本文较为深入的分析了android中UI主线程与子线程.分享给大家供大家参考.具体如下: 在一个Android 程序开始运行的时候,会单独启动一个Process.默认的情况下,所有这个程序中的Activity或者Service(Service和 Activity只是Android提供的Components中的两种,除此之外还有Content Provider和Broadcast Receiver)都会跑在这个Process. 一个Android 程序默认情况下也只有一个Process,但一个Pr

android中UI主线程与子线程深入分析

本文较为深入的分析了android中UI主线程与子线程.分享给大家供大家参考.具体如下: 在一个Android 程序开始运行的时候,会单独启动一个Process.默认的情况下,所有这个程序中的Activity或者Service(Service和 Activity只是Android提供的Components中的两种,除此之外还有Content Provider和Broadcast Receiver)都会跑在这个Process. 一个Android 程序默认情况下也只有一个Process,但一个Pr

有关Android中Service实现UI更新(Binder的运用)

我们知道Android的程序架构本身即是遵循MVC模式设计的,将显示和逻辑操作进行了很好的分离.xml文件进行view的添加和布局,Activity来实现各种View的展示,而service实现将数据按一定逻辑在View中显示.基于这样的原则我们设计程序时,就需要做到让他们各司其职,合理搭配,如此才能使我们设计的Android程序更高效,更安全以及易于维护,当然这是一个很大很大很大的话题,此处我只对service和Activity的职责进行简单阐述,希望能起到抛砖引玉的作用,当然若内容如有雷同不

Android 中构建快速可靠的 UI 测试_Android

前言 让我一起来看看 Iván Carballo和他的团队是如何使用Espresso, Mockito 和Dagger 2 编写250个UI测试,并且只花了三分钟就运行成功的. 在这篇文章中,我们会探索如何使用Mockito(译者注:Mockito是java编写的一个单元测试框架),Dagger 2 去创建快速可靠的Android UI测试.如果你正在开始编写Android中的UI 测试或者希望改善已有测试性能的开发者,那么这篇文章值得一读. 我第一次在安卓应用中使用UI自动化测试是在几年前使用

Android 中构建快速可靠的 UI 测试

前言 让我一起来看看 Iván Carballo和他的团队是如何使用Espresso, Mockito 和Dagger 2 编写250个UI测试,并且只花了三分钟就运行成功的. 在这篇文章中,我们会探索如何使用Mockito(译者注:Mockito是java编写的一个单元测试框架),Dagger 2 去创建快速可靠的Android UI测试.如果你正在开始编写Android中的UI 测试或者希望改善已有测试性能的开发者,那么这篇文章值得一读. 我第一次在安卓应用中使用UI自动化测试是在几年前使用

界面-Android中Fragment怎样重新加载UI

问题描述 Android中Fragment怎样重新加载UI 有这么一个需求:我从AFragment跳转到了一个Activity,在这个Activity中我做了一些操作(这些操作会让AFragment中使用的数据发生变化,从而选择不同的视图UI),然后点击回退按钮时,我希望AFragment中的界面能够根据Activity中的操作而变化.大神们,帮忙看看! 解决方案 考虑下用事件总线,有两个比较好的库EventBus和Otto 解决方案二: 感觉楼上的方法比较合理,但也可以用比较粗暴的广播的方法

Android实现在子线程中更新Activity中UI的方法_Android

本文实例讲述了Android实现在子线程中更新Activity中UI的方法.分享给大家供大家参考,具体如下: 在Android平台下,进行多线程编程时,经常需要在主线程之外的一个单独的线程中进行某些处理,然后更新用户界面显示.但是,在主线线程之外的线程中直接更新页面显示的问题是:系统会报这个异常: ERROR/AndroidRuntime(1222): android.view.ViewRoot$CalledFromWrongThreadException: Only the original

Android UI技巧(一)——Android中伸缩自如的9patch图片切法,没有美工自给自足

Android UI技巧(一)--Android中伸缩自如的点9图片切法,没有美工自给自足 相信大家对.9 图片应该都很熟悉吧,有些人可能自己都会了,此篇献给那些不会的同学,咱们一起来聊聊.9图片的切法 一.分辨率 其实相对于Android和IOS两大平台来讲,Android的适配问题一直是大家工作上的一个大问题,这里,我做了一个分辨率的对照表,大家先来连接一下这个简单的东西吧 当然,现在2K的屏幕都出来了,不过这个咱不管哈 二.点9切图法 上面了解了大致的分辨率,我们就来切图了,所谓的.9图就

android UI进阶之android中隐藏的layout 抽屉的使用方法_Android

最近在写一个应用,想把设置页面和应用页面放在一起,这样就能实现用户可以实时看到自己的设置对UI的影响,从而更方便的设置用户喜欢的界面.想了一段时间,发现用slidingDrawer这个控件可以实现这个效果.也就是一个抽屉.拉开抽屉,占据半个屏幕,另外半个屏幕还是显示应用页面.效果还是不错的. 今天就和大家分享一下android中这个抽屉效果.其实在android的lanucher就是一个抽屉,打开它就可以看到安装的应用.相信大家都见过用过.下面我们就来做个相同的效果,当然只是UI上差不多相同的效