前言,写这篇文章的目的是最近开发Android的时候,有一些心得,但是平时都没有记录下来,后来又遇到相似的问题,还要去查资料,麻烦,所以就写这篇文章,不定时更新Android方面的一些东西(主要偏向于小技巧,在网上一下子比较难查到的那种),看到文章的朋友,希望你把你总结的小技巧也留下来,我会编入文中,分享知识,也是一种快乐。

---------------------------------------------------无耻的分割线---------------------------------------------------------

一:离线配置Android开发环境,我已经配置了很多次Android开发环境了,发现这种方式是最方便,最稳定的。文章链接:http://blog.csdn.net/coding_or_coded/article/details/6841518

二:Android项目SDK版本的更换,这个问题是这样的,比如你开始建了一个项目,是基于sdk1.6的,但是后来你想更换版本,网上一些人的处理方式是重新建一个项目,然后copy原来项目的文件进去,这种方式太麻烦。比较方便的做法是直接修改项目中的default.properties文件,把里面的target=android-8换为你需要的sdk版本,系统就会自动帮你完成版本的转换,在调用模拟器的时候,可能还需要修改AndroidManifest.xml中的


视自己情况而定。

三:根据不同的状态,改变按钮的背景图片。在传统的web开发中,一般情况下,当我们的鼠标滑过一个url链接,点击一个url的时候,url的颜色等状态都会发生改变,这是程序员为了给用户更好的用户体验而设计的,在android也有同样的接口。下面以按钮为例,正常情况下,如果我们的应用做的烂的话,就直接给按钮一个背景图片,那么,在按钮聚焦,或者我们点击按钮的时候,用户看不到任何的反馈。改变这种烂的用户体验就是通过按钮状态来改变按钮的外观,下面是一种实现方式。

1.为按钮选择背景

但是注意,这里的welcome_botton不是一个图片,而是一个xml文件,而这个xml文件就充当了多个图片的选择器,在按钮不同状态的时候,xml文件中对应的图片就会被选择。

2.编写welcome_botton:

补充:上面的代码实现了简单的效果,如果需要更加复杂的,可以通过组合属性来完成,常用的属性有下面几个:state_pressed,state_checked,state_pressed,state_selected,state_focused,state_enabled。另外,这篇文章也不错:http://mobile.51cto.com/android-266469.htm

四:android:gravity和android:layout_gravity的区别

android:gravity属性是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置.该属性就干了这个.

android:layout_gravity是用来设置该view相对与起父view 的位置.比如一个button 在linearlayout里,你想把该button放在靠左,靠右等位置就可以通过该属性设置.这里名字其实也就说的比较清楚了,layout,布局的吗!

五:Service

Service是android 系统中的一种组件,它跟Activity的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service的启动有两种方式:context.startService() 和 context.bindService()。

使用context.startService() 启动Service时会经历:context.startService() ->onCreate()- >onStart()->Service running,关闭时会经历context.stopService() | ->onDestroy() ->Service stop

如果Service还没有运行,则android先调用onCreate()然后调用onStart();如果Service已经运行,则只调用onStart(),所以一个Service的onStart方法可能会重复调用多次。stopService的时候直接onDestroy,如果是调用者自己直接退出而没有调用stopService的话,Service会一直在后台运行。该Service的调用者再启动起来后可以通过stopService关闭Service。

使用使用context.bindService()启动Service会经历:ontext.bindService()->onCreate()->onBind()->Service running,关闭时:onUnbind() -> onDestroy() ->Service stop
。onBind将返回给客户端一个IBind接口实例,IBind允许客户端回调服务的方法,比如得到Service运行的状态或其他操作。这个时候把调用者(Context,例如Activity)会和Service绑定在一起,Context退出了,Srevice就会调用onUnbind->onDestroy相应退出。

在Service每一次的开启关闭过程中,只有onStart可被多次调用(通过多次startService调用),其他onCreate,onBind,onUnbind,onDestory在一个生命周期中只能被调用一次。

目前就只想得到这几个了,本博客会不断更新。

更多相关文章

  1. Android自定义属性时TypedArray的使用方法
  2. Android高手进阶教程之----Android 中自定义属性(attr.xml,Typed
  3. ImageView之android:tint=" "属性方法作用详解
  4. Android中webview加载的网页上的按钮点击失效
  5. android之LinearLayout中android:layout_weight属性理解
  6. android中的SVG图像的各个属性意义
  7. Android中的shape中的属性大全
  8. AndroidManifest中activity属性设置大全
  9. Android——按钮类控件

随机推荐

  1. Android访问服务器出现W/System.err(9302
  2. Android(安卓)& Chrome
  3. Android(安卓)ANR问题分析
  4. Android七大布局
  5. listview使用小技巧
  6. ROS与Android的通信
  7. java/android 统计文件夹大小及删除文件
  8. Android 登录界面Demo源码
  9. android在代码中为new出的控件设置ID及se
  10. EditText android:windowSoftInputMode