当前位置: 编程技术>移动开发
本页文章导读:
▪图片缩放、拖动、自动居间 (工具类) 图片缩放、拖动、自动居中 (工具类)
MainActivity 作为工具类activity,可使用在任何项目中
已拥有功能:
1、默认自动居中,全屏模式,等比缩放沾满屏幕的一边。
2、拖动进行浏览。超.........
▪ 滚动究竟部加载更多及下拉刷新listview的使用 滚动到底部加载更多及下拉刷新listview的使用
最新内容建议直接访问原文:滚动到底部加载更多及下拉刷新listview的使用本文主要介绍可同时实现下拉刷新及滑动到底部加载更多的ListView的.........
▪ 放飞App:挪动产品经理实战指南 放飞App:移动产品经理实战指南
《放飞App:移动产品经理实战指南》
基本信息
原书名:App savvy:rurning ideas into iPhone and iPad Apps customers really want
作者: (美)Ken Yarmosh
译者: 鞠玮婕 邓力
丛书.........
[1]图片缩放、拖动、自动居间 (工具类)
来源: 互联网 发布时间: 2014-02-18
图片缩放、拖动、自动居中 (工具类)
MainActivity 作为工具类activity,可使用在任何项目中
已拥有功能:
1、默认自动居中,全屏模式,等比缩放沾满屏幕的一边。
2、拖动进行浏览。超过部分自动回弹至手机边缘。
3、手势多触点缩放。
重要说明:
开启这个会话的时候,需要传输一个 “IMG” 的图片资源ID。
工具类中,通过这一段语句获取需要浏览的图片:
bitmap = BitmapFactory.decodeResource(getResources(), this.getIntent() .getExtras().getInt("IMG"));// 获取图片资源
在 mainifest.xml 中,对这个工具类要配置一个全屏的主题装饰:
<activity android:name="com.mpqi.imageapp.activity.MainActivity" android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
[2] 滚动究竟部加载更多及下拉刷新listview的使用
来源: 互联网 发布时间: 2014-02-18
滚动到底部加载更多及下拉刷新listview的使用
最新内容建议直接访问原文:滚动到底部加载更多及下拉刷新listview的使用
本文主要介绍可同时实现下拉刷新及滑动到底部加载更多的ListView的使用。
该ListView优点包括:a. 可自定义下拉响应事件(如下拉刷新) b.可自定义滚动到底部响应的事件(如滑动到底部加载更多) c.可自定义丰富的样式 d.高效(若下拉样式关闭不会加载其布局,同listView效率一致) e. 丰富的设置。
本文可运行APK地址可见TrineaAndroidDemo.apk,可运行代码地址可见DropDownListViewDemo@Google Code,效果图如下:
1、引入公共库
引入TrineaAndroidCommon@GoogleCode作为你项目的library,或是自己抽取其中的DropDownListView部分使用
2、在layout中定义
将布局中的ListView标签换成cn.trinea.android.common.view.DropDownListView标签
并加上自定义属性的命名空间xmlns:listViewAttr="http://schemas.android.com/apk/res/cn.trinea.android.demo",其中cn.trinea.android.demo需要用自己的包名替换。如何自定义属性及其命名空间可见本文最后。xml代码如下:
DropDownListView自定义了三个boolean属性
<declare-styleable name="drop_down_list_attr">
<attr name="isDropDownStyle" format="boolean" />
<attr name="isOnBottomStyle" format="boolean" />
<attr name="isAutoLoadOnBottom" format="boolean" />
</declare-styleable>
isDropDownStyle表示是否允许下拉样式,java代码中可自定义下拉listener,表示需要完成的任务
isOnBottomStyle表示是否允许底部样式,java代码中可自定义滚动到底部的listener,表示需要完成的任务
isAutoLoadOnBottom表示是否允许滚动到底部时自动执行对应listener,仅在isOnBottomStyle为true时有效
PS:如果isDropDownStyle或isOnBottomStyle为false,并不会加载对应的布局,所以性能同ListView一样
3、在Java类中调用
通过setOnDropDownListener设置下拉的事件,不过需要在事件结束时手动调用onDropDownComplete恢复状态
通过setOnBottomListener设置滚动到底部的事件,不过需要在事件结束时手动调用onBottomComplete恢复状态,示例代码如下:
4、高级接口设置
5、样式设置(自定义header和footer信息)
见原文:滚动到底部加载更多及下拉刷新listview的使用
www.trinea.cn
最新内容建议直接访问原文:滚动到底部加载更多及下拉刷新listview的使用
本文主要介绍可同时实现下拉刷新及滑动到底部加载更多的ListView的使用。
该ListView优点包括:a. 可自定义下拉响应事件(如下拉刷新) b.可自定义滚动到底部响应的事件(如滑动到底部加载更多) c.可自定义丰富的样式 d.高效(若下拉样式关闭不会加载其布局,同listView效率一致) e. 丰富的设置。
本文可运行APK地址可见TrineaAndroidDemo.apk,可运行代码地址可见DropDownListViewDemo@Google Code,效果图如下:
1、引入公共库
引入TrineaAndroidCommon@GoogleCode作为你项目的library,或是自己抽取其中的DropDownListView部分使用
2、在layout中定义
将布局中的ListView标签换成cn.trinea.android.common.view.DropDownListView标签
并加上自定义属性的命名空间xmlns:listViewAttr="http://schemas.android.com/apk/res/cn.trinea.android.demo",其中cn.trinea.android.demo需要用自己的包名替换。如何自定义属性及其命名空间可见本文最后。xml代码如下:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:listViewAttr="http://schemas.android.com/apk/res/cn.trinea.android.demo" android:layout_width="match_parent" android:layout_height="match_parent" > <cn.trinea.android.common.view.DropDownListView android:id="@+id/list_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:drawSelectorOnTop="false" android:paddingBottom="@dimen/dp_40" listViewAttr:isDropDown listViewAttr:isOnBottom listViewAttr:isAutoLoadOnBottom="true" /> </RelativeLayout>
DropDownListView自定义了三个boolean属性
<declare-styleable name="drop_down_list_attr">
<attr name="isDropDownStyle" format="boolean" />
<attr name="isOnBottomStyle" format="boolean" />
<attr name="isAutoLoadOnBottom" format="boolean" />
</declare-styleable>
isDropDownStyle表示是否允许下拉样式,java代码中可自定义下拉listener,表示需要完成的任务
isOnBottomStyle表示是否允许底部样式,java代码中可自定义滚动到底部的listener,表示需要完成的任务
isAutoLoadOnBottom表示是否允许滚动到底部时自动执行对应listener,仅在isOnBottomStyle为true时有效
PS:如果isDropDownStyle或isOnBottomStyle为false,并不会加载对应的布局,所以性能同ListView一样
3、在Java类中调用
通过setOnDropDownListener设置下拉的事件,不过需要在事件结束时手动调用onDropDownComplete恢复状态
通过setOnBottomListener设置滚动到底部的事件,不过需要在事件结束时手动调用onBottomComplete恢复状态,示例代码如下:
/** * DropDownListViewDemo * * @author Trinea 2013-6-1 */ public class DropDownListViewDemo extends BaseActivity { private LinkedList<String> listItems = null; private DropDownListView listView = null; private ArrayAdapter<String> adapter; private String[] mStrings = { "Aaaaaa", "Bbbbbb", "Cccccc", "Dddddd", "Eeeeee", "Ffffff", "Gggggg", "Hhhhhh", "Iiiiii", "Jjjjjj", "Kkkkkk", "Llllll", "Mmmmmm", "Nnnnnn", }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState, R.layout.drop_down_listview_demo); listView = (DropDownListView)findViewById(R.id.list_view); // set drop down listener listView.setOnDropDownListener(new OnDropDownListener() { @Override public void onDropDown() { new GetDataTask(true).execute(); } }); // set on bottom listener listView.setOnBottomListener(new OnClickListener() { @Override public void onClick(View v) { new GetDataTask(false).execute(); } }); listItems = new LinkedList<String>(); listItems.addAll(Arrays.asList(mStrings)); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listItems); listView.setAdapter(adapter); } private class GetDataTask extends AsyncTask<Void, Void, String[]> { private boolean isDropDown; public GetDataTask(boolean isDropDown){ this.isDropDown = isDropDown; } @Override protected String[] doInBackground(Void... params) { try { Thread.sleep(1000); } catch (InterruptedException e) { ; } return mStrings; } @Override protected void onPostExecute(String[] result) { if (isDropDown) { listItems.addFirst("Added after drop down"); adapter.notifyDataSetChanged(); // should call onDropDownComplete function of DropDownListView at end of drop down complete. SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd HH:mm:ss"); listView.onDropDownComplete(getString(R.string.update_at) + dateFormat.format(new Date())); } else { listItems.add("Added after on bottom"); adapter.notifyDataSetChanged(); // should call onBottomComplete function of DropDownListView at end of on bottom complete. listView.onBottomComplete(); } super.onPostExecute(result); } } }
4、高级接口设置
5、样式设置(自定义header和footer信息)
见原文:滚动到底部加载更多及下拉刷新listview的使用
www.trinea.cn
[3] 放飞App:挪动产品经理实战指南
来源: 互联网 发布时间: 2014-02-18
放飞App:移动产品经理实战指南
《放飞App:移动产品经理实战指南》
基本信息
原书名:App savvy:rurning ideas into iPhone and iPad Apps customers really want
作者: (美)Ken Yarmosh
译者: 鞠玮婕 邓力
丛书名: 图灵程序设计丛书
出版社:人民邮电出版社
ISBN:9787115322913
上架时间:2013-6-24
出版日期:2013 年7月
开本:16开
页码:1
版次:1-1
所属分类:计算机
更多关于 》》》《放飞App:移动产品经理实战指南》
内容简介
计算机书籍
《放飞app:移动产品经理实战指南》讲述如何构建出能在apple store 中引人注目的ipod touch、iphone 和ipad 应用。从全局介绍这一构建过程中的每一步,包括预算成本、挑选开发人员并组织最佳团队、搭建工作流程、推销和改进自己的iphone 和ipad 应用产品。
《放飞app:移动产品经理实战指南》适合负责iphone 或ipad 应用的项目主管人员或开发人员阅读。
如何让你的ipad或者iphone应用在app store中出类拔萃?许多书籍单纯从技术方面来探究苹果应用的设计和开发,而本书在探究这些问题的同时,同样关注商业、产品和市场方面的内容,这对准备、制作并销售应用都是至关重要的,是把一个好创意转化为真正成功的产品所不可或缺的要素。
无论你是设计师、开发者、企业家,还是怀揣优秀创意的普通人,本书都是你案头必备的。它涵盖了应用开发过程中的每一个步骤,从策划一个可靠的概念、与早期用户持续交流、开发应用到隆重发布这个应用,无不给出了详尽可行又有理有据的策略。此外,还提供了多篇对app store中最成功的开发者的访谈。这些过来人的真知灼见,定能为你拨开应用开发的迷雾,让你在开发征途中攻城拔寨、扬帆远航!
《放飞app:移动产品经理实战指南》将帮助你:
了解app store和苹果移动设备的功能
以一定的方法来筛选并研究应用的创意
与用户一起验证你的创意,并制作他们喜爱的应用
组建开发团队,了解开发成本并确立一套可行的流程
在开发应用的同时规划市场营销
在把应用提交给app store前进行大量测试
评估应用的表现,与潜在购买者交流,保持他们的热情
目录
《放飞app:移动产品经理实战指南》
第一部分 战略
第1章 有了应用创意之后 2
1.1 “新的”app store 3
1.2 评估自己的创意 4
1.2.1 app store 4
1.2.2 用数据指标来衡量你的应用 10
1.2.3 了解自己和自己掌握的资源 18
1.3 访谈 19
1.3.1 digital post:mike rundle 19
1.3.2 mobclix:krishna subramanian 22
1.4 重要内容回顾 25
第2章 欲善其事,先利其器 26
2.1 熟悉苹果的设备 26
2.1.1 先思考,再设计 26
2.1.2 精细入微,充分了解设备功能 27
2.1.3 ios 35
2.2 学会应用的创新 38
2.2.1 内心要热情,头脑要冷静 38
2.2.2 蓝海可能更红火 39
.2.2.3 其他的成败因素 44
2.3 访谈 44
2.3.1 smule:jeff smith 44
2.3.2 sophistication software:sophiateutschler 46
2.4 重要内容回顾 48
第3章 从创意到产品概念 50
3.1 顾客是关键 50
3.1.1 为什么现在就要寻找顾客 51
3.1.2 谁是你的顾客 51
3.1.3 如何寻找顾客 53
3.1.4 与顾客交流什么 57
3.2 架构概念应用 60
3.2.1 如果你缺乏艺术天赋 60
3.2.2 学习使用线框图 60
3.2.3 反复接触顾客 64
3.3 访谈 65
3.3.1 kissmetrics:cindy alvarez 65
3.3.2 balsamiq studio: peldi guilizzoni 67
3.4 重要内容回顾 68
第二部分 开发
第4章 招兵买马,慧眼识才 70
4.1 你的应用团队 70
4.1.1 技能 71
4.1.2 评估人才 73
4.1.3 成本 75
4.2 寻觅人才 78
4.2.1 创建招募模板 78
4.2.2 招募人才的渠道 79
4.2.3 决定合作 81
4.3 访谈 82
4.3.1 getappsdone.com:davide di cillo 82
4.3.2 appstorehq:chris devore 84
4.4 重要内容回顾 86
第5章 做出一个好用的应用 87
5.1 开发过程 87
5.2 应用的路线图 88
5.2.1 发布、特性和升级 89
5.2.2 确定1.0版本 90
5.2.3 介绍你的应用 93
5.3 设计和开发 95
5.3.1 设计 95
5.3.2 开发 105
5.4 管理应用的进度 108
5.4.1 保持井井有条 108
5.4.2 页面和原型 111
5.5 访谈 112
5.5.1 tapbots:paul haddad和markjardine 112
5.5.2 agile web solutions:roustemkarimov 114
5.6 重要内容回顾 116
第6章 在app store上线前的优化工作 117
6.1 安装应用 117
6.1.1 udid 118
6.1.2 在provisioning portal中注册设备 119
6.1.3 移动配置文件 120
6.1.4 开发版应用 121
6.2 beta版测试 123
6.3 质量检测与反馈 124
6.3.1 让测试更加“真实” 124
6.3.2 用户反馈和bug 125
6.3.3 深入处理麻烦的bug 126
6.3.4 筛选反馈 128
6.4 访谈 129
6.4.1 hog bay software:jesse grosjean 129
6.4.2 mariner software:michael wray 130
6.5 重要内容回顾 132
第三部分 发布
第7章 准备提交到app store 134
7.1 开发尾声 134
7.1.1 数据分析 134
7.1.2 app store里应用的二进制文件 137
7.2 itunes connect 137
7.2.1 提交app store时的核对清单 137
7.2.2 提交到app store 138
7.2.3 app store中的审核流程 144
7.3 访谈 146
7.3.1 tapmetrics:christopher brown 146
7.3.2 powerbase:dominik balogh 148
7.4 重要内容回顾 149
第8章 渐入佳境的市场营销 150
8.1 改变你对市场营销的看法 150
8.1.1 不存在最妙的营销方式 151
8.1.2 如何阅读本章 152
8.2 渐入佳境的市场营销 152
8.2.1 第一阶段 153
8.2.2 第二阶段 157
8.2.3 第三阶段 159
8.2.4 第四阶段 163
8.3 发布应用(第五阶段) 171
8.3.1 兑换码 171
8.3.2 发布时的检查清单 172
8.3.3 更多推广方式 174
8.4 访谈 178
8.4.1 tap tap tap:phill ryu 178
8.4.2 grades:jeremy olson 181
8.4.3 toucharcade:arnold kim 184
8.5 重要内容回顾 185
第9章 评估成果,把握未来 187
9.1 深入app store 187
9.2 持续与用户交流 194
9.2.1 倾听用户的意见并向他们学习 194
9.2.2 应用更新 196
9.3 评估应用的未来 200
9.3.1 是否应闭门关张 200
9.3.2 除了危险信号之外 201
9.3.3 放眼未来 202
9.4 访谈 202
9.4.1 flurry:peter farago 202
9.4.2 lumos labs:romain david 204
9.4.3 appfigures:ariel michael 205
9.5 重要内容回顾 208
后记 当移动设备不再是异类 210
附录a 建议和工具 212
本图书信息来源:互动出版网
最新技术文章: