HTML5开发实战——Sencha Touch篇(1)
学习了很多主要的Sencha Touch内容,已经了解了Sencha Touch的开发模式。接下来一段时间我们将利用Sencha Touch来进行自己的web应用构建。
先要解决的是前端的问题。从最简单的入手。一个主要的登录界面。
最简单的登录界面大体由下面介个元素组成:用户头像部分、username输入部分、password输入部分、提交button。
我们从这样的虽简单的界面開始,逐步进行界面实现。
一、创建主面板
Ext.require('Ext.Panel');
Ext.application({
name:'MyApp',
icon:'image/icon.png',
glossOnIcon:false,
phoneStartupScreen:'img/phone_startup.png',
tabletStartupScreen:'img/tablet_startup.png',
launch:function(){
var mainPanel = Ext.create('Ext.Panel',{
id:'mainPanel',
fullscreen:true,
scrollable:'vertical',
html:'Here is the text'
});
Ext.Viewport.add(formPanel);
}
});
二、加入头像图片
1、定义img组件
<span style="white-space:pre"> </span>var img = Ext.create('Ext.Img',{
src:'pic.png',
width:100,
height:100,
cls:'pic'
});
2、通过cls设置位置。pic类代码卸载style里,让图片居中显示
.pic{
<span style="white-space:pre"> </span>margin:0 auto;
margin-top:30px;
}
3、将图片组件加入到面板中
var mainPanel = Ext.create('Ext.Panel',{
id:'mainPanel',
fullscreen:true,
scrollable:'vertical',
items:[img]
});
三、加入表单输入框
直接在mainPanel
的items中加入:
<span style="white-space:pre"> </span>items:[img,{
xtype:'textfield',
id:'username',
name:'username',
required:'true',
placeHolder:'Please enter the username...',
clearIcon:true
},{
xtype:'passwordfield',
id:'password',
name:'password',
required:'true',
placeHolder:'Please enter the password...',
clearIcon:true
}]
注意:不同组件id名不能一样:否则仅仅有第一个组件会生效。其它id同样的组件不显示
再给第一个输入框加入一个样式:cls:’inp’,用来与图片加入一些距离同一时候跟下一个输入框有一个切割线:
<span style="white-space:pre"> </span>.inp{
margin-top:20px;
border-bottom:2px solid #CCC;
}
四、加入button
同理,相同的方法在items中编写buttonjs代码
<span style="white-space:pre"> </span>{
xtype:'button',
text:'Log in',
cls:'btn'
}
cls样式代码:
<span style="white-space:pre"> </span>.btn{
height:50px;
margin:0 auto;
width:90%;
background:#39F;
color:white;
margin-top:30px;
}
以上就能够实现一个类似qq登录的简单界面了。
通过一步一步实现,逐渐掌握Sencha Touch在实际应用中前端部分的基本思路。而且注意easy产生Bug的地方。
HTML5开发实战——Sencha Touch篇(1)的更多相关文章
- HTML5开发移动web应用——Sencha Touch篇(7)
Sencha Touch中的Ext.DomHelper组件能够方便的实现对元素的追加或重写操作 演示样例: launch:function(){ function appendDom(){ Ext.D ...
- HTML5开发移动web应用——Sencha Touch篇(8)
DataView是Sencha Touch中最重要的组件,用于数据的可视化.数据可视化的重要性不言而喻,能够讲不论什么数据以形象的方式展示给用户. 眼下,怎样更好地可视化是很多公司或框架都在追求的. ...
- HTML5开发移动web应用——Sencha Touch篇(10)
我们把数据可视化出来,为的就是进行一些针对数据的操作. 这里介绍一下DataView的排序功能和搜索功能. 掌握这两个技能,能够让写出的数据界面内的数据能够依据要求进行排序,能够进行数据的搜索显示灯功 ...
- 移动端HTML5开发问题汇总-样式篇
问题:Android 上圆形图片使用 border 时,边框显示变形 解决:给 img 外嵌套一个元素,为其使用圆角 <div> <img src=""> ...
- iOS开发——实战总结OC篇&网易彩票开发知识点总结
网易彩票开发知识点总结 关于网易彩票开发中遇到了不少的坑,弄了好久才弄懂,或者有些犹豫很久没用就不记得了,所以这里就总结了一下,希望以后不会忘记,就算忘记也能快速查看! /************** ...
- [Phonegap+Sencha Touch] 移动开发18 Sencha Touch项目通过phonegap打包后的程序名字的问题
之前说过 sencha phonegap init com.pushsoft.myapp MyApp 之后打包的程序安装包apk的名字是"MyApp.apk",显示在手机桌面上的程 ...
- 移动端H5页面编辑器开发实战--经验技巧篇
很久前的写的文章了,转载下发到这里 原本地址: https://blog.csdn.net/tech_meizu/article/details/52484775
- 【翻译】使用Sencha Touch开发Google Glass应用程序
原文:Developing for Google Glass with Sencha Touch 作者:Ross Gerbasi Ross Gerbasi is a Senior Engineer a ...
- Sencha Touch 实战开发培训 视频教程 第二期 基础提高篇 预告
“抛砖网”国内首家首创纯实战型培训机构,提供在线培训.技术指导及答疑! 团队通过360全方位技术培训+1度手把手技术指导,保证每一个学员能最快掌握实际工作技能: 让每一个学员都能站在我们的肩膀上,展翅 ...
随机推荐
- react随笔-1(为什么在react使用jq无法正确渲染组件位置)
今天心血来潮,打开了sublime想玩玩react,然后大家都知道的先引入一大串 就是在百度静态资源库里找到的. 然后贴html代码 对的,没错,就这么一行,毕竟只是测试嘛 然后js代码 大家一定要注 ...
- 最小生成树 Prim算法 Kruskal算法实现
最小生成树定义 最小生成树是一副连通加权无向图中一棵权值最小的生成树. 在一给定的无向图 G = (V, E) 中,(u, v) 代表连接顶点 u 与顶点 v 的边(即,而 w(u, v) 代表此边的 ...
- FastNet C++/Python 网络通信库之 协议
协议可以使用的基础数据类型: UInt8,UInt16,UInt32,UInt64Int8,Int16,Int32,Int64Float,Double,Bool,String [T] 数组,T代表元 ...
- UVA-1625-Color Length(DP LCS变形)
Color Length(UVA-1625)(DP LCS变形) 题目大意 输入两个长度分别为n,m(<5000)的颜色序列.要求按顺序合成同一个序列,即每次可以把一个序列开头的颜色放到新序列的 ...
- docker-ce快速部署
配置yum源wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repowget -O ...
- Python中的类(2)
一.使用类和实例 我们先编写一个学生的类,它存储了有关学生的信息,还有一个整合学生信息的方法: student.py class Student(): def __init__(self,name,a ...
- [MVC][Shopping]Copy Will's Code
数据模型规划(Models) //DisplayNameAttribute 指定属性的显示名称 [DisplayName("商品类别")] //DisplayColumnAttri ...
- Android学习2013年10月11日
1.LinearLayout http://www.cnblogs.com/salam/archive/2010/10/20/1856793.html LinearLayout是线性布局控件,它包含的 ...
- JavaEE JDBC 了解数据库连接池
了解数据库连接池 @author ixenos 数据库连接是有限的资源,如果用户需要离开应用一段时间,那么他占用的连接就不应该保持开放状态: 另一方面,每次查询都获取连接并在随后关闭它的代价也很高. ...
- 什么是Etcd?
文章大部分引至:http://jolestar.com/etcd-architecture/ Etcd 按照官方介绍 Etcd is a distributed, consistent key-val ...