1、EditText代码如下 (View代替EditText获取焦点):

  1. <View
  2. android:focusable="true"
  3. android:focusableInTouchMode="true"
  4. android:layout_width="0px"
  5. android:layout_height="0px"
  6. />
  7. <EditText
  8. android:id="@+id/ask_review_message"
  9. android:layout_width="match_parent"
  10. android:layout_height="200dp"
  11. android:padding="10dp"
  12. android:hint="@string/ask_messageHint"
  13. android:gravity="top"
  14. android:background="@drawable/bg_edit_text"
  15. />

2、bg_edit_text.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <selector xmlns:android="http://schemas.android.com/apk/res/android">
  3. <item android:state_selected="true" android:drawable="@drawable/bg_edit_text_focused" />
  4. <item android:state_focused="true" android:drawable="@drawable/bg_edit_text_focused" />
  5. <item android:drawable="@drawable/bg_edit_text_normal" />
  6. </selector>

3、bg_edit_text_normal.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">
  3. <solid android:color="#FFFFFF" />
  4. <corners android:radius="3dip"/>
  5. <stroke
  6. android:width="1dip"
  7. android:color="#BDC7D8" />
  8. </shape>

4、bg_edit_text_focused.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">
  3. <solid android:color="#FFFFFF" />
  4. <corners android:radius="3dip"/>
  5. <stroke
  6. android:width="1dip"
  7. android:color="#32CD32" />
  8. </shape>

其实有时候只要一个文件就可以搞定

代码如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <selector xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <item android:state_pressed="true">
  5. <shape>
  6. <solid android:color="#FFFFFF" />
  7.  
  8. <corners android:radius="3dip" />
  9.  
  10. <stroke android:width="1dip" android:color="#32CD32" />
  11. </shape>
  12. </item>
  13. <item android:state_focused="true">
  14. <shape>
  15. <solid android:color="#FFFFFF" />
  16.  
  17. <corners android:radius="3dip" />
  18.  
  19. <stroke android:width="1dip" android:color="#32CD32" />
  20. </shape>
  21. </item>
  22. <item>
  23. <shape>
  24. <solid android:color="#FFFFFF" />
  25.  
  26. <corners android:radius="3dip" />
  27.  
  28. <stroke android:width="1dip" android:color="#BDC7D8" />
  29.     </shape>
  30.   </item>
  31. </selector>

EditText自定义边框的更多相关文章

  1. Android之EditText自定义边框和边框颜色(转载)

    介绍一种比较常见的用法 第一步:准备两张图片大小一样,颜色不同的图片.图片名称分为:editbox_focus.png和editbox_normal.png 放入工程的drawable文件夹下. 第二 ...

  2. 【Android】Android EditText 去除边框

    [Android]Android EditText 去除边框 将EditText属性设置修改 android:background="@null" //////////////// ...

  3. android gallery 自定义边框+幻灯片效果

    最近在项目中用到图片轮播,试了Gallery,ViewFlipper,ViewPager,感觉Gallery最符合需求,但是Gallery的系统边框很难看,项目中要求用自己的背景图片. 下面来看一下使 ...

  4. electron-vue 窗口拖拽及自定义边框,及关闭缩小放大化方法

    1.窗口的最小化按钮和关闭按钮以及标题栏自定义,不使用 electron 自身携带的原生标题栏 在src文件夹下main下index.js文件添加 mainWindow = new BrowserWi ...

  5. Android自定义EditText去除边框并添加下划线

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  6. EditText之边框颜色

    EditText的自带属性里没有设置边框颜色的 有俩种方式可以达到效果 一种是网上比较推崇的用图作背景,另一种则是自绘 图作背景的: 首先重新定义一个style.在values文件夹下新建一个styl ...

  7. android Edittext自定义输入字符和类型

    android提供了两种方式 一种是setInputType 一种是setKeyListener 直接上代码,有注释 import android.app.Activity; import andro ...

  8. Android EditText 改变边框颜色

    第一步:为了更好的比较,准备两个一模一样的EditText(当Activity启动时,焦点会在第一个EditText上,如果你不希望这样只需要写一个高度和宽带为0的EditText即可避免,这里就不这 ...

  9. EditText: 自定义EditText 触摸时无法获取焦点

    写了一个自定义View,继承EditText,但是在触摸时无法获取到焦点. 在XML中添加 android:focusableInTouchMode="true" 设置触摸时可以获 ...

随机推荐

  1. Sonar规则学习笔记

    1. A catch statement should never catch throwable since it includes errors. 在catch里永远不要抛出throwable. ...

  2. 使用ASP.NET MVC、Rabbit WeixinSDK和Azure快速开发部署微信后台

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:公众号后台系统和数据都基本准备妥当了,可以来分享下我是如何开发本微信公众号的后台系统了 ...

  3. 解决linux下unzip中文有乱码的问题

    xxx.zip 中有中文的文件,在linux下unzip就会有乱码. 解决办法:安装7zip 去http://sourceforge.net/projects/p7zip/files/latest/d ...

  4. hdu 3001(状压dp, 3进制)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3001 由于本题中一个点最多能够访问2次,由此可以联想到3进制; visited[i][j]表示在状态i ...

  5. 构造函数创建对象和Object.create()实现继承

    第一个方法用构造函数创建对象,实现方法的继承 /*创建一个对象把所有公用的属性和方法,放进去*/ function Person() { this.name = "W3cplus" ...

  6. jq中.prop()与attr()的区别

    一,定义 prop() 方法设置或返回被选元素的属性和值.prop() 方法应该用于检索属性值 attr()  方法设置或返回被选元素的属性和值.如需检索 HTML 属性,请使用 attr() 方法代 ...

  7. T-SQL 基础编程

    Ø Go批处理语句 用于同时执行多个语句 Ø 使用.切换数据库 use master go Ø 创建.删除数据库 方法1. --判断是否存在该数据库,存在就删除 if (exists (select ...

  8. JQuery 定时器 (Jquery Timer 插件)

      jQuery Timers插件地址: http://plugins.jquery.com/project/timers JQuery Timers应用知识提供了三个函式1. everyTime(时 ...

  9. Laravel错误与日志处理

    App\Exceptions\Handler class is where all exceptions triggered by your application are logged and th ...

  10. 从零开始---控制台用c写俄罗斯方块游戏(1)

    从零开始---控制台用c写俄罗斯方块游戏(1) 很少写博文,一来自身知识有限,二来自己知道,已经有很多这样的博文了,三就是因为懒,文笔也一般,四来刚出来工作,时间也不多 之所以写这篇博文,是因为应群里 ...