当前位置:  编程技术>移动开发
本页文章导读:
    ▪CocoaPods使用小结        CocoaPods使用总结 参考文章:http://ishalou.com/blog/2012/10/15/how-to-use-cocoapods/  gem install cocoapods 2、使用:       此时,会自动配置第三方libs 当加入新的库后,执行这个命令 http://theonlylars.com/blo.........
    ▪ phonegap-手机APP页面的若干技术有关问题        phonegap-手机APP页面的若干技术问题 1、要保证页面在手机中正常显示,需要在<head>标签内添加如下语句: <meta name="viewport" content="width=480, target-densitydpi=high-dpi, user-scalable=no" /> 2、一.........
    ▪ robotium使用札记       robotium使用笔记 1、多个测试用例运行时实际上是有顺序的,显示含有测试方法的类按照字母排序,同一个类里面的测试方法再按照字母排序,依次执行。所以可以通过添加前缀(A_,B_)等等调.........

[1]CocoaPods使用小结
    来源: 互联网  发布时间: 2014-02-18
CocoaPods使用总结
cocoaPods使用:
git官网: https://github.com/CocoaPods/CocoaPods/wiki/Creating-a-project-that-uses-CocoaPods 
参考文章:http://ishalou.com/blog/2012/10/15/how-to-use-cocoapods/ 
 
1、安装 Mac默认安装了ruby的运行环境,Cocoapods是ruby gems中的一个工具,可以在Mac中直接使用命令安装:
gem install cocoapods
pod setup
 
2、使用:
在iOS项目的根目录中中新建一个文件,起名为Podfile:
touch Podfile
 
3、输入第三方libs名称:
platform:ios
 
pod 'JSONKit'
pod 'Reachability'
 
4、pod install
在终端shell中cd 来到你要管理的项目,运行:pod install 
此时,会自动配置第三方libs
 
pod update
当加入新的库后,执行这个命令
 
把自己的项目加入到cocospods中:
http://theonlylars.com/blog/2013/01/20/cocoapods-creating-a-pod-spec/

    
[2] phonegap-手机APP页面的若干技术有关问题
    来源: 互联网  发布时间: 2014-02-18
phonegap-手机APP页面的若干技术问题

1、要保证页面在手机中正常显示,需要在<head>标签内添加如下语句:

<meta name="viewport" content="width=480, target-densitydpi=high-dpi, user-scalable=no" />

2、一些css中需要注意的设置: 
html{height:100%;} 
body{min-height:100%;position:relative;} 
3、表单元素在手机中点击时会出现边框,取消边框的写法如下:

input, textarea, button, a{-webkit-tap-highlight-color:rgba(0,0,0,0);}

4、背景图片background中,0 0 位置值是默认值,可以省略不写;repeat双方向重复也是默认值,也可以不写;位置值中的“bottom”、“right”可以使用“100%”来替代,以此减少代码量。如下: 
div{background:url(/blog_article/pic.png) 0 0 repeat;}简写为div{background:url(/blog_article/pic.png);} 
5、box-sizing:border-box时,表示width值包含了border和padding的值。默认是不包含的。 
6、border-radius设置圆角,可依次设置四个方向的圆角大小,顺序从左上角按顺时针旋转。如: 
.class{border-radius:0 0 5px 5px}设置的是一个上边直角,下边5像素圆角的元素。 
7、在手机中的颜色渐变写法:(只考虑webkit)

