自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(89)
  • 收藏
  • 关注

Vaadin Web应用开发教程(38):使用主题-概述

在前面介绍Vaadin的UI组件及布局时,特地没有介绍这些UI组件对应的CSS设置,而是留在这里介绍Vaadin 主题时一并说明。Vaadin应用可以通过主题(Theme)来修改界面的外观,用户主题包括Css文件,自定义的HTML 布局及使用的图像等。主题资源(Theme Resource)可以通过ThemeResource类访问 。用户自定义的主题必须放置在目录WebContent/VA...

2012-08-31 21:38:00 67

Android ApiDemos示例解析(146):Views->Layouts->LinearLayout->6. Uniform Size

本例使用给LinearLayout 宽度和高度设为wrap_content 和将子View大小设为match_parent ,从而实现所有子View具有同样的大小:wrap_content: 告诉View使用能包含其内容的尺寸 (类似于WinForm 中AutoSize)。fill_parent(或match_parent 从Level 8起): 子View扩展为其父容器尺...

2012-08-31 06:55:00 52

Vaadin Web应用开发教程(37):可视化界面编辑插件

前面基本介绍了Vaadin提供的各种UI组件和布局,所以界面都是通过代码来完成的。安装Vaadin的Eclipse插件后,可以通过拖拉的方式来开始话设计用户界面。设计出的界面为CustomComponent的派生类。使用CustomComponent的基本方法如下:并可以参见Vaadin Web应用开发教程(27):UI组件-自定义组件public class MyApplication...

2012-08-31 06:53:00 94

Vaadin Web应用开发教程(36):UI布局-AbsoluteLayout 布局

AbsoluteLayout 布局允许将其中的UI组件任意指定其位置。方法addComponent()可以指定相对于AbsoluteLayout边界的纵横坐标。还可以指定一个Z方向深度值,用来表示UI组件的前后顺序。UI组件的位置是通过left,right,top,bottom 及z-index 来指定(CSS对应的属性)// A 400x250 pixels size layoutAb...

2012-08-30 06:58:00 93

Android ApiDemos示例解析(145):Views->Layouts->LinearLayout->5.Simple Form

本例利用LinearLayout 构造一个输入表单,并使用layout_gravity 对齐来布置按钮显示的位置。LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”android:orientation=”vertical”android:background=”@drawable/...

2012-08-30 06:55:00 78

Android ApiDemos示例解析(144):Views->Layouts->LinearLayout->4. Horizontal

本例介绍了LinearLayout 水平布局的基本用法:<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”android:orientation=”horizontal”android:layout_width=”match_parent”android:layout_height=”m...

2012-08-29 06:53:00 56

Vaadin Web应用开发教程(35):UI布局-Accordion布局

Accordion布局类似TabSheet,不过是以垂直方式安排多个标签页,其使用方法也和TabSheet布局类似。// Create the Accordion.Accordion accordion = new Accordion(); // Have it take all space available in the layout.accordion.setSizeFull()...

2012-08-29 06:50:00 61

Android ApiDemos示例解析(143):Views->Layouts->LinearLayout->3. Vertical (Padded)

在LinearLayout中支持为子View设置权重(weight) ,水平或是垂直排列的子View有时并不能铺满整个屏幕,这些剩余的空间就由那些有权重的View占满。View缺省的权重为0(layout_weight=0).使用权重的一个基本算法,LinearLayout 剩余的空间有所有有“权重”的View按照其权值按比例分配大小。本例LinearLayout 的三个子View,只有第...

2012-08-28 06:48:00 49

Vaadin Web应用开发教程(34):UI布局-TabSheet布局

TabSheet布局支持标签显示。TabSheet布局通过方法 addTab()添加一个标签页。// Create an empty tab sheet.TabSheet tabsheet = new TabSheet(); // Make the tabsheet shrink to fit the contents.tabsheet.setSizeUndefined();tab...

2012-08-28 06:46:00 71

Android ApiDemos示例解析(142):Views->Layouts->LinearLayout->2. Vertical (Fill Screen)

所有的ViewGroup(Layout类的基类)都包含width 和height 属性(layout_width 和layout_height),所有的View都必须定义这两个值。layout_width 和layout_height 允许使用绝对值来定义(如像素值),当为了使UI能够自适应屏幕大小,一般不使用绝对值来定义View的宽度和高度。可以使用如下两个常量:wrap_conten...

2012-08-27 06:40:00 52

Vaadin Web应用开发教程(33):UI布局-HorizontalSplitPanel和VerticalSplitPanel布局

HorizontalSplitPanel和VerticalSplitPanel为水平和垂直分割窗口,可以将空间分成上下或左右两部分。用户可以通过中间的分隔条调整两部分的大小。可以通过setFirstComponent()和setFirstComponent()为分隔的两部分设置不同的UI组件, addComponent()也可以依次添加两个UI组件。// Have a panel to p...

2012-08-27 06:38:00 128

Vaadin Web应用开发教程(32):UI布局-Panel

Panel 为带有边框和标题的简单容器类,它的客户区为一布局对象,其缺省布局方式为VerticalLayout,可以通过setContent来修改缺省布局。Panel的标题可以由图标和文字构成.// Create a panel with a caption.final Panel panel = new Panel("Contact Information");panel.addS...

2012-08-26 08:57:00 94

Android ApiDemos示例解析(141):Views->Layouts->LinearLayout->1. Vertical

LinearLayout 将其子View顺序排成一行或是一列,一个垂直列表每行将只有一个子元素(无论它们有多宽),一个水平列表只是一列的高度(最高子元素的高度来填充)。本例介绍了LinearLayout 的基本用法,LinearLayout的方向可以使用android:orientation 来定义,可以指定vertical 或是 horizontal ,缺省为横向horizontal。&...

2012-08-26 08:53:00 45

Android ApiDemos示例解析(140):Views->Layouts->Baseline->Nested Example 3

本例使用了两层LinearLayout嵌套:<!– We’ll point to the linear layout to baseline align by, whichin turn will point to a text view inside of it –><LinearLayoutandroid:orientation=”vertical...

2012-08-25 20:45:00 47

Android ApiDemos示例解析(139):Views->Layouts->Baseline->Nested Example 2

本例和上例类似,只是将其中一个子LinearLayout的orientation从vertical 改成horizontal,同样去掉android:layout_gravity=”center_vertical”<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”android:...

2012-08-25 09:38:00 73

Vaadin Web应用开发教程(31):UI布局-FormLayout布局

FormLayout布局为使用表单(Form)时的缺省布局方式。它通常将Field组件的标题和输入域并排以两列的方式显示,并可以显示可选的必填标识。在用户输入错误时显示错误提示。Form本身可以有标题,错误提示,表单尾注等,具体参见Vaadin Web应用开发教程(23):UI组件-Form组件FormLayout布局的基本用法如下:// A FormLayout used outside t...

2012-08-25 09:35:00 69

Vaadin Web应用开发教程(30):UI布局-GridLayout布局

GridLayout布局使用网格来布置其中的UI组件。每个网格提供行,列来定义。每个UI组件可以占据一个或多个网格。由网格的坐标(x1,y1,x2,y2)来定义。GridLayout布局内部使用一个游标(cursor)来记录当前的网格位置,GridLayout布局添加UI组件的顺序为从左到右,从上到下。如果游标越过当前网格的右下角,GridLayout布局自动添加一行。下例为GridLayout布...

2012-08-24 20:33:00 201

再就业工程--写在南京摩托罗拉研发中心被关闭之时

最近传出南京Motorola 研发中心被关闭的消息,有些惊呀,原想裁员是必然的,但没想到会关闭R&D中心,回想起六年前离开南摩来澳洲Motorola ,2008年也经历了关闭Perth研发中心。这里转贴一下当时写的一篇博客。MOTO当时裁员时善后工作做得还是很不错的,相比之下Google做的有些过了些。2008年5月,来澳洲一年半了,原本一帆风顺。从国内内部调动来到澳洲。但是由...

2012-08-24 08:37:00 92

Android ApiDemos示例解析(139):Views->Layouts->Baseline->Nested Example 1

LinearLayout 可以嵌套使用,当一个LinearLayout作为其它Layout子类时,可以使用android:baselineAlignedChildIndex 指定该LinearLayout的哪个子类需要和其它支持baseline的UI控件对齐。android:baselineAlignedChildIndex 值必须为整数,为子View的序号(从0开始)。本例 和下面几个 ...

2012-08-24 06:52:00 56

Vaadin Web应用开发教程(29):UI布局-VerticalLayout和HorizontalLayout布局

