(一)、File选项
- 查看as中安装的JDK版本:file——Other Settings——Default project structure
- 查看AS版本:help——about
- 设置快速生成注释模板 方法一:file——settings——editor——Live Templates
方法二:file——settings——editor——File and Code Templates——File ——Header
区别:第一个可以设置自定义的提示文本;第二个是创建类时自动生成
(二)、快捷键
快捷键可以自己去设置里面设置成自己习惯的快捷键方式
步骤:File->Settings->keymap。然后根据自己习惯给功能设置快捷键
Shift+ | Ctrl+ | Alt+ |
---|---|---|
Shift:在全局中搜索 | d:复制黏贴此行 | /:复制前一个词 |
F9:调试 | k:提交svn代码 | 1:打开/关闭工具窗口 |
Ctrl++/—:收起/展开所有代码块 | f/L:在此类中搜索 | 9:打开Version control(版本控制) |
Alt+/:复制下一个词 | b:进入此类 | 6:打开log |
F10:运行代码 | g:快速定位到某行某位 | 5:打开debug |
Alt+←/→ :返回光标的上一个位置/下一个位置 | Ctrl+L:规范代码格式 | |
j:在浏览器中使用打开下载目录 | ←/→ :导航栏中进入左右的类 | |
Alt+F12:当前页面的文件路径 |
在代码中“logt(字符串)+TAb(按键)”自动生成TAG
(三)、res资源文件介绍部分
一)、Drawable布局文件夹:
1、shape:用于设定形状:
可以在selector,layout中使用。本身属性定义shape的形状:rectangle(矩形)、oval(椭圆形)、line(线形)、ring(环形),其中环形的特有属性:
Android:innerRadius(内环的半径)
Android:innerRadiusRatio(浮点型,以环的宽度比率表示内环的半径)
1.android:thickness | 尺寸,环的厚度 |
---|---|
2.android:thicknessRatio | 浮点型,以环的宽度比率来表示环的厚度, |
android:useLevel | boolean值,如果当做是LevelListDrawable使用时值为true,否则为false. |
有六个子标签,如下:
- 填充(solid):填充颜色(使用后渐变效果失效)
<solid android:color=”#000000”/>
- 间隔(padding):用于内部边距,设置四个方向上的间隔
<padding android:left/top/right/bottom=”10dp”/>
- 大小(size):设置大小
<size android:width/height=”10dp”/>
- 圆角(corners):同时设置五个属性,则Radius失效
<corners android:radius/topLeftRadius/topRightRadius/bottomLeftRadius/bottomRightRadius=”1dp”/>
- 描边(stroke):dashWith和dashGap属性,只要其中一个设为0dp,边框则为实线边框
<stroke android:with/color/dashWith/dashGap=”2dp/#000000/2dp/2dp”/>
边框的宽度/边框的颜色/虚线的宽度/虚线的间隔宽度
- 渐变(gradient):若设置填充颜色,则无渐变效果。
<gradient android:type=”linear”//可选值:radial(放射渐变,使用时必须使用gradientRadius)、linear(线性渐变)、sweep(扫描渐变)
android:startColor=”#000000”//开始点的颜色
android:centerColor=”#000000”//开始与结束之间的颜色
android:endColor=”#000000”//结束点的颜色
android:angle=”90”//渐变角度。必须是45的倍数,0从左到右,90从下到上且仅在type=”linear”有效,不然会报错
android:centerX=”0”//渐变中心x的相当位置,值0~1
android:centerY=”0”//渐变中心y的相当位置,值0~1
android:gradientRadius=”90” //渐变半径,只有radial可以使用
android:useLevel=”false”/>//true是将shape当作LevelListDrawable使用,默认false,此时才有渐变效果
2、selector:状态选择器:
seekbar中的背景条不能简单的设置drawable,会导致设置的背景显示不全
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@android:id/background"
android:drawable="@mipmap/img_home_music_card_progress_bar_n"
android:scaleWidth="100%"></item>
<item android:id="@android:id/progress">
<scale
android:drawable="@mipmap/img_home_music_card_progress_bar_f"
android:scaleWidth="100%">
</scale>
</item>
</layer-list>
二)、anim文件夹:
动画资源文件夹
帧动画
根标签 <animation-list>
包含一个或多个子标签:<item>
<animation-list>
包含的属性有android:oneshot
true:仅执行一次动画,false 循环动画<item>
包含属性android:drawable
此帧绘制的对象android:duration
此帧显示的时间
对应的是Java的视图动画(View animation),包含标签有:translate(平移)、scale(缩放)、rotate(旋转)、alpha(透明度)
补间动画
根标签可以是 <set>
<translate>
<alpha>
<rotate>
<scale>
,其中根标签<set>
可以包含一组或多组其他动画标签
补间动画继承是Animation,故attrs中<Animation>
标签组中的属性在其他标签中也可以使用
<set>
代表java中的AnimationSet
类,对应attrs中的<AnimationSet>
标签组中的属性集
包含的属性的如下:
android:shareInterpolator
:true表示所有子标签中共用同一插值器
android:fillBefore
:设置为true时,待动画执行完成后,会回到动画执行前的状态。默认为 true
android:fillAfter
: 设置为 true时,待动画执行完成后,会停留在最后的状态视图。默认为false;如果是动画集合<set>
需要在<set>
标签中设置该属性才有效
android:duration
:动画从开始到执行完成所花费的时间(单位:毫秒值)
android:startOffset
:设置动画在执行之前需要等待的时间(单位:毫秒值),若是重复执行,则每次执行都需要等待
android:repeatMode
:设置动画的重复执行的模式,可以设置为两个值:restart 动画从开始重复执行,默认值;reverse 动画反方向重复
android:interpolator
:可以设置动画速率的变化,设置值为Interpolator插值器资源。
Interpolator | Rresource ID | Description |
---|---|---|
AccelerateDecelerateInterpolator | @android:anim/accelerate_decelerate_interpolator | 在动画开始与结束的地方速率变换比较慢,在中间的时候加速 |
AccelerateInterpolator | @android:anim/accelerate_interpolator | 在动画开始的时候速率比较慢,然后开始加速 |
AnticipateInterpolator | @android:anim/anticipate_interpolator | 开始的时候向后然后向前甩 |
AnticipateOvershootInterpolator | @android:anim/anticipate_overshoot_interpolator | 开始的时候向后然后向前甩一定值后返回最后的值 |
BounceInterpolator | @android:anim/bounce_interpolator | 动画结束的时候弹起 |
CycleInterpolator | @android:anim/bounce_interpolator | 动画循环播放特定的次数,速率改变沿着正弦曲线 |
DecelerateInterpolator | @android:anim/decelerate_interpolator | 在动画开始的地方快然后慢 |
LinearInterpolator | @android:anim/decelerate_interpolator | 以常量速率改变 |
OvershootInterpolator | @android:anim/overshoot_interpolator | 向前甩一定值后再回到原来位置 |
<translate>
平移动画,等同于Java中的TranslateAnimation类,对应attrs中的<TranslateAnimation>
标签组中的属性集
<android:fromXDelta>
:起始X位偏移;浮点(相对位置的像素数)或百分比(相对元素宽度百分比)或百分比p(相对父view的百分比);
<android:toXDelta>
:结束X位偏移;同上
<android:fromYDelta>
:起始Y位偏移;同上
<android:toYDelta>
:结束Y位偏移;同上<alpha>
透明度,等同于Java中的AlphaAnimation类,对应attrs中的<AlphaAnimation>
标签组中的属性集
<android:fromAlpha>
:起始时透明度;浮点值0.0-1.0
<android:toAlpha>
:结束时透明度;同上rotate
旋转动画,等同于java中RotateAnimation类,对应attrs中<rotate>
标签组中的属性集
<android:fromDegrees>
:起始时的角度;浮点值,以角度位单位
<android:toDegrees>
:结束时的角度;同上
<android:pivotX>
:旋转中心的x坐标;浮点(相对View的左边像素数)或百分比(相对View的左边百分比)或百分比p(相对父view的左边百分比)
<android:pivotY>
:旋转中心的y坐标;同上
属性动画
根标签可以是<set>
,<objectAnimator>
,<valueAnimator>
,同补间动画一样,<set>
可以包含一个或多个其他的标签
<set>
与补间动画中的< set>
根标签一样,同样代表Anima
三)、Values文件夹:
1、arrays数组文件夹:
暂时使用过的有(字符串数组)、图片数组、颜色数组等
字符串数组:代码中使用方式为:
Resources res=getResources();
String[]str=res.getStringArray(R.array.arryname);
图片数组,颜色数组:代码中使用方式为:
Resources res=getResources();
TypedArray image=res.obtainTypedArray(R.array.imagearray);
Int imageId=image.getResourceId(i,0);(颜色同理)