用户资源访问

来源:互联网 发布:微销通软件下载 编辑:程序博客网 时间:2024/05/24 07:23
1. 资源文件夹中不允许出现任何的大写字母,数字不能打头,不允许出现特殊字符,只允许[a-z][0-9a-z_.]2. 获取资源管理器 getResource()方法3. 获取屏幕getResources().getDisplayMetrics().widthPixels(heightPixels);

字符串

必须位于res/values中,位于

<resource>       <string name="id">value</string></resource>
xml中使用 @string/id 来访问 字符串
在java代码中访问String str = getResource().getString(R.string.xxx);//TextView和它的子类都有重载方法可以直接使用字符串资源textview.setText(R.string.xxx);//不能直接给数字,否则抛ResourceNotFound异常

颜色

必须位于res/values中,位于

<resource>     <color name="id">#fff</color>
xml中 @color/id 来访问
 java代码中 int color = getResource().getColor(R.color.xxx);
 RGB , ARGB , RRGGBB , AARRGGBB

尺寸

1. px 在画线 画边框,其他情况不要用2. dp/dip 无像素无关的 抽象密度,在不同的分辨率上对应不一样的像素点3. sp 跟dp一样,会随着用户字体首选项大小进行调整
 xml和java代码同上

布局

xml中 使用 <include layout="@layout/xxx" />
java代码中使用布局资源LayoutInflate//有上下文的情况加载布局View layout = View.inflate(this, R.layout.xxx, null);//在Activity中加载布局getLayoutInflater().inflate(R.layout.activity_main, null);

数组

<resource>   <string-array name="id">       <item>XXX</item>       <item>XXX</item>       <item>XXX</item>   </string-array></resource>
java: String[] stringArray = getResources().getStringArray(R.array.love);

Drawable

xml文件放在新建的drawable文件夹下,studio已经取消了drawable-xxhdpi这文件夹,而是使用专门用来存储图片的文件夹

1. 帧动画 Animation-List

<animation-list   xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="是否执行一次">        <item android:drawable="帧动画的图片" android:duration="持续时间(毫秒)" /></animation-list> AnimationDrawable 如果设置的是src属性,会自动开始播放 如果设置的是background,需要java代码获取后进行start AnimationDrawable background = (AnimationDrawable) xxx.getBackground(); background.start();

2. 位图 bitmap

 所有的drawable下的图片,最终都会转变成bitmapBitmapDrawable可以将任意图片进行 拉伸,平铺。。。<bitmap android:src="需要处理的背景图"     android:tileMode="mirror镜像 repeat重复"/>

3. 点9图

防止拉伸时破坏png的图片使用draw9patch工具来完成。位于sdk中tools里面4边可以修改,其中 左边和上面确定 图片可以被拉伸的区域,右边和下面确定内容的部分。

4. stateListDrawable 选择器

当我们的组件的状态不同时,展示给用户的图片也不相同(button点击效果)常用状态 所有组件state_enabled : 组件的enable属性改变时,去设置不同的图片state_selected: 手动获取焦点,被选中的,必须通过java代码来改变,任何一个组件都可以view.setSelected(true/false);state_pressed: 组件支持点击事件(clickable=true),并且被按下的时候CompoundButton支持的属性[CompoundButton可以被勾选的 RadioButton CheckBox 等组件的父类,支持该属性]state_checked:被勾选的时候和未勾选的时候图片改变。使用color作为drawable属性时,color必须放在colors文件中,来引用,不能直接使用颜色代码引用时候 使用 @drawable/选择器可以使用属性有:background,src,button,drawableTop([Left],[Right],[Bottom])

5. ColorStateListDrawable

新建color文件夹来存放该选择器作为textColor的属性设置的选择器,当TextView或者他的子类在状态改变时,文本字体颜色进行对应的修改状态和StateListDrawable完全相同,只不过drawable修改成了color属性引用的时候使用 @color/选择器

6. Shape

xml属性:<shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="形状" >corners 圆角gradient 渐变padding 组件内边距solid 形状内部填充颜色stroke 边框 宽度和颜色    </shape>
原创粉丝点击