Android学习之路—新手学Android的体会!

说是新手,其实学安卓已经快3个月了,但由于学校各种事情的原因,每天只有一个小时或者几天才会有几个小时来学习安卓。目前是大三学生呀,也是第一次写技术博客,因为据说是这样才能走得更远(:。。我不是计算机专业的,但之前去英国留学了半年学了javaWeb编程,和队友一起做了一个类似facebook的网站应用,但只是玩一玩,也没发布。  

言归正传,我之所以学习android是因为申请的一个大学生创新项目要做一个手机app,于是三个月前我就开始了android学习之旅————边学边做。  

我们一共3个人,其他两个都是做硬件的,只有我一个做app,于是只有我一个人写代码,做UI,切图片,做图标。。。。。又是新手,感觉痛苦的要死。相信很多人都遇到过这种问题。所以我的第一篇博客就是想和大家分享一下在这种情况之下我是怎么学习android的,之间走过的一些弯路,希望有大神能够指引一下道路,也希望可以给刚起步的同志们一点心得和信心。  

**一、弯路一:画图似的拖控件**  

我装的是AndroidStudio,要做界面,我一看竟然可以拖控件,顿时感觉很爽,但拖了之后才发现不像C#拖控件那么方便。当时为了做一个界面有一个周都在拖,就像在画图,根本没看xml,现在想想也是蛮拼的。当时最困扰我的就是那个relativeLayout,一个label就是拖不到想要的地方去,各种拖各种试。  

后来慢慢地学会了到底怎么用这些layout,relativeLayout主要是各种控件之间的相对关系,个人认为以下几个掌握了就没问题了:  

1、两控件相对位置  

android:layout_below="@+id/" android:layout_above="@+id/"  

这两个很好理解,我如果有一个控件已经确定了位置,那在另一个控件的定义里加上以上两个属性,就可以把这个控件放在已有控件的上面还是下面。那两个控件离多远呢,那就要用到margin了,可以直接在拖控件界面直接选择margin,上下左右的margin,也可以自己写,如android:layout_marginBottom="20dp"。  

2、android:layout_centerHorizontal="true" 和 android:layout_centerVertical="true"这个居中很好用,也好理解,分别是水平居中和垂直居中    3、 android:layout_alignParentBottom="true" 和 android:layout_alignParentBottom="true" 控件位于顶部或者底部,Parent是你这个控件所在的地方,同样的也有Right和Left,这个也比较实用,不管屏幕多大,控件都会处于那个固定的位置。  

目前只感觉有这些就够用了,因为RelativeLayout也是官方推荐的,我用着这个Layout也比较舒服,所以LinearLayout和其他的就不在这里介绍了,大家可以baidu。总体感觉用RelativeLayout写xml比拖控件快,一拖他们之间的相对位置等就会出现很多莫名其妙的变化。  

**二、github或者其他地方下载的源码无法运行(AndroidStudio)**  

由于我用的是AndroidStudio,源码很多都是eclipse做的,所以导入之后一般不能运行,一般会显示Please install missing platform and sync project, 这时候一般是修改build.gradle,首先切换到Project格式下,找到app目录下的build.gradle,修改compileSdkVersion到你已有的版本。![build.gradle](https://img-blog.csdn.net/20150531093615717)  

但有的时候又会出现其他奇奇怪怪的问题,在网上找了很多方法都不好用。这时候还是建议在eclipse下运行,问题就都没了。所以我装了AndroidStudio和eclipse两种环境,为什么不直接用eclipse呢?太慢!用了AndroidStudio之后就感觉快得爽翻。在这里还是推荐一下GenyMotion,安好之后模拟器快了几倍,提高效率的神器呀。 怎么把eclipse里写的工程导到Studio里用呢?可以右键项目,export,再选择gradle,然后就会在项目里出现一个build.gradle。成功之后在Studio里import project,选择原项目里的新生成的build.gradle即可。  

有时导入gradle工程时会出现gradle版本不对, 如Gradle Project Compile Error,这时一般是把gradle-wrapper里最后一行改成distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip,build.gradle里改成classpath 'com.android.tools.build:gradle:1.1.0'或者1.1.0+,再try again 即可。  

**三、图标、背景图片资源等问题**  

一开始是上网各种找,在此推荐一个下载android图标icon的网站http://www.easyicon.net/各种图标png应有尽有

后来感觉自己做比较好,尤其是背景,形状等,推荐Sketch软件,强大堪比photoshop,但只有几兆,操作很简单,强烈建议用之前先看一下它的演示视频。

感觉UI非常重要的是配色,整个app色调最好一致,从actionbar到其他地方都最好一致。浅蓝或浅绿感觉是万能色,实在不行就黑白,背景也千万不要放花哨的图片,显得很乱。上一张我练习的一张图![用的RealtiveLayout和自己用Sketch做的图标](https://img-blog.csdn.net/20150531100809693)

**四、学习的网站**  

零基础的建议看视频,极客学院不错,有了一定基础的看博客就很好,在这里推荐一个给了我很大提高的博客(Android学习之路),上链接http://www.jianshu.com/p/4a0713000c3b 里面的Android基础一个一个看,很快入门。  

再推荐代码家和stormzhang,进阶的话看他们的东西很好

总结:  

第一篇博客,东西比较杂,主要是几点:做界面掌握layout使用,和各种背景、图标、配色的选择,那么界面一般丑不到哪里去。

从一些基本的功能开始学,比如listview,网络请求get,post的一些方法,json解析等等,这些都有源码,我这里也就不搬了。

接下来我准备学习github很好的一些源码,之后也会陆续地写一些博客

你可能感兴趣的:(Android学习之路—新手学Android的体会!)