实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI

系列文章

实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求 

实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目  

实战使用Axure设计App,使用WebStorm开发(3) – 构建页面架构 

实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI

实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能

实战使用Axure设计App,使用WebStorm开发(6) – 迈向后端

 接上一篇系列文章,在本文中,将在WebStorm中继续开发,实现页面的功能。这需要一个页面一个页面的开发,来完成功能。本文将侧重把所有页面的UI都实现出来,先把前端的工作都完成了,然后再去链接后端的 RESTful Service。


登陆页面

给页面添加 login.html 添加页面Html代码。 

<ion-view title="用户登录">    <ion-content class="padding">        <div class="login-title">            <h2 class="energized">方便每一天</h2>            <h2 class="assertive">配送系统</h2>        </div>        <div>            <form novalidate="novalidate" on-valid-submit="doLogin()">                <label class="item item-input validated">                    <span class="input-label" for="account">账号</span>                    <input id="account" type="text" ng-model="user.name" placeholder="账号" required="required" name="account" />                    <i class="icon ion-alert-circled error"></i>                </label>                <label class="item item-input validated">                    <span class="input-label" for="password">密码</span>                    <input id="password" type="password" ng-model="user.password" placeholder="********" required="required" name="password" />                    <i class="icon ion-alert-circled error"></i>                </label>                <label class="item">                    <button type="submit" class="button button-block button-positive icon ion-person icon-text">登录</button>                </label>            </form>        </div>    </ion-content></ion-view>

为了实现,输入框的验证功能,需要给AngularJS加入两个自定义的标签: on-valid-submit, validated 由于这是一个全局的验证功能就把它添加到app.js ddApp module下,如果只针对某个页面,可以只添加到这个页面的 controller 下。

到这里登陆页面的UI就完成了。


列表页面

首先构建派送列表页的Html内容:

<ion-view view-title="{{now | date:yyyy年M月d日}}">    <ion-nav-bar class="bar bar-balanced" align-title="center">        <ion-nav-buttons side="left">            <li class="button icon icon-left ion-chevron-left" ng-click="doLogout()">退出</li>        </ion-nav-buttons>    </ion-nav-bar>    <ion-content class="list order-list">        <ion-item  class="item order-item" ng-repeat="order in orders">            <img class="order-img" ng-src="{{order.qrSrc}}" ng-click="goDetail(order.id)" />            <div class="order-text">                <h2 ng-click="goDetail(order.id)">{{order.code}}</h2>                <h3>{{order.pickTime}}</h3>            </div>            <div class="order-check" ng-click="goDetail(order.id)">                <a class="button icon-right ion-chevron-right button-clear button-assertive"></a>            </div>        </ion-item >    </ion-content>    <div class="bar bar-footer bar-positive">        <div class="button-bar">            <li class="button icon ion-ios-keypad icon-text" ng-click="goManual()">手动输入</li>            <li class="button icon ion-qr-scanner icon-text" ng-click="goScan()">扫描二维码</li>        </div>    </div></ion-view>

为了展示数据,这里在Service里做了一个MockDB使用这个MockDB为App提供数据,这样当请求使用后端数据的时候,只要后端的RESTful Service 也返回同样规格的数据就可以了。

这里代码比较多,具体代码在 services.js 中。

接下来处理 派送列表 的 controller 把页面动作交互和数据连上:

到这里派送列表页,就处理完了:


详细页面

添加 详细页面 html 代码:

<ion-view view-title="{{now | date:yyyy年M月d日}}">    <ion-nav-bar class="bar bar-balanced" align-title="center">        <ion-nav-buttons side="left">            <li class="button icon icon-left ion-chevron-left" ng-click="doLogout()">退出</li>        </ion-nav-buttons>    </ion-nav-bar>    <ion-content class="list order-list">        <ion-item  class="item order-item" ng-repeat="order in orders" ng-click="goDetail(order.id)">            <img class="order-img" ng-src="{{order.qrSrc}}" ng-click="goDetail(order.id)" />            <div class="order-text">                <h2 ng-click="goDetail(order.id)">{{order.code}}</h2>                <h3>{{order.pickTime}}</h3>            </div>            <div class="order-check">                <a class="button icon-right ion-chevron-right button-clear button-assertive"></a>            </div>        </ion-item >    </ion-content>    <div class="bar bar-footer bar-positive">        <div class="button-bar">            <li class="button icon ion-ios-keypad icon-text" ng-click="goManual()">手动输入</li>            <li class="button icon ion-qr-scanner icon-text" ng-click="goScan()">扫描二维码</li>        </div>    </div></ion-view>

