Android资源文件(备忘录) 供个人记忆
来源:互联网 发布:手机游戏下载java 编辑:程序博客网 时间:2024/05/01 06:06
1.Theme 和Style的区别比较
style主要指的控件的风格, theme可以包含多个style,指的一个整体的主题风格;
theme 和 style 都可以在styles.xml里面新建style.
新建一个styles.xml文件,
<style> </style> 里可包含多个<item> </item>,
<span style="font-family:Microsoft YaHei;color:#666666;"><style name="TextViewStyle1"> <item name="android:textColor">@android:color/holo_red_light</item> <item name="android:textSize">40sp</item> <item name="android:layout_height">wrap_content</item> <item name="android:layout_width">200dp</item> <item name="android:background">@color/white</item> <item name="android:gravity">center_horizontal</item> </style> </span>
item里指定的是控件的属性,通过<item name="控件属性">属性值</item>,属性值可以直接写值,或者通过@指定,也可以通过?指定系统资源文件;
style可以继承父类style,显示继承通过parent = "父类style";隐式继承直接在name=“style名字”,这个style名字上面加上一个父类style的前缀 ,即“父类style.style名字”;
style的使用,在控件中使用 style=“@style/style名字”
theme指定主题一般在application或者activity里面,系统主题例如android:theme="android:theme="Theme.Light.NoTitleBar.Fullscreen" 白色背景,无标题栏,全屏
自定义主题通过android:theme="@style/style名字",或者java代码里通过setTheme(R.style.style名字);
2. Asserts 和Raw的区别比较
assets和res/raw工程目录下的文件都会被原封不动地打包到APK应用中,不会编译成二进制代码。
Assets目录
- assets目录中文件不会被映射到R.java中,即系统不会自动为其生成一个资源ID。
- assets目录中的文件需要借助AssetManager去访问。
- assets目录允许下面有多级子目录。
Res/raw目录
- 系统会为res目录下的所有资源生成相应的资源ID,Raw中的文件也不例外。
- res/raw下不允许存在目录结构。
1.assets目录的读取访问方式
AssetManager a = getAssets() ;
InputStream is = a.open(fileName) ;
a.openFd(fileName)得到的AssetFileDescriptor对象来获得fileName文件的信息,例如长度等。 a.list(“”)得到assets目录下的所有文件和子目录名称的数组,通过a.list(SubFolderName), 得到assets/SubFolderName下所有的文件和子目录名称的数组。 通过文件查找的方式来访问,速度会更慢一些。
2.res/raw目录的读取访问方式
InputStream is = getResources().openRawResource(R.id.fileNameID) ;
//R.id.fileNameID为需要访问的文件对应的资源ID.接着我们就可以通过输入流来读取相应文件的内容了。 在Android XML文件中你也可以@raw/的形式引用到它。
3.dpi、sp、px的区别以及转换关系
官方规定每英寸160个点的显示器,1dp=1px,因为方便适配。
px = dp * (dpi / 160); 高分辨率的手机dpi肯定大呀,同样dp的值所代表的像素更多。
使用dp作为单位绘制控件,不管屏幕大小,dpi的高低,显示的效果始终保持一致;
dp/dip density 表示每英寸上面多少个像素点。一英寸约等于2.54cm。device independent pixels 设备独立像素
SP (Scale-independent pixels)
public class DensityUtil { /** * 根据手机的分辨率从 dp 的单位 转成为 px(像素) */ public static int dip2px(Context context, float dpValue) { final float scale = context.getResources().getDisplayMetrics().density; //因为有的dpi为160的1.5倍,所以计算完后,为了没有小数,加0.5 return (int) (dpValue * scale + 0.5f); } /** * 根据手机的分辨率从 px(像素) 的单位 转成为 dp */ public static int px2dip(Context context, float pxValue) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (pxValue / scale + 0.5f); } }
4 .9图片的意义
在图片拉伸的时候特定区域不会发生失真
- Android资源文件(备忘录) 供个人记忆
- 字符(供个人记忆)
- 文件上传(仅供个人参考)
- 资源备忘录
- Android mk文件使用备忘录
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- 【Android】将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- [GDOI2017模拟9.4]同桌的你
- Arithmetic Progression
- Codeforces 588 C Duff and Weight Lifting【思维】
- HTTP协议知识点
- bzoj1179(缩点+乱搞)
- Android资源文件(备忘录) 供个人记忆
- 关于一些常识的总结
- leetcode题解
- 复选框 CheckBox 的实例
- POJ2121——Inglish-Number Translator
- IOS最完整小说阅读器Demo
- java生产者消费者PV操作为中,wait判断条件为何是while不是if疑惑解答
- 排序算法集合 -2
- 在RHEL5、6、7上配置磁盘的udev规则