- 浏览: 626852 次
- 性别:
- 来自: 济南
文章分类
- 全部博客 (164)
- android(基础) (81)
- android(进阶) (2)
- android(底层) (7)
- android(面试) (0)
- android(多媒体) (1)
- android(组件学习) (4)
- android(网络相关) (0)
- android(动画) (1)
- android(数据库) (2)
- android(UI样式) (3)
- android(xml) (0)
- android(调试) (14)
- android(环境搭建) (7)
- android(api) (1)
- C++ (1)
- C (0)
- JavaSE (2)
- Objective-c (1)
- JavaScript (0)
- 设计模式 (0)
- eclipse (3)
- javaee (4)
- 其它 (5)
- linux (18)
- Oracle (1)
- mysql (1)
- 嵌入式linux (1)
- 版本控制工具 (3)
- web前端 (1)
- python (1)
最新评论
-
chungehenyy:
android颜色对应的xml配置值,颜色表 -
u011467537:
...
android中用Spannable在TextView中设置超链接、颜色、字体 -
SurpriseLee:
不能更赞了!
android颜色对应的xml配置值,颜色表 -
u012094586:
这个代码是不是不全呀,能不能提供完整版的给予参考呢?xiexi ...
Android VideoView如何播放RTSP的流 -
luechenying:
顶上天!!!!!!!!!!!!!!!!!!
android颜色对应的xml配置值,颜色表
Drawable的例子,体现出Drawable的强大功能。Android SDK中说明了Drawable主要的作用是:在XML中定义各种动画,然后把 XML当作Drawable资源来读取,通过Drawable显示动画。
下面举个使用TransitionDrawable 的例子,创建一个Android工程,然后再这个工程的基础上修改,修改过程如下:
1、去掉layout/main.xml中的TextView,增加ImagView,如下:
2、创建一个XML文件,命名为expand_collapse.xml,内容如下:
3、修改Activity中的代码,内容如下:
4、如果修改的没有错误,运行程序,结果显示如下:
初始图片
过渡中的图片
最后的图片
屏幕上动画显示的是:从图片image_expand.png过渡到image_collapse.png,也就是我们在expand_collapse.xml中定义的一个transition动画。看完这个例子,你对Drawable的理解是否又深入些?这里提供这个程序的源代码,供大家下载,可以在这个例子的基础上去体会其他的Drawable,来加深对Drawable的理解。
总结说明
通过以上2个例子程序,相信对Drawable会有一定的认识了,在以后的篇幅中会介绍更多的例子,更加深入的学习和理解Drawable。具体还有哪些Drawable,大家到Android SDK去深入学习吧。
转贴至:http://www.moandroid.com/?p=784
实例:
实现上图效果:
xml部份文件:
hand_icon.xml
hand.xml
代码部份:
下面举个使用TransitionDrawable 的例子,创建一个Android工程,然后再这个工程的基础上修改,修改过程如下:
1、去掉layout/main.xml中的TextView,增加ImagView,如下:
<ImageView android:layout_width=”wrap_content” android:layout_height=”wrap_content” android:tint=”#55ff0000″ android:src=”@drawable/my_image”/>
2、创建一个XML文件,命名为expand_collapse.xml,内容如下:
<?xml version=”1.0″ encoding=”UTF-8″?> <transition xmlns:android=”http://schemas.android.com/apk/res/android”> <item android:drawable=”@drawable/image_expand”/> <item android:drawable=”@drawable/image_collapse”/> </transition>需要3张png图片,存放到res\drawable目录下,3张图片分别命名为:my_image.png、image_expand.png、image_collapse.png。
3、修改Activity中的代码,内容如下:
LinearLayout mLinearLayout; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mLinearLayout = new LinearLayout(this); ImageView i = new ImageView(this); i.setAdjustViewBounds(true); i.setLayoutParams(new Gallery.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); mLinearLayout.addView(i); setContentView(mLinearLayout); Resources res = getResources(); TransitionDrawable transition = (TransitionDrawable) res.getDrawable(R.drawable.expand_collapse); i.setImageDrawable(transition); ansition.startTransition(10000); }
4、如果修改的没有错误,运行程序,结果显示如下:
初始图片
过渡中的图片
最后的图片
屏幕上动画显示的是:从图片image_expand.png过渡到image_collapse.png,也就是我们在expand_collapse.xml中定义的一个transition动画。看完这个例子,你对Drawable的理解是否又深入些?这里提供这个程序的源代码,供大家下载,可以在这个例子的基础上去体会其他的Drawable,来加深对Drawable的理解。
总结说明
通过以上2个例子程序,相信对Drawable会有一定的认识了,在以后的篇幅中会介绍更多的例子,更加深入的学习和理解Drawable。具体还有哪些Drawable,大家到Android SDK去深入学习吧。
转贴至:http://www.moandroid.com/?p=784
实例:
实现上图效果:
xml部份文件:
<SlidingDrawer android:id="@+id/slidingdrawer" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" android:handle="@+id/handle" android:content="@+id/content"> <ImageView android:id="@+id/handle" android:layout_width="56dip" android:layout_height="fill_parent" android:background="@drawable/handle" android:focusable="true" android:clickable="true" android:scaleType="center" android:src="@drawable/handle_icon" /> <LinearLayout android:id="@+id/content" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#778899"> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" /> <EditText android:id="@+id/editText" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout> </SlidingDrawer>
hand_icon.xml
<?xml version="1.0" encoding="utf-8"?> <transition xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/ic_tray_expand" /> <item android:drawable="@drawable/ic_tray_collapse" /> </transition>
hand.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_window_focused="false" android:state_enabled="true" android:drawable="@drawable/tray_handle_normal" /> <item android:state_pressed="true" android:drawable="@drawable/tray_handle_pressed" /> <item android:state_focused="true" android:state_enabled="true" android:drawable="@drawable/tray_handle_selected" /> <item android:state_enabled="true" android:drawable="@drawable/tray_handle_normal" /> <item android:state_focused="true" android:drawable="@drawable/tray_handle_selected" /> </selector>
代码部份:
mDrawer = (SlidingDrawer) findViewById(R.id.slidingdrawer); final SlidingDrawer drawer = mDrawer; mLinearLayout = (LinearLayout) drawer.getContent(); final LinearLayout grid = mLinearLayout; mImageView = (ImageView) drawer.findViewById(R.id.handle); mHandleIcon = (TransitionDrawable) mImageView.getDrawable(); mHandleIcon.setCrossFadeEnabled(true); final DrawerManager drawerManager = new DrawerManager(); drawer.setOnDrawerOpenListener(drawerManager); drawer.setOnDrawerCloseListener(drawerManager); drawer.setOnDrawerScrollListener(drawerManager); private class DrawerManager implements SlidingDrawer.OnDrawerOpenListener, SlidingDrawer.OnDrawerCloseListener, SlidingDrawer.OnDrawerScrollListener { private boolean mOpen; public void onDrawerOpened() { Log.v(tag, "onDrawerOpened"); if (!mOpen) { mHandleIcon.reverseTransition(150); mOpen = true; } } private void offsetBoundsToDragLayer(Rect bounds, View view) { view.getDrawingRect(bounds); Log.v(tag, "offsetBoundsToDragLayer"); } public void onDrawerClosed() { Log.v(tag, "onDrawerClosed"); if (mOpen) { mHandleIcon.reverseTransition(150); mOpen = false; } } public void onScrollStarted() { if (PROFILE_DRAWER) { android.os.Debug.startMethodTracing("/sdcard/launcher-drawer"); } } public void onScrollEnded() { if (PROFILE_DRAWER) { android.os.Debug.stopMethodTracing(); } } }
发表评论
-
Fragment 横竖屏切换问题
2013-04-24 14:41 1868在默认情况下当发生横 ... -
Android EditText 增加自定义过滤
2012-02-19 22:20 2430在Android中,可以通过对EditText设置setFil ... -
解决android textview自动换行问题
2012-02-16 11:46 10791今天忽然发现android项目中的文字排版参差不齐的情况非常严 ... -
通过adb命令获取Android手机的IP地址
2011-12-30 19:11 4404要获取Android手机的IP地址,必须先保证你的Androi ... -
Android 图形用户界面 之 绘图(二) Paint类 主要方法介绍
2011-12-30 09:10 1474/** * Paint类介绍 * * Pa ... -
ListView底部分隔线的问题
2011-12-20 14:42 4334在工作中遇到了一个难题,就是一个listView在最下面的一个 ... -
android获取手机上的图片和视频缩略图thumbnails
2011-11-03 22:05 10079转贴自:http://www.android123.com.c ... -
Activity中使用AIDL让Service与Activity通信
2011-10-25 00:06 2807简易计算器,默认执行1+1的计算,点击go按钮执行计算,先看效 ... -
Android图形报表之AchartEngine(附开发包+API文档)
2011-10-22 16:49 11417统计报表: Java4Less (http://java4le ... -
android中用Spannable在TextView中设置超链接、颜色、字体
2011-10-21 23:08 50572昨晚研读 ApiDemo 源码至 com.example.an ... -
android动态设置TextView字体颜色
2011-10-21 11:50 6484最近写程序就遇到了这么个难题,在TextView 上,正常字体 ... -
layer-list和include的使用
2011-10-20 10:14 2421layer-list,include,merge使用,记录一下 ... -
自定义AlertDialog样式,根据屏幕大小来显示
2011-10-19 12:43 4636先介绍一些关于AlertDialog的基本知识: ... -
Android获取屏幕分辨率及DisplayMetrics简介
2011-10-19 08:56 2842Android 可设置为随着窗口大小调整缩放比例,但即便如此, ... -
android资源文件访问android.resource
2011-10-17 09:14 4225android.resource使用转自:http://www ... -
ImageView添加边框
2011-10-16 19:37 2123import android.content.Context; ... -
Android 实现TextView中文字链接的方式
2011-10-16 14:08 2532Android 的实现TextView中文字链接的方式有很多种 ... -
android实现TextView多行文本滚动
2011-10-16 13:38 6452Android中我们为了实现文本的滚动可以在ScrollVie ... -
ListView之setEmptyView的问题
2011-10-15 23:19 4984使用listView或者gridView时,当列表为空时,有时 ... -
去掉TabActivity底部默认白线
2011-10-15 16:38 3312经过一翻百度,google终于实现了TabActivity设置 ...
相关推荐
Android平台上的图片切换效果是非常常见的,TransitionDrawable是一个非常实用的工具类,用于实现图片的渐变切换。下面我们来详细介绍Android使用TransitionDrawable渐变切换多张图片的实现方法。 1. 基础知识:...
在Android中,可以通过ColorDrawable或者GradientDrawable来实现颜色的过渡效果,或者使用TransitionDrawable进行两个Drawable之间的平滑切换。 5. **布局管理**:为了保证界面的整体性,可能使用LinearLayout、...
"Android animation图片移动效果.rar"这个压缩包文件提供了一个关于如何在Android应用中实现图片平移移动效果的源码示例。这个示例对于初学者和有经验的开发者来说,都是一个很好的学习资源,可以帮助他们深入理解...
同时,Android也提供了BitmapShader来实现位图的复杂渲染效果,如平铺、缩放等。 除此之外,Drawable还有动态变化的能力。LevelListDrawable可以根据指定的级别显示不同的Drawable;TransitionDrawable可以实现两个...
在Android平台上实现一个类似iOS 7的解锁界面是一项有趣且具有挑战性的任务,因为它涉及到对用户界面设计的深入理解和对Android开发技术的熟练掌握。在这个项目中,我们将探讨如何使用Android SDK来创建一个模仿iOS ...
在分析这个demo时,我们可以学习如何处理ImageView的点击事件、如何根据设备方向变化调整图片显示、如何实现图片的缓存策略等。同时,了解这些库(如Glide)的工作原理和优化策略,对提升应用性能有很大帮助。 总的...
在Android开发中,创建...综上所述,这个"Android源码——仿团购应用图片菜单效果源码"涵盖了Android UI设计、图片加载、事件监听、状态管理、数据绑定等多个核心知识点,是学习和提高Android开发技能的一个宝贵资源。
这个源码资源可能还包含了对按钮图片的动画效果,例如使用`TransitionDrawable`来实现点击按钮时图片的变化。`TransitionDrawable`是一个可以过渡两个或多个颜色或图片的Drawable对象,通过`startTransition()`方法...
5. **动画效果**:自定义的Toggle Button可能会包含切换状态时的动画效果,这可能通过`TransitionDrawable`或`Animator`实现,使用户交互更佳。 6. **代码结构**:查看`MainActivity.java`或类似的类,可以了解如何...
- 使用TransitionDrawable实现过渡效果,例如在启动页做启动动画,通过`crossFade()`方法进行淡入淡出效果。 此外,还可以结合`android:drawableStart`、`android:drawableEnd`等属性在TextView中插入Drawable,...
Android允许开发者自定义菜单项的显示动画,例如使用`TransitionDrawable`来实现点击时的背景颜色变化。 8. **Material Design指南**: 遵循Material Design规范,菜单项的设计和行为会有相应的调整,如颜色、...
在Android开发中,为背景图片实现颜色渐变的方法通常是通过使用`<gradient>`标签在XML资源文件中定义一个形状(`<shape>`),然后在布局文件中引用这个资源作为背景。这种方法可以让开发者轻松地控制渐变的颜色、...
在“Android 自定义ToggleButton”这一主题中,我们将探讨如何通过Java或Kotlin代码以及XML布局文件来实现自定义`ToggleButton`。主要涉及以下知识点: 1. **自定义视图(Custom View)**:自定义`ToggleButton`...
在Android应用开发中,StateListDrawable常用于按钮、背景和其他视图元素,以实现视觉反馈和交互效果。本项目"StateListDrawableSample"是一个示例,旨在深入解析并演示如何使用StateListDrawable。 首先,我们需要...
7. **动画效果**:还可以结合`TransitionDrawable`,实现状态切换时的过渡动画,提升用户体验。 通过这个`SelecterDrawableSample`项目,开发者可以学习到如何创建、应用和控制`Selector Drawable`,从而在实际项目...
此外,为了提高用户体验,开发者可能会使用动画效果来展示天气变化,比如使用TransitionDrawable来平滑切换不同天气状态的图片。还有,考虑到电量和性能,Widget的更新频率需要合理设置,以免过于频繁地唤醒设备。 ...
自Android Lollipop(API 21)开始,可以通过`tint`属性为Drawable添加颜色,实现主题色的动态变化。 5. **Nine-Patch Drawable**: 九宫格图像是可伸缩的Drawable,允许开发者指定可拉伸区域和内容区域,常用于...
本资源“应用源码之MyToggleButton.zip”聚焦于自定义的ToggleButton,通过源码学习,我们可以深入了解Android UI组件的工作原理,以及如何进行定制化开发。这篇文章将对其中的关键知识点进行详细讲解。 首先,`...
2. **自定义Adapter**:为了实现TV端特有的焦点效果,如高亮、缩放等,我们通常需要创建一个自定义的Adapter。在这个Adapter中,我们可以根据焦点状态改变视图的显示。 ```java public class MyGridViewAdapter ...
在这个项目中,开发者可以学习到如何在Android应用中有效地利用Drawable资源,实现各种图形、颜色和状态的变化。 在Android开发中,Drawable是用于表示图形元素的接口,它包括了BitmapDrawable、ColorDrawable、...