添加页面 controller :

到这一步 详细页面完成了:

接下来就是手动输入页面,和扫描页面,这两个页面比较简单,类似于前面的页面,写好页面Html,配置好 controller 的内容,就可以了。
到这里所有页面的 UI 都完成了。 你可以到 https://github.com/zhangsichu/DeliveryApp/releases/tag/AllPageUI 下载这个阶段的代码。
也可以使用 git checkout AllPageUI 取得

git checkout AllPageUI

原文链接:http://zhangsichu.com/blogview.asp?Content_Id=158

 

时间: 2024-07-31 00:56:08

实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI的相关文章

实战使用Axure设计App,使用WebStorm开发(3) – 构建页面架构

系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求  实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目   实战使用Axure设计App,使用WebStorm开发(3) – 构建页面架构  实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI 实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能 实战使用Axure设计App,使用WebStorm开发(6) –

实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能

 系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求  实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目   实战使用Axure设计App,使用WebStorm开发(3) – 构建页面架构  实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI 实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能 实战使用Axure设计App,使用WebStorm开发(6)

实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目

 系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求  实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目   实战使用Axure设计App,使用WebStorm开发(3) – 构建页面架构  实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI 实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能 实战使用Axure设计App,使用WebStorm开发(6)

实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求

系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求  实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目   实战使用Axure设计App,使用WebStorm开发(3) – 构建页面架构  实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI 实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能 实战使用Axure设计App,使用WebStorm开发(6) –

《妥协的完美主义:优秀产品经理的实践指南(卷二)》一第1章 App产品设计团队进化史1.1 在没有产品设计团队的软件开发时期

第1章 App产品设计团队进化史 妥协的完美主义:优秀产品经理的实践指南(卷二) 在App的开发过程中,常常有两股主要矛盾力量:开发人员和市场人员. 尽管市场人员精通市场.定价,善于掌握商机,但他们对产品设计和过程的要求,只局限在需求列表.需求清单上,列出他们所需功能,这些需求同用户的实际需要和期望有一定差距,主要在于如何超越竞争对手,如何赚取更多的利润,这些需求的来源基于市场调研和对用户心理的猜测: "市场数据的表现是这样的,用户可能是因为某某原因不喜欢使用我们的产品." "

网易严选App感受Weex开发

自打出生的那一天起,WEEX就免不了被拿来同React Native"一决高下"的命运.React Native宣称「Learn Once, Write Anywhere」,而WEEX宣称「Write Once, Run Everywhere」.在我看来,并没有谁更好,只有谁更合适.下面我将围绕WEEX入门进行讲解. (如果你尚不了解React Native,并想简单入门,可以阅读[整理]ReactNative快速入门笔记) 网易严选App感受Weex开发 什么都不说,先给你感受下we

html5-开发HTML5 web和移动app用什么开发工具好呢?

问题描述 开发HTML5 web和移动app用什么开发工具好呢? 看了些html5的一些新闻,有推荐使用HBuilder的,试了下,是挺快的. 但是不知道现在主流的开发工具是什么? http://www.25xt.com/html5css3/6817.html 这个网站说2015必火的5个开发工具 解决方案 其实最牛逼的一种方式是用text文件编写,或者用Editplus这种方式比较好,特别是对于初学者来说.

android开发-app网上商城开发,后台架构如何

问题描述 app网上商城开发,后台架构如何 如题,只用serverlet和javabean可行吗?不用ssh框架,图片和视频存储方案是怎样的 解决方案 你可以试试Bmob,连租服务器的钱都省了 解决方案二: 你可以试试Bmob,连租服务器的钱都省了

android开发中如何自定义UI模板【图解教程】

每个设计良好的App都是自定义标题栏,在自定义标题栏的过程中大部分人可能都是自定义一个标题的xml文件,然后在需要的地方直接通过include来引用,这比起在每个布局文件中写标题栏已经进化很多了,但仍然不是最简单有效的方法,我们为什么不能自定义一个标题控件呢?今天就带大家自己做一个标题栏控件.效果图如下: <?xml version="1.0" encoding="utf-8"?> <resources>     <declare-st