Android编程实现改变控件背景及形态的方法
本文实例讲述了Android编程实现改变控件背景及形态的方法。分享给大家供大家参考,具体如下:
1. 改变背景
在res/drawable下创建一个xml文件:
<?xml version="1.0" encoding="UTF-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> // 控件被按下时候的背景 <item android:state_pressed="true" android:drawable="@drawable/search_bar_edit_pressed" /> // 控件被选择时候的背景 <item android:state_selected="true" android:drawable="@drawable/search_bar_edit_pressed"/> // 控件一般状态下的背景 <item android:drawable="@drawable/search_bar_edit_normal" /> </selector>
2. 改变形态
<shape> // 渐变 <gradient android:startColor="#8600ff" /> // 描边 <stroke android:width="2dp" android:color="#000000" /> // 圆角 <corners android:radius="5dp" /> // 边距 <padding android:left="10dp" android:top="10dp" android:bottom="10dp" android:right="10dp" /> </shape>
在布局文件上引用:
android:background="@drawable/"
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android布局layout技巧总结》、《Android数据库操作技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
相关推荐
-
Android自定义控件样式实例详解
本文实例讲述了Android自定义控件样式的方法.分享给大家供大家参考,具体如下: Android控件样式自定义是用定义在drawable文件夹下的XML文件实现,在布局文件中通过设置控件的background属性达到效果. 一.控件常见状态:在XML文件中用到了selector节点,selector可以理解为状态切换器,不同的状态下切换不同的样式,各种状态用Item节点表示,以下为一些常见的状态(注意:statelist中第一个匹配当前状态的item会被使用.因此,如果第一个item没有任何状
-
在android中实现类似uc和墨迹天气的左右拖动效果
复制代码 代码如下: import android.app.Activity; import android.os.Bundle; import android.content.Context; import android.graphics.Color; import android.util.Log; import android.view.Gravity; import android.view.MotionEvent; import android.view.View; import a
-
详解Android自定义控件属性TypedArray以及attrs
最近在研究android自定义控件属性,学到了TypedArray以及attrs.大家也可以结合<理解Android中的自定义属性>这篇文章进行学习,后续一篇还有应用. 1.attrs文件编写 <?xml version="1.0" encoding="utf-8"?> <resources> <attr name="titleText" format="string" /> &
-
android 添加随意拖动的桌面悬浮窗口
用过新版本android 360手机助手都人都对 360中只在桌面显示一个小小悬浮窗口羡慕不已吧? 其实实现这种功能,主要有两步: 1.判断当前显示的是为桌面.这个内容我在前面的帖子里面已经有过介绍,如果还没看过的赶快稳步看一下哦. 2.使用windowManager往最顶层添加一个View .这个知识点就是为本文主要讲解的内容哦.在本文的讲解中,我们还会讲到下面的知识点: a.如果获取到状态栏的高度 b.悬浮窗口的拖动 c.悬浮窗口的点击事件 有开始之前,我们先来看一下效果图: 接下来我们来
-
Android自定义播放器控件VideoView
介绍 最近要使用播放器做一个简单的视频播放功能,开始学习VideoView,在横竖屏切换的时候碰到了点麻烦,不过在查阅资料后总算是解决了.在写VideoView播放视频时候定义控制的代码全写在Actvity里了,写完一看我靠代码好乱,于是就写了个自定义的播放器控件,支持指定大小,可以横竖屏切换,手动左右滑动快进快退.好了,下面开始. 效果图有点卡,我也不知道为啥..... VideoView介绍 这个是我们实现视频播放最主要的控件,详细的介绍大家百度就去看,这里介绍几个常用的方法. 用于播放视频
-
android连续拖动导致挂起的解决方法
当我保持对连续将对象拖有时在移动后 5 6 拖/滴,看到有时不获取对象还原不回来,我不能用于以后. 基本上我有对两个对象组的 canvas 在 time 可以有最大的两个图像不是更多比,也看到图像 为什么会发生呢,我们如何防止? (function () { var canvas = new fabric.Canvas('canvas'); var canvas_el = document.getElementById('canvas'); var canvas1 = new fabric.Ca
-
Android编程实现图标拖动效果的方法
本文实例讲述了Android编程实现图标拖动效果的方法.分享给大家供大家参考,具体如下: 最近优化图标拖动时的速率,稍微有一点点效果,直接把代码贴出来,有兴趣一起讨论的朋友可以给我留言. 代码如下: DragView.java package com.android.dragtest; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.
-
Android仿英语流利说取词放大控件的实现方法(附demo源码下载)
本文实例讲述了Android仿英语流利说取词放大控件的实现方法.分享给大家供大家参考,具体如下: 1 取词放大控件 英语流利说是一款非常帮的口语学习app,在app的修炼页面长按屏幕,会弹出一个放大镜,当手指移到某个单词的附近,可以看到该英文单词会被选中,效果如下图所示: 2 代码示例 该控件挺有意思,于是我写了个简单的demo,完整实例代码点击此处本站下载.,程序运行后的效果如下: 3 实现原理 该控件的实现原理比较简单,下面介绍几个比较重要的类 ① WordView 在实习该控件的过程中,我
-
Android 自定义弹性ListView控件实例代码(三种方法)
关于在Android中实现ListView的弹性效果,有很多不同的方法,网上一搜,也有很多,下面贴出在项目中经常用到的两种实现ListView弹性效果的方法(基本上拿来就可以用),供大家参考: 弹性ListView 第一种方法: import android.content.Context; import android.content.res.Configuration; import android.util.AttributeSet; import android.util.Display
-
Android编程实现图片的浏览、缩放、拖动和自动居中效果
本文实例讲述了Android编程实现图片的浏览.缩放.拖动和自动居中效果的方法.分享给大家供大家参考,具体如下: Touch.java /** * 图片浏览.缩放.拖动.自动居中 */ public class Touch extends Activity implements OnTouchListener { Matrix matrix = new Matrix(); Matrix savedMatrix = new Matrix(); DisplayMetrics dm; ImageVie
-
Android编程之控件可拖动的实现方法
本文实例讲述了Android编程之控件可拖动的实现方法.分享给大家供大家参考,具体如下: 点击和触摸的区别是什么? 点击: 一组动作的集合 手指按下着按钮 手指要在按钮停留一段时间 手指离开按钮 private static final String TAG = "DragViewActivity"; private ImageView iv_dv_view; private TextView tv_drag_view; private int startx; private int
随机推荐
- 详解Linux中两个查找命令locate和find教程
- extjs表格文本启用选择复制功能具体实现
- 详解windows下vue-cli及webpack 构建网站(四) 路由vue-router的使用
- Java Swing 非常漂亮外观Nimbus的使用方法实例
- Oracle11g完全卸载的详细步骤(超管用)
- 基于jquery的图片懒加载js
- PHP 中 Orientation 属性判断上传图片是否需要旋转
- 如何分别全角和半角以避免乱码
- 列出指定目录下的所有文件和目录
- Centos6.5 编译安装mysql 5.6.16 详细教程
- js贪吃蛇网页版游戏特效代码分享(挑战十关)
- Ajax跨域问题的解决办法汇总(推荐)
- 菩提本无树,明镜亦非台,本来无一物,何处惹尘埃 。
- Redis教程(六):Sorted-Sets数据类型
- jQuery自定义组件(导入组件)
- firefox(火狐)和ie浏览器禁止右键和禁止复制的代码
- javascript比较语义化版本号的实现代码
- Java使用递归解决算法问题的实例讲解
- 关于php 高并发解决的一点思路
- 关于Linux常见紧急情况的处理方法