一、LayerDrawable
1、定义layout_logo.xml,可以放一个drawable数组,即多个item 使用android:left|top|bottom|right来制定目标组件的位置。最下的Item被绘制在最上面。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<bitmap android:src="@drawable/icon"
android:gravity="center" />
</item>
<item android:top="25dp" android:left="25dp">
<bitmap android:src="@drawable/icon"
android:gravity="center" />
</item>
<item android:top="50dp" android:left="50dp">
<bitmap android:src="@drawable/icon"
android:gravity="center" />
</item>
</layer-list>
定义一个自定义进度条
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 定义轨道的背景 -->
<item android:id="@android:id/background"
android:drawable="@drawable/grow" />
<!-- 定义轨道上已完成部分的外观-->
<item android:id="@android:id/progress"
android:drawable="@drawable/ok" />
</layer-list>
2、使用方法
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<!-- 定义一个拖动条,并改变轨道外观 -->
<SeekBar
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:max="100"
android:progressDrawable="@drawable/my_bar"
style="@android:style/Widget.ProgressBar.Horizontal"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/layout_logo"
/>
</LinearLayout>
二、StateListDrawabl。。随目标组件状态的变化而自动切换
根元素为<selector..../>
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 指定获得焦点时的颜色 -->
<item android:state_focused="true"
android:color="#f44"
/>
<!-- 指定失去焦点时的颜色 -->
<item android:state_focused="false"
android:color="#111"
/>
</selector>
三、ShapeDrawer资源
用于定义一个基本的几何图形(如矩形、圆形、线条等)根元素为<shape.../>
android:shape rectangle oval line ring。
shape1
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 设置填充颜色 -->
<solid android:color="#fff"/>
<!-- 设置四周的内边距 -->
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
<!-- 设置边框 -->
<stroke android:width="3dip" android:color="#ff0" />
</shape>
shape2
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 定义填充渐变颜色 -->
<gradient
android:startColor="#FFFF0000"
android:endColor="#80FF00FF"
android:angle="45"/>
<!-- 设置内填充 -->
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
<!-- 设置圆角矩形 -->
<corners android:radius="8dp" />
</shape>
shape3
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<!-- 定义填充渐变颜色 -->
<gradient
android:startColor="#ff0"
android:endColor="#00f"
android:angle="45"
android:type="sweep"/>
<!-- 设置内填充 -->
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
<!-- 设置圆角矩形 -->
<corners android:radius="8dp" />
</shape>
android:backgroud:设置为定义的shape文件
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/my_shape_1"
/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/my_shape_2"
/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/my_shape_3"
/>
效果如图:
四、ClipDrawable资源,,从其他位图上的裁剪,,
可以应用在图片进度条上
根元素为<clip.../>
final ClipDrawable drawable = (ClipDrawable) imageview.getDrawable();
// max=10000
//修改ClipDrawable的level值
drawable.setLevel(drawable.getLevel() + 200);
五、AnimationDrawable资源 动画资源
<set>为根元素
alpha 透明度的改变
scale缩放改变
translate位移变化
rotate进行旋转
放在/res/anmi路径下。
步骤1 设置开开始状态(透明度、位置、缩放比)
步骤2、设置结束状态
步骤3、设置持续时间
R.anim内置大量常量,linear_interpolator 匀速变化。accelerate_interpolator加速变化,decelerate_interpolator减速变换
java中调用动画资源
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final ImageView image = (ImageView) findViewById(R.id.image);
//加载动画资源
final Animation anim = AnimationUtils
.loadAnimation(this, R.anim.my_anim);
//设置动画结束后保留结束状态
anim.setFillAfter(true);
Button bn = (Button)findViewById(R.id.bn);
bn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
//开始动画
image.startAnimation(anim);
}
});
六、使用菜单(menu)布局
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/font_size"
android:icon="@drawable/font" android:enabled="true">
<menu>
<!-- 定义一组单选菜单项 -->
<group android:checkableBehavior="single">
<!-- 定义多个菜单项 -->
<item
android:id="@+id/font_10"
android:title="@string/font_10"/>
<item
android:id="@+id/font_12"
android:title="@string/font_12"/>
<item
android:id="@+id/font_14"
android:title="@string/font_14"/>
<item
android:id="@+id/font_16"
android:title="@string/font_16"/>
<item
android:id="@+id/font_18"
android:title="@string/font_18"/>
</group>
</menu>
</item>
<!-- 定义一个普通菜单项 -->
<item android:id="@+id/plain_item"
android:title="@string/plain_item">
</item>
<item
android:icon="@drawable/color" android:titleCondensed="1234567890asdfghj">
<menu>
<!-- 定义一组允许复选的菜单项 -->
<group android:menuCategory="alternative">
<!-- 定义3个菜单项 -->
<item
android:id="@+id/red_font"
android:title="@string/red_title"/>
<item
android:id="@+id/green_font"
android:title="@string/green_title"/>
<item
android:id="@+id/blue_font"
android:title="@string/blue_title"/>
</group>
</menu>
</item>
</menu>
- 大小: 52.1 KB
- 大小: 702.8 KB
- 大小: 968.6 KB
- 大小: 80.6 KB
分享到:
相关推荐
总的来说,通过对Android应用资源索引表进行混淆,可以显著提高应用的安全性,防止源码被抄袭、漏洞被利用。未来,结合多种混淆技术,如代码混淆、数据混淆等,可以构建更全面的防护体系,为Android应用提供更强的...
在“疯狂android资料:第六章android应用的资源.doc”中,详细介绍了Android应用资源的分类、存储方式以及如何在Java代码和XML文件中使用这些资源。 Android应用的资源主要分为三类:界面布局文件、Java源文件和...
综上所述,"Android_Res_Export" 是一个实用的工具,它简化了从Sketch到Android应用资源的转换过程,减少了设计师与开发者之间的工作交接时间,提升了项目的整体效率。通过利用这个开源项目,开发者可以更好地将设计...
`resguard-tools`是一个专门用于混淆Android应用资源的工具。该工具需要用户提供一个APK文件和签名文件作为输入,然后它会处理APK中的资源文件,进行混淆操作,并最终生成一个新的、已签名的混淆后的APK。 资源文件...
《Android应用程序开发教程(第2版)》教学课件02Android UI设计.pdf《Android应用程序开发教程(第2版)》教学课件02Android UI设计.pdf《Android应用程序开发教程(第2版)》教学课件02Android UI设计.pdf《Android应用...
Android应用程序主要由代码和资源组成。资源主要就是指那些与UI相关的东西,例如UI布局、字符串和图片等。代码和资源分开可以使得应用程序在运行时根据实际需要来组织UI。这样就可使得应用程序只需要编译一次,就...
Android 移动应用开发习题答案 Android 移动应用开发是指使用 Android 操作系统开发移动应用程序的过程。 Android 作为最流行的移动操作系统之一,拥有庞大的用户群体和丰富的第三方应用程序生态系统。为了帮助...
Android资源,Android应用程序,Android开发源码,android开发源程序
《AndroidResEdit:Android应用资源编辑利器》 在Android应用开发过程中,资源管理是一项至关重要的任务,它涉及到应用界面的设计、本地化以及图标和图片的处理等。AndroidResEdit是一款专为Android开发者设计的...
在本资源"android应用锁的实现"中,我们可能找到一个简单实现这一功能的示例代码。以下是关于Android应用锁实现的一些关键知识点: 1. **权限管理**:在Android系统中,为了实现应用锁,首先需要获取相应的权限。...
Android应用可以包含各种资源,如字符串、图片、颜色、样式等,这些资源可以通过R类引用,并且可以在不同语言和屏幕尺寸下自动适配。 AndroidManifest.xml文件是应用的配置文件,其中包含了应用的基本信息、所需...
资源名称:打造高质量Android应用:Android开发必知的50个诀窍内容简介: 《打造高质量Android应用:Android开发必知的50个诀窍》是目前唯一一本从开发技巧角度讲解Android应用开发的著作,旨在迅速提高开发者解决...
AndroidResEdit是一款强大的Android应用资源编辑工具,它允许用户直接修改APK文件中的各种资源,包括字符串、图片、布局等。通过这款工具,开发者或者爱好者可以轻松地更改应用程序的名称、图标、文本等,这对于...
资源名称:Android应用开发案例教程内容简介:《Android应用开发案例教程(高等学校计算机科学与技术项目驱动案例实践规划教材)》编著者毋建军、徐振东、林瀚。《Android应用开发案例教程(高等学校计算机科学与技术...
总的来说,AndroidResEdit是一款强大的Android应用资源编辑工具,它为开发者和汉化爱好者提供了便捷的资源修改和汉化手段。然而,使用任何这类工具时,都需要谨慎对待版权问题,并遵循相关的法律法规,以确保合法...
Android应用程序框架是构建Android应用的核心组成部分,它为开发者提供了丰富的工具和组件,使得开发者能够高效地开发出功能丰富、用户体验良好的移动应用。在Android中,MVC(Model-View-Controller)设计模式是一...
- **数据存储**:介绍如何在Android应用中处理数据存储问题,如使用SQLite数据库、SharedPreferences等。 - **网络通信**:涉及HTTP请求、JSON解析等内容,对于开发需要联网功能的应用非常关键。 - **服务与广播接收...
部分资源网站提供了详细的Android应用开发案例分析,包括界面设计、功能实现、性能优化等方面,帮助开发者快速上手并提高开发效率。 4. **英文资源**:英语是国际通用的科技语言,掌握一定的英语能力能够帮助开发者...
在Android应用开发的世界里,源码是学习和提升技能的重要资源。"Android应用案例开发大全(源码)"提供了一套完整的案例集,旨在帮助开发者深入理解Android平台上的应用程序设计和实现。这些案例覆盖了从基础功能到...