android基础知识(4) ----小常识
来源:互联网 发布:我是山姆 知乎 编辑:程序博客网 时间:2024/04/29 21:10
android入门基础(4)
----单位与组件,控件
单位问题:
dp也就是dip。这个和sp基本类似。如果设置表示长度、高度等属性时可以使用dp 或sp。但如果设置字体,需要使用sp。dp是与密度无关,sp除了与密度无关外,还与scale无关。如果屏幕密度为160,这时dp和sp和px是一样的。1dp=1sp=1px,但如果使用px作单位,如果屏幕大小不变(假设还是3.2寸),而屏幕密度变成了320。那么原来TextView的宽度设成160px,在密度为320的3.2寸屏幕里看要比在密度为160的3.2寸屏幕上看短了一半。但如果设置成160dp或160sp的话。系统会自动将width属性值设置成320px的。也就是160 * 320 / 160。其中320 / 160可称为密度比例因子。也就是说,如果使用dp和sp,系统会根据屏幕密度的变化自动进行转换。
组件和控件的区别
控件就是具有用户界面的组件,组件不需要显示任何信息或用户界面。
在 .NET框架中,术语控件和组件为 .NET赋予了专门的意义。Component类为被用于设计层面的对象如 Windows Forms Designer(Windows窗体设计器)或 Web Forms Designer(Web窗体设计器)提供了基本实现。某个 Component是任何可以被拽到某个窗体的任何东西。Component类实现IComponent,ISite和 IContainer。
控件是一个用用户界面的组件——能绘制东西并能与用户交互。Control类还是所有托管窗口类的基类——窗体、按钮、栅格、面板、工具栏等等。Control类是定义 WndProc和 ClientSize以及所有标准窗口事件如 GotFocus和 Click的地方。Web控件(System.Web.UI.Control)也是组件,不过从严格的意义上讲,它不是从 System.ComponentModel.Component 派生的。(对于 Web控件,其名字空间为 System.Web.UI,Control本身实现 IComponent。)
1、Component在Run Time时不能呈现UI,而Control可以在Run Time时呈现UI(但是vs 2005里的asp.net中的SqlDataSource是Control,但是它不能呈现UI)。
2、Component是贴在容器Container上的,而Control则是贴在Windows Form或者Web Form上的。
举例来说,SqlCommand是个Component,DataGrid则是一个Control。
在MFC里习惯称为控件,因为大家都继承自Control类;而在Java的JFC(AWT/Swing)领域则称为组件(Component)并且都是Component类的子类,没有Controller这一说法。所以及至web开发领域,我认为大家还是可以按照老习惯,.net的象楼上兄台这样区分,java的则称为UI组件,逻辑组件等等而无需冠以控件之名。
我们学校一位教授更有不同看法,他认为控件关键在于“控”,只有象Button这类东西才能叫控件(在VB里Button叫Command),而TextField等则不能叫控件。
- android基础知识(4) ----小常识
- CPU小常识,cpu基础知识
- Android 小常识
- Android UI小常识
- Android ListView小常识
- Android Studio小常识
- android小常识
- Android小白常识
- android——小常识
- Android,Java编程小常识
- android开发-常识小测试
- 硬件小常识(2)
- 日常生活小常识(5)
- 日常生活小常识(7)
- 日常生活小常识(9)
- 日常生活小常识(10)
- 日常生活小常识(11)
- 日常生活小常识(13)
- nachos 缺页置换
- 嵌入式操作系统介绍
- 小结:C++中如何用new动态开辟二维数组
- 查看那些表使用了表分区
- hadoop mapreduce核心功能描述
- android基础知识(4) ----小常识
- Struts2全视图以及常用的视图类型
- Linux 文件系统剖析
- 堆和栈的区别
- Linux多线程函数解析
- Oacle SQL error codes.
- oracle10g http server HTMLDB
- centos安装后导致原有的ubuntu无法启动的解决方法
- ZOJ2096 Door to Secret, 双调DP