VerticalLayout和HorizontalLayout 分别垂直和水平安排其中的UI组件。这是Vaadin框架中两个最为重要的布局方式。比如Window及其父类Panel 缺省的布局就为VerticalLayout。这两种布局的基本用法如下:VerticalLayout vertical = new VerticalLayout ();vertical.addComponent(n...

2012-08-24 06:50:00 156

Android ApiDemos示例解析(138):Views->Layouts->Baseline->6. Relative

本例将一个TextView 和父RelativeLayout 左,上对齐,然后就另一个View和它设置baseline对齐:<RelativeLayout xmlns:android=”http://schemas.android.com/apk/res/android”android:layout_width=”match_parent”android:layout_heigh...

2012-08-23 21:30:00 65

Android ApiDemos示例解析(137):Views->Layouts->Baseline->5. Multi-line

本例介绍了RelativeLayout 中的android:layout_alignBaseline 属性,子View使用这个属性指出需要实现baseline对齐的其它View的ID。本例将一个多行EditView和另一个TextView设置baseline 对齐。<RelativeLayout xmlns:android=”http://schemas.android.com/apk/...

2012-08-23 21:30:00 41

Android ApiDemos示例解析(136):Views->Layouts->Baseline->4. Everywhere

本例使用Linerlayout 的android:orientation=”horizontal” ,水平布局,但分别都子View设置不同的对齐方式,因此最终显示,子View还是呈现从左到右水平排列,但子View可以有不同的对齐方式:...

2012-08-23 21:29:00 63

Android ApiDemos示例解析(135):Views->Layouts->Baseline->3. Center

本例的对齐方式采用:android:layout_gravity=”center_vertical”,center_vertical对齐不对子View进行缩放,并将子View垂直居中,子View的位置和容器的高度和子View的高度有关 一般子View顶端y坐标=(父Height-子Height)/2。这时baseline 对齐就不起作用了。<LinearLayoutandroid...

2012-08-23 21:28:00 49

Android ApiDemos示例解析(134):Views->Layouts->Baseline->2. Bottom

LinearLayout的android:layout_gravity 定义了子View的对齐方式可以有下面几种:top: 和父容器的顶端对齐,不对子View进行缩放。bottom: 和父容器的底端对齐,不对子View进行缩放。left: 和父容器的左端对齐,不对子View进行缩放。right: 和父容器的右端对齐,不对子View进行缩放。center_vertical: 将子Vie...

2012-08-23 21:26:00 42

Android ApiDemos示例解析(133):Views->Layouts->Baseline->1.Top

对于可以显示文字的View(如TextView,Button等),它的baseline 指的是这个UI控件中文字Text的baseline 到UI控件顶端的偏移值,可以通过View 的getBaseline()返回,如果一个View不支持baseline 对齐(比如ImageView) getBaseline()返回-1.LinearLayout 带有一个属性android:baselineA...

2012-08-23 06:54:00 63

Vaadin Web应用开发教程(28):UI布局-概述

Vaadin提供的UI组件大体可以分为两类,一类为之前介绍的UI组件主要和用户交互。另外一类为布局类,主要目的是用来管理用户界面中所放置的UI组件的大小和位置。在创建Window对象时,如果你不想使用缺省的布局,可以着手创建根布局对象,如下例:// Create the main window.Window main = new Window("My Application");setMa...

2012-08-23 06:51:00 74

Vaadin Web应用开发教程(27):UI组件-自定义组件

Vaadin 支持自定义组件,典型的用法是将各种Vaadin内置的组件组合而成构成自定义组件。 创建自定义组件可以通过派生CustomComponent 然后调用setCompositionRoot 为自定义组件设置根容器。例如:class MyComposite extends CustomComponent { public MyComposite(String message)...

2012-08-22 08:13:00 89

Android ApiDemos示例解析(132):Views->Layout Animation->7. Nested Animations

android:layoutAnimation 属性定义在ViewGroup中,因此所有ViewGroup的子类都可以定义android:layoutAnimation。 ViewGroup可以嵌套定义,从而layout animation 也可以嵌套。本例使用了TableLayout(ViewGroup的子类),其子View TableRow (也是ViewGroup的子类):<T...

2012-08-22 08:12:00 62

Vaadin Web应用开发教程(26):UI组件-LoginForm组件

LoginForm组件专门用来接受用户输入用户名和密码,并可以自动记住用户输入的用户名和密码。其基本用法如下:// A wrapper with a caption for the login formPanel loginPanel = new Panel("Login");loginPanel.setWidth("250px"); LoginForm login = ...

2012-08-21 06:57:00 93

Android ApiDemos示例解析(131):Views->Layout Animation->6. Wave Scale

本例为GridView的Cell提供了波浪一波一波向前推进的效果.<gridLayoutAnimation xmlns:android=”http://schemas.android.com/apk/res/android”android:rowDelay=”75%”android:columnDelay=”0%”android:directionPriority=”none...

2012-08-21 06:55:00 51

Android ApiDemos示例解析(130):Views->Layout Animation->5.Grid Direction

android:direction 为gridLayoutAnimation 定义了动画发生的方向:<gridLayoutAnimation xmlns:android=”http://schemas.android.com/apk/res/android”android:columnDelay=”0.5″android:directionPriority=”row”androi...

2012-08-20 06:57:00 53

Vaadin Web应用开发教程(25):UI组件-Slider组件

Slider组件可以显示为垂直或是水平滑动条,可以使用鼠标拖动来设置其值。 其基本使用如下:// Create a vertical sliderfinal Slider vertslider = new Slider(1, 100);vertslider.setOrientation(Slider.ORIENTATION_HORIZONTAL);// Shows the value...

2012-08-20 06:56:00 68

Vaadin Web应用开发教程(24):UI组件-ProgressIndicator组件

ProgressIndicator组件显示进程条,ProgressIndicator组件定时向服务器查询其当前值,如果值有变化,则更新进程条进度。Web应用本身无需实现任何查询服务器的操作,查询由ProgressIndicator组件自动完成。ProgressIndicator组件的值域为0.0到1.0之间。缺省的查询(polling)间隔为1秒,可以使用setPollingInterval ...

2012-08-19 07:55:00 63

Android ApiDemos示例解析(129):Views->Layout Animation->4. Randomize

animationOrder: 枚举Layout中子View的顺序,可以为normal (正序),reverse(倒序),random(随机顺序)。上例为倒序显示ListView 中例表项。本例使用随机顺序显示GridView的图标项。ayout_random_fade.xml 定义如下:<layoutAnimation xmlns:android=”http://schemas.a...

2012-08-19 07:53:00 54

Vaadin Web应用开发教程(23):UI组件-Form组件

大部分的Web应用都包含窗体(Form),Vaadin中的Form组件提供了创建窗体的简洁方法。窗体中的填充域可以直接由绑定的数据源自动生成。BeamItem 适配器(Adapter)支持使用Java Bean对象或是普通的Java 对象做为数据源。 Form组件支持窗体数据的缓存从而只需在填写Form完成后一次性提交。Form 组件从Layout 派生,可以有边框,标题,描述以及错误提示标识...

2012-08-18 08:15:00 133

Android ApiDemos示例解析(128):Views->Layout Animation->3. Reverse Order

本例显示ListView将从下到上(Reverse Order)显示列表项。本例的用法在Android ApiDemos示例解析(95):Views->Animation->3D Transition 已有说明:看一下@anim/layout_bottom_to_top_slide” 的定义:<layoutAnimation xmlns:android=”http://s...

2012-08-18 08:10:00 57

Android ApiDemos示例解析(127):Views->Layout Animation->2. List Cascade

本例使用TranslateAnimation 给一个ListView的列表项向下逐步展开(Cascade)的动画效果,各种基本Animation可以参见Android ApiDemos示例解析(3): App->Activity->Animation。本例使用代码为ListView添加LayoutAnimation.AnimationSet set = new Animatio...

2012-08-17 06:57:00 55

Vaadin Web应用开发教程(22):UI组件-Upload组件

Upload 组件用于向服务器上传文件。它显示一个文件名输入框,一个文件选择按钮和一个上传确认按钮。可以通过setButtonCaption 修改”Upload” 按钮的文字。对于”Browser” 按钮由于浏览器安全方面的考虑,难以修改它的外观,”Brower” 显示语言取决于浏览器本身。 因此如果你想保持”Upload” 语言显示的一致,你必须使用和“Browser”一样的...

2012-08-17 06:54:00 99

Android ApiDemos示例解析(126):Views->Layout Animation->1.Grid Fade

LayoutAnimationController 用来为一个layout 或是viewgroup 包含的子view添加动画效果, Layout中的每个元素都会采用同一个动画效果,但开始时间不同。 子View动画的缺省开始时间为子View在Layout中的序号index 乘以 一个固定的时间间隔。 LayoutAnimationController 的子类可以重载getDelayForVi...

2012-08-16 20:16:00 59

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除