跟着视频自己顺利创建了HelloWorld项目,完成后出现了几个疑问。
第一个问题是明明是创建了一个项目,可是结果出现了两个,以为是环境有问题就把appcompat_v7这个项目删掉了,马上问题来了,我们的HelloWorld项目开始报错。appcompat_v7是有存在的意义的。
首先解决项目建成后appcompat_v7项目出错。HelloWorld项目出现红色警告的问题。
点击菜单栏"Project",选 择"Clean",然后点击"OK",Clean完成后,你会发现appcompat_v7包出错。test包出现红色警告的问题已经解决了,只是 test包还有黄色警告,那只是因为test的Java文件中import的类没有被使用,所以完全不用管它。
如果还不管用,那么右键appcompat_v7包,选择Properties,点"Android",如果Library栏下的"Is Library"方框没勾选,则勾选上,点击"OK",然后再照以上步骤执行"Clean"操作即可。
问过度娘后了解到,使用了新版ADT后才会出现这种状况。appcompat_v7是Google自己的一个兼容包,就是一个支持库,能让2.1以上全使用上4.0版本的界面。在创建项目的时候直接把最小SDK选在Android4.0以上就不需要这个支持库了。
第二个问题是明明语法没错,但是编译就是不通过。我的解决办法是刷新项目。如果不成那就剪切那段代码,编译通过后在粘贴回来。好蛋疼。
第三个问题就是layout配置文件。创建完成项目后layout包下会生成fragment_main.xml和activity_main.xml两个文件,而且默认使用的是前者。
仔细查看后发现这两个的根节点不相同,分别RelativeLayout和FrameLayout。于是再次求助度娘。
Android 五大布局: FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)。
FrameLayout:所有东西依次都放在左上角,会重叠,这个布局比较简单,也只能放一点比较简单的东西。
LinearLayout:每一个LinearLayout里面又可分为垂直布局(android:orientation="vertical")和水平布局(android:orientation="horizontal" )。当垂直布局时,每一行就只有一个元素,多个元素依次垂直往下;水平布局时,只有一行,每一个元素依次向右排列。
AbsoluteLayout:绝对布局用X,Y坐标来指定元素的位置,这种布局方式也比较简单,但是在屏幕旋转时,往往会出问题,而且多个元素的时候,计算比较麻烦。
RelativeLayout:相对布局可以理解为某一个元素为参照物,来定位的布局方式。主要属性有:相对于某一个元素android:layout_below、 android:layout_toLeftOf相对于父元素的地方android:layout_alignParentLeft、android:layout_alignParentRigh。
TableLayout:每一个TableLayout里面有表格行TableRow,TableRow里面可以具体定义每一个元素。
找的视频好偷懒,这些都没说。唉o(︶︿︶)o