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 360手机助手都人都对 360中只在桌面显示一个小小悬浮窗口羡慕不已吧? 其实实现这种功能,主要有两步: 1.判断当前显示的是为桌面.这个内容我在前面的帖子里面已经有过介绍,如果还没看过的赶快稳步看一下哦. 2.使用windowManager往最顶层添加一个View .这个知识点就是为本文主要讲解的内容哦.在本文的讲解中,我们还会讲到下面的知识点: a.如果获取到状态栏的高度 b.悬浮窗口的拖动 c.悬浮窗口的点击事件 有开始之前,我们先来看一下效果图: 接下来我们来
-
Android编程之控件可拖动的实现方法
本文实例讲述了Android编程之控件可拖动的实现方法.分享给大家供大家参考,具体如下: 点击和触摸的区别是什么? 点击: 一组动作的集合 手指按下着按钮 手指要在按钮停留一段时间 手指离开按钮 private static final String TAG = "DragViewActivity"; private ImageView iv_dv_view; private TextView tv_drag_view; private int startx; private int
-
Android仿英语流利说取词放大控件的实现方法(附demo源码下载)
本文实例讲述了Android仿英语流利说取词放大控件的实现方法.分享给大家供大家参考,具体如下: 1 取词放大控件 英语流利说是一款非常帮的口语学习app,在app的修炼页面长按屏幕,会弹出一个放大镜,当手指移到某个单词的附近,可以看到该英文单词会被选中,效果如下图所示: 2 代码示例 该控件挺有意思,于是我写了个简单的demo,完整实例代码点击此处本站下载.,程序运行后的效果如下: 3 实现原理 该控件的实现原理比较简单,下面介绍几个比较重要的类 ① WordView 在实习该控件的过程中,我
-
Android编程实现图标拖动效果的方法
本文实例讲述了Android编程实现图标拖动效果的方法.分享给大家供大家参考,具体如下: 最近优化图标拖动时的速率,稍微有一点点效果,直接把代码贴出来,有兴趣一起讨论的朋友可以给我留言. 代码如下: DragView.java package com.android.dragtest; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.
-
在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自定义播放器控件VideoView
介绍 最近要使用播放器做一个简单的视频播放功能,开始学习VideoView,在横竖屏切换的时候碰到了点麻烦,不过在查阅资料后总算是解决了.在写VideoView播放视频时候定义控制的代码全写在Actvity里了,写完一看我靠代码好乱,于是就写了个自定义的播放器控件,支持指定大小,可以横竖屏切换,手动左右滑动快进快退.好了,下面开始. 效果图有点卡,我也不知道为啥..... VideoView介绍 这个是我们实现视频播放最主要的控件,详细的介绍大家百度就去看,这里介绍几个常用的方法. 用于播放视频
-
Android编程实现图片的浏览、缩放、拖动和自动居中效果
本文实例讲述了Android编程实现图片的浏览.缩放.拖动和自动居中效果的方法.分享给大家供大家参考,具体如下: Touch.java /** * 图片浏览.缩放.拖动.自动居中 */ public class Touch extends Activity implements OnTouchListener { Matrix matrix = new Matrix(); Matrix savedMatrix = new Matrix(); DisplayMetrics dm; ImageVie
-
Android自定义控件样式实例详解
本文实例讲述了Android自定义控件样式的方法.分享给大家供大家参考,具体如下: Android控件样式自定义是用定义在drawable文件夹下的XML文件实现,在布局文件中通过设置控件的background属性达到效果. 一.控件常见状态:在XML文件中用到了selector节点,selector可以理解为状态切换器,不同的状态下切换不同的样式,各种状态用Item节点表示,以下为一些常见的状态(注意:statelist中第一个匹配当前状态的item会被使用.因此,如果第一个item没有任何状
-
android连续拖动导致挂起的解决方法
当我保持对连续将对象拖有时在移动后 5 6 拖/滴,看到有时不获取对象还原不回来,我不能用于以后. 基本上我有对两个对象组的 canvas 在 time 可以有最大的两个图像不是更多比,也看到图像 为什么会发生呢,我们如何防止? (function () { var canvas = new fabric.Canvas('canvas'); var canvas_el = document.getElementById('canvas'); var canvas1 = new fabric.Ca
-
Android 自定义弹性ListView控件实例代码(三种方法)
关于在Android中实现ListView的弹性效果,有很多不同的方法,网上一搜,也有很多,下面贴出在项目中经常用到的两种实现ListView弹性效果的方法(基本上拿来就可以用),供大家参考: 弹性ListView 第一种方法: import android.content.Context; import android.content.res.Configuration; import android.util.AttributeSet; import android.util.Display
-
详解Android自定义控件属性TypedArray以及attrs
最近在研究android自定义控件属性,学到了TypedArray以及attrs.大家也可以结合<理解Android中的自定义属性>这篇文章进行学习,后续一篇还有应用. 1.attrs文件编写 <?xml version="1.0" encoding="utf-8"?> <resources> <attr name="titleText" format="string" /> &
随机推荐
- bootstrapfileinput实现文件自动上传
- Visual Studio 2017正式版发布 Mac版新功能特性有哪些
- 在asp.net中获取当前页面的URL的方法(推荐)
- phplock(php进程锁) v1.0 beta1
- 快速解决js动态改变dom元素属性后页面及时渲染的问题
- C#/.Net 中快速批量给SQLite数据库插入测试数据
- PHP Smarty模版简单使用方法
- JQuery+Ajax实现数据查询、排序和分页功能
- MSSQL数据库的定期自动备份计划。
- SqlServer编写数据库表的操作方式(建库、建表、修改语句)
- javascript学习笔记(二) js一些基本概念
- 一款jquery特效编写的大度宽屏焦点图切换特效的实例代码
- Android StickListView实现悬停效果
- 微信小程序 location API实例详解
- Jquery下:nth-child(an+b)的使用注意
- 分析C语言一个简单程序
- 在Asp.net用C#建立动态Excel
- vue.js-div滚动条隐藏但有滚动效果的实现方法
- 详解【python】str与json类型转换
- 详解Spring Boot自动装配的方法步骤