huxiubo

博客园 首页 新随笔 联系 订阅 管理

2013年10月31日 #

摘要: 其实我们的布局,是根据屏幕物理尺寸来区分的,使用的单位是英寸,为简单起见,Android把所有的屏幕大小分为四种尺寸:小,普通,大,超大(分别对应:small,normal, large, and extra large).屏幕物理尺寸和资源并不是绝对一一对应,从上图来看,他们之间有不少的重叠区,这意味着小屏small因 为屏幕密度也有可能使用MDPI的资源,LARGE的大屏也有可能使用MDPI的资源,这样会产生图像大小和屏幕比例失谳的问题,在一些情况下图像小的看 不清楚或者有些情况下图像大的显示不完全,所以一般来说,资源之外,是需要为不同的屏设计不同的LAYOUT文件。解决资源文件的问题可以 阅读全文
posted @ 2013-10-31 14:31 huxiubo 阅读(632) 评论(0) 推荐(0) 编辑

摘要: 不同densityDpi下屏幕分辨率信息,以480dip*800dip的WVGA(density=240)为例densityDpi=120时屏幕实际分辨率为240px*400px状态栏和标题栏高各19px或者25dip横屏是屏幕宽度400px或者800dip,工作区域高度211px或者480dip竖屏时屏幕宽度240px或者480dip,工作区域高度381px或者775dipdensityDpi=160时屏幕实际分辨率为320px*533px状态栏和标题栏高个25px或者25dip横屏是屏幕宽度533px或者800dip,工作区域高度295px或者480dip竖屏时屏幕宽度320px或者480 阅读全文
posted @ 2013-10-31 14:31 huxiubo 阅读(240) 评论(0) 推荐(0) 编辑

摘要: android:id为控件指定相应的IDandroid:text指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符串android:gravity指定View组件的对齐方式,比如说居中,居右等位置这里指的是控件中的文本位置并不是控件本身android:layout_gravity(区别于:android:gravity)指定Container组件的对齐方式.比如一个button在linearlayout里,你想把该button放在靠左、靠右等位置就可以通过该属性设置.以button为例,android:layout_gravity="right&q 阅读全文
posted @ 2013-10-31 14:29 huxiubo 阅读(202) 评论(0) 推荐(0) 编辑

摘要: px:是屏幕的像素点in :英寸mm:毫米pt :磅,1/72英寸dp :一个基于density的抽象单位,如果一个160dpi的屏幕,1dp=1pxdip:等同于dpsp :同dp相似,但还会根据用户的字体大小偏好来缩放。建议使用sp作为文本的单位,其它用dipdip和px的关系:QVGA: density=0.75; densityDpi=120; QVGA(240*320)HVGA: density=1.0; densityDpi=160; HVGA(320*480)VGA: density=1.0; densityDpi=160; VGA(480*640)WVGA... 阅读全文
posted @ 2013-10-31 14:27 huxiubo 阅读(555) 评论(0) 推荐(0) 编辑

2013年10月24日 #

摘要: Layout_weight是线性布局,也就是LinearLayout里面用到的,下面通过实验来看这个Layout_weight的特性。 1.当控件的属性android:layout_width="fill_parent"时,布局文件如下: Xml代码 在这里Button1的Layout_weight=1,Buttong2的Layout_weight=2,运行效果为: 我们看到,Button1占了2/3,Button2占了1/3。如果此时把button2的weight设置成2000,不是说Button2就消失了,而是Button1的宽度几乎占满了屏幕宽度,而屏幕最后一丝细条则 阅读全文
posted @ 2013-10-24 14:41 huxiubo 阅读(436) 评论(0) 推荐(0) 编辑

摘要: // 指定命名空间 private static final String NAMESPACE = "http://WebXml.com.cn/"; // 给出接口地址 private static String URL = "http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx"; // 设置方法名 private static final String METHOD_NAME = "getWeather"; // SOAP Action private static 阅读全文
posted @ 2013-10-24 10:21 huxiubo 阅读(646) 评论(0) 推荐(0) 编辑

2013年10月18日 #

摘要: Android动画分为Tween动画和Frame动画,Tween动画主要包括图片的放大缩小、旋转、透明度变化、移动等等操作;Frame动画则简单得多了,就是把一张张的图片连续播放产生动画效果。 本节主要介绍一下Frame动画,Tween动画会在后面的文章中介绍,敬请关注。 Frame动画主要是通过AnimationDrawable类来实现的,它有start()和stop()两个重要的方法来启动和停止动画。Frame 动画一般通过XML文件配置,在工程的res/anim目录下创建一个XML配置文件,该配置文件有一个根 元素和若干个子元素。 实现一个人跳舞的Frame动画,6张图片如下所示:1、. 阅读全文
posted @ 2013-10-18 15:34 huxiubo 阅读(204) 评论(0) 推荐(0) 编辑

摘要: Android动画分为Tween动画和Frame动画,上一节通过一个实例介绍了Frame动画,本节将介绍Tween动画。Tween可以把对象进行缩小、放大、旋转和渐变等操作。 Tween动画有四个主要的实现,下面分别说明下:1、AlphaAnimation:渐变动画,主要控制透明度变化动画类,常使用AlphaAnimation(float fromAlpha, float toAlpha)来构造; fromAlpha:动画开始时的透明度(取值范围为0.0到1.0); toAlpha:动画结束时的透明度;2、ScaleAnimation:主要控制尺度变化的动画类,常使用ScaleAnimati. 阅读全文
posted @ 2013-10-18 15:31 huxiubo 阅读(188) 评论(0) 推荐(0) 编辑

2013年10月17日 #

摘要: 在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局。那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在代码中动态的更改它的可见性。这样的做法的优点是逻辑简单而且控制起来比较灵活。但是它的缺点就是,耗费资源。虽然把View的初始可见View.GONE但是在Inflate布局的时候View仍然会被Inflate,也就是说仍然会创建对象,会被实例化,会被设置属性。也就是说,会耗费内存等资源。 推荐的做法是使用android.view.ViewStub,ViewStub 是一个轻量级的View,它一个看. 阅读全文
posted @ 2013-10-17 11:44 huxiubo 阅读(244) 评论(0) 推荐(0) 编辑