background-image:-webkit-gradient(linear,0 0,0 100%,from(#f3b787),to(#e39e61)); 
background-image:-webkit-linear-gradient(top,#f3b787,#e39e61); 
8、内外阴影同时存在的写法:

-webkit-box-shadow:1px 1px 1px #FFF inset,1px 1px 2px #ded5ba;

注意:内外阴影同属于同一个css属性(box-shadow),因此要写在同一句box-shadow里面,值用逗号分隔。内阴影是inset,外阴影为默认,不需要写outset,写了outset反而不起作用了。 
9、双层边框的写法,可以使用内阴影来实现。有些按钮除了有外边框线之外,还会在边框线内有一条1px大小的较亮的边框线来提升按钮视觉感受。此时要实现这条亮框线,就可以使用内阴影来实现,具体写法如下:

-webkit-box-shadow:1px 1px 1px #FFF inset, -1px -1px 1px #FFF inset;

值分别表示:水平方向位移、竖直方向位移、阴影大小、阴影颜色、内阴影。 
要实现四个方向的内阴影,就要写两个值,一个是实现右下,一个实现左上。 
10、按钮被按下的瞬间的状态效果,使用 .btn:active{…}的写法。但目前在手机上不支持该效果。尚未找到。。。 
11、对话气泡的写法:一个气泡写成一个单独的HTML文件,气泡的上下边框和背景都需要图片样式来实现的时候,可以考虑对<html>写样式,将其中一部分图片样式写到<html>中,另一些样式写在<body>中,最后一些样式写在<div>中,这样可以减少div的嵌套层数。 
12、手机页面中的文字大小使用pt作为单位:.class{font-size:18pt;}具体大小需要用手机测试来确定最终效果。

13、为了减少http响应,要尽量使用CSS Sprites。但不是所有图片都可以拼合进去。

 

 

元素宽度自适应

    之前做pc端的时候写过一篇宽度自适应的文章完美实现两个div并排且宽度为50%,不足的是不灵活,如果一行元素由3个变成2个,为了改变样式就需要一定的判断了。现在有了display:box,一切就变得简单了。

parent {display : box;} 
children {box-flex : 1;}

    *需要自适应的子元素必须是display:block or box,否则无效 
    *若需子元素间保持宽度一致,需设置width:100%

    单行文本溢出显示…

element{text-overflow : ellipsis;white-space : nowrap;overflow : hidden;}

    多行文本溢出显示…

element{-webkit-line-clamp : 2;box-orient : vertical;}

    *元素必须是display:box,否则无效

    文字水平垂直居中

element{box-pack : center;box-align : center;}

    *元素必须是display:box,否则无效

    图片水平垂直居中

     一开始我认为通过设置display:table-cell,加上vertical-align:middle就可以解决垂直居中的问题,但是后来发现改变了display后会影响到本身的布局了,所以推荐下面这种方式。

    img vertical-align : middle; 
    parent : after{ 
        content : " ";        
        visibility : hidden; 
        display : inline-block; 
        height : 100%; 
        vertical-align : middle; 
    }

    手机上的点击反馈

    去掉浏览器默认的反馈,-webkit-tap-highlight-color : rgba(0,0,0,0); 
    *不需要点击反馈,不用a标签(UC下问题); 
    *使用了delegate,建议使用a或者button;  
    *ipad下必须设置在绑定事件的元素上。

    transform闪动问题

parent {-webkit-backface-visibility : hidden;} 
children {-webkit-transform-style : preserve-3d;}

    *android下会出现一些问题(click失效、input重影等); 
    *可使用-webkit-transform : translate3d(0,0,0)替代。


    
[3] robotium使用札记
    来源: 互联网  发布时间: 2014-02-18
robotium使用笔记

1、多个测试用例运行时实际上是有顺序的,显示含有测试方法的类按照字母排序,同一个类里面的测试方法再按照字母排序,依次执行。所以可以通过添加前缀(A_,B_)等等调整测试顺序,让测试例子更符合渐进逻辑。

 

2、继承问题,理论上测试类可以继承ActivityInstrumentationTestCase2或者是它的子类,但是需要注意的是,如果是继承子类,那么子类中的测试方法在运行这个测试类的时候也会再次运行。

假设 A继承ActivityInstrumentationTestCase2且有测试方法testA;

        B继承A,且有测试方法testB;

那么当运行测试时,测试顺序是

        testA(A)--->testA(B)--->testB(B)

即testA会运行2次。

 

3、ActivityInstrumentationTestCase2<T>实际上API中要求指定被测试类的具体类型,但是在黑盒测试中,往往无法取得具体的测试类,在尝试直接用Activity代替时,测试效果不太理想,猜测可能是:

  • 用Activity代替会令到启动被测试程序时出现未知的问题。(仅仅是根据现象猜测)
  • 实测机子本身性能有问题导致测试效果不稳定,这个也是有可能的。

之后解决方法是不指定具体类型:

@SuppressWarnings({ "unchecked", "rawtypes" })
public abstract class Framework extends ActivityInstrumentationTestCase2{

	private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME = "com.***.LauncherActivity";
	private static Class launcherActivityClass;
	static {
		try {
		launcherActivityClass = Class
		.forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME);
		} catch (ClassNotFoundException e) {
		throw new RuntimeException(e);
		}
	}
	 
	public Framework() throws ClassNotFoundException {
		super(launcherActivityClass);
	}
}

 不过会提示warning,可添加注释消除warnning


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android获取手机SIM卡运营商信息的方法 iis7站长之家
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3