您的位置:首页 > 移动开发 > Android开发

Android第三周实习笔记

2016-03-14 22:49 471 查看
1.*Drawable 综述及 Shape 类型*

(1)Drawable是对可绘制物件的一般抽象。

一般与颜色、图像、图片有关。

与View不同,不具有事件和交互方法。

Drawable 相关子类



(2).实例:一般用于变化颜色、变化图片、绘制图形。

创建xml文件,位置:drawable/xxx.xml,

变化图片:

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 默认时的背景图片-->
<item android:drawable="@drawable/pic1" />
<!-- 触摸模式下单击时的背景图片-->
<item android:state_pressed="true" android:drawable="@drawable/pic3" />
<!--选中时的图片背景-->
<item android:state_selected="true" android:drawable="@drawable/pic4" />
<!--获得焦点时的图片背景-->
<item android:state_focused="true" android:drawable="@drawable/pic5" />
</selector>


变化颜色:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:color="#FFF" />
<item android:state_focused="true" android:color="#FFF" />
<item android:state_pressed="true" android:color="#FFF" />
<item android:color="#000" />
</selector>


还可以实现更复杂的效果,例如渐变:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"> /
<item android:state_pressed="true">//定义当button 处于pressed 状态时的形态。
<shape>
<gradient android:startColor="#8600ff" />
<stroke android:width="2dp" android:color="#000000" />
<corners android:radius="5dp" />
<padding android:left="10dp" android:top="10dp"
android:bottom="10dp" android:right="10dp"/>
</shape>
</item>
<item android:state_focused="true">//定义当button获得 focus时的形态
<shape>
<gradient android:startColor="#eac100"/>
<stroke android:width="2dp" android:color="#333333" color="#ffffff"/>
<corners android:radius="8dp" />
<padding android:left="10dp" android:top="10dp"
android:bottom="10dp" android:right="10dp"/>
</shape>
</item>
</selector>


注:最后,需要在包含 button的xml文件里添加两项。例如main.xml 文件,需要在里加两项android:focusable=”true” android:background=”@drawable/button_color”

可以绘制图形,作为按钮或者文本框的背景:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

<!-- 圆角 -->
<corners
android:radius="3dp" /><!-- 设置圆角半径 -->
<!-- 间隔 -->
<padding
android:left="2dp"
android:top="2dp"
android:right="2dp"
android:bottom="2dp"/><!-- 各方向的间隔 -->
<!-- 大小 -->
<size
android:width="10dp"
android:height="10dp"/><!-- 宽度和高度 -->
<!-- 填充 -->
<solid
android:color="@color/comm_red"/><!-- 填充的颜色 -->

</shape>


2.SVN使用:

http://jingyan.baidu.com/article/6c67b1d6f524d52787bb1ef3.html

http://jingyan.baidu.com/article/358570f6638aa4ce4724fcf7.html

3.Material Design

Material Design是Google官方就Android的动画、样式、布局、组件、模式和可用性提出的一系列参考做法。

可学习资源:

http://wiki.jikexueyuan.com/project/material-design/

https://www.google.com/design/spec/material-design/introduction.html

4.出现该问题unspecified on project app resolves to an APK archive which is not supported as a compilation dependency

可能是:创建了两个Module,其中一个Module依赖另一个Module而导致了出现该问题。在Android Studio中,有ModuleA和ModuleB,我们希望ModuleA依赖ModuleB,运行时候可能会出现该问题。

网上解决方法:/article/2401068.html

个人遇见时的解决方法:



dependencies应该如上图,一个Module没有乱引用另一个Module东西,如不应该有compile pathfiles(***)之类。

5. tag requires a ‘drawable’ attribute or child tag defining a drawable

1.可以clean下

2.运行查看背景效果,如果不影响就可以不处理。

3.谷歌官方文档给出的做法:

res目录下新建color文件夹,然后通过@color/.xml引用。



6.Missing styles. Is the correct theme chosen for this layout? Use the Theme combo box above the layout to choose a different layout, or fix the theme style references.

1.先clean试下

2.查看布局的样式是否和AndroidManifest的样式是否一致。





3.查看res-values-style.xml里面的style.xml文件是否出问题。



正常情况的显示界面应该是这样:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: