首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无法在android中更改自定义editText的背景色

在Android中,要更改自定义EditText的背景色,可以通过以下步骤实现:

  1. 创建一个自定义的EditText类,继承自android.widget.EditText。
  2. 在自定义EditText类中,重写onDraw方法,以便在绘制EditText时修改背景色。可以使用Paint类来设置背景色。
  3. 在自定义EditText类的构造方法中,设置EditText的背景为透明,以便让自定义的背景色显示出来。
  4. 在布局文件中使用自定义EditText类。

下面是一个示例代码:

代码语言:java
复制
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.widget.EditText;

public class CustomEditText extends EditText {
    private Paint mPaint;

    public CustomEditText(Context context) {
        super(context);
        init();
    }

    public CustomEditText(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public CustomEditText(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init();
    }

    private void init() {
        // 设置背景为透明
        setBackgroundColor(Color.TRANSPARENT);

        // 初始化画笔
        mPaint = new Paint();
        mPaint.setColor(Color.RED); // 设置背景色为红色
    }

    @Override
    protected void onDraw(Canvas canvas) {
        // 绘制背景色
        canvas.drawRect(0, 0, getWidth(), getHeight(), mPaint);

        super.onDraw(canvas);
    }
}

在布局文件中使用自定义EditText:

代码语言:xml
复制
<com.example.CustomEditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Hello World!" />

这样就可以在Android中更改自定义EditText的背景色了。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android自定义EditText:一款简单实用智能EditText(一键删除&自定义样式)

前言 Android开发EditText使用 非常常见 本文将带来一款 附带一键删除功能 & 自定义样式丰富 SuperEditText控件使用,希望你们会喜欢。...特点 对比市面上EditText控件,该控件Super_EditText 特点是: 3.1 功能实用 一键删除功能 需求中非常常见,现将其封装后更加方便使用 可自定义样式程度高(比自带强大 & 方便...),不复杂却能满足一般EditText使用需求 可自定义样式如下:(注:该样式设置是系统自带 API 所不具备) 3.2 使用简单 仅需要简单xml属性配置 下面1节会详细介绍其使用方法...3.3 二次开发成本低 本项目已在 Github上开源:Super_EditText 具备详细源码分析文档:Android自定义View:手把手教你做一款简单实用SuperEditText(一键删除...源码解析 具体请看文章:Android自定义View:手把手教你做一款简单实用SuperEditText(一键删除&自定义样式) 7.

85120
  • EditTextRecyclerView解决方案

    有时候,一个列表Item会有EditText出现,而由于View复用机制,如果不好好处理EditText,将会出现一些问题。...菜是原罪 EditTextRecyclerView问题 例子是这样,每个Item包含一个title、一张图片以及一个评分,这个评分就是通过输入框来输入。...原来是因为这里是addTextWatcher,而不是setTextWatcher,也就是复用时候,同一个EditText添加了多个TextWatcher,怪不得分数9还能出现在上面了。...首先我是试了一个,removeTextWatcher方法,那就是AdapterdetachViewHolderFromWindow方法移除TextWatcher,如下: class PicAdapter...很简单,updateView(),也就是bind过程每次去更新PicItem就可以了。

    2.7K20

    Android编程实现在自定义对话框获取EditText数据方法

    本文实例讲述了Android编程实现在自定义对话框获取EditText数据方法。...分享给大家供大家参考,具体如下: 项目中忽然遇到这样问题,需要自定义对话框,对话框需要有一个输入框,以便修改所选中价格,然后点击确定之后,修改所显示价格。...遇到最大问题就是如何能够获取到自定义对话框当中edittext输入数值,百度了很久,看到答案都是如下: //得到自定义对话框 final View DialogView = a .inflate...来说,的确是没有问题,能够取到你输入edittext值,但对于自定义alertdialog来说,就会始终拿到是空,我解决方案是自定义alertdialog里面取到edittext并且实例化...总结一些,对于自定义对话框,无法主activity初始化对话框里控件时候,可以将初始化或者取值操作放到自定义控件里面,这样就可以取值和赋值操作,忙活了一天,终于师傅指导下完成了这部分功能

    1.3K41

    AndroidEditText禁止输入表情实例代码

    最近在做项目中用户编辑资料时候不希望用户输入表情,如果用户输入表情的话上传给后台要报错,所以需要我们前端做一个判断。下面就来说一下怎么EditText屏蔽表情吧。...网上有很多这样列子但是一不小心就会掉进坑里面,比如继承EditText,重写addTextChangedListener()方法。...因为上面的方法不行,肯定要想其他解决方案了。这里想到了通过过滤器来拦截用户输入字符,可以避免截取字符串角标越界问题。...); MyToast.showText("不支持输入表情"); return ""; } return null; } }; 然后给editText...设置filter,这里给editText设置了两个filter第一个是屏蔽表情,第二个是设置用户输入多少字数限制 //给editText设置filter edit_name.setFilters(new

    2.1K41

    AndroidEditText setText方法踩坑实战

    1、平平常常中就这样开始 某一天,我准备做一个搜索功能,这个搜索功能呢大概是主活动A,用EditText接收输入,当EditText监听到输入框内容有变化,跳转到活动B,活动B准备有搜索历史记录等等...,等活动B确定好搜索关键词后,跳回到活动A,执行搜索,并显示搜索结果……一切顺顺利利,然后呢,懵逼了,我回不了活动A了。...:A中有输入时,跳到B,B确定好关键词后,点击搜索(你搜索在哪里,让你们看下图吧) ?...关键点我已经标出来了,7和11间,有了监听方法执行,说明:EditTextsetText方法会触发 文本变化监听,这就是此次踩坑根源。...4、 捕获凶手:setText()方法会触发EditText文本变化监听 5、解决方案:将setText设置设置监听之前,或者用setHint也可以。

    2.1K30

    Android多个EditText输入效果解决方式

    前言 开发,我们常常遇到这种情况 ? 我们往往需要是下面这种效果 ?...但是如果把这些实现代码写在Activity中会比较麻烦,影响代码美观 解决方法 于是就有了下面这个辅助类,禁用了按钮点击事件和按钮渐变色,可同时添加一个或者多个EditText /** *...文本输入辅助类,通过管理多个TextView或者EditText输入是否为空来启用或者禁用按钮点击事件 */ public final class TextInputHelper implements...(false); if (isAlpha) { //设置半透明 mMainView.setAlpha(0.5f); } } } } Activity创建时添加监听...EditText,还可以添加TextView,因为EditText是TextView子类,最后要是觉得好用记得点个赞。

    1.9K20

    Android Studio自定义代码模板

    概述 我们使用Android Studio创建Activity、Fragment等等时候,都会使用Android Studio提供模板来简化我们创建,使用模板时,我们只要做简单配置,Android...就能为我们生成相应代码,所以使用模板可以提高开发效率,接下来我们将学习如何去自定义一个符合自己项目框架模板。...模板文件结构 Android Studio已有的 EmptyActivity模板: ?...自定义MVP模板 Google给出MVP Sample,每创建一个页面,需要创建: XxActivity、 XxFragment、 XxContract、 XxPresenter四个文件,步骤繁琐...,且AS目前没有提供相应模板,所以接下来将自定义一个MVP模板,来简化这些繁琐操作。

    2.9K20

    Android View 完美实现EditText 软键盘上边示例

    优点,编辑框使用CleanEdittext,监听输入状态来更改回复按钮颜色,添加title等。 先展示效果 点击评论打开软键盘,编辑框在软键盘上部,点击其他区域消失收起软键盘: ? ?...2.需要使用时候 private BaseSelectPopupWindow popWiw;// 回复 编辑框 声明之后使用时候初始化并调用: private void popWiw( ) { popWiw...="65dp" android:layout_marginTop="5dp" android:background="@drawable/edittext_back" android:focusable...设置点击事件,所以我们用记住我们按下位置来模拟点击事件 * 当我们按下位置 EditText宽度 - 图标到控件右边间距 - 图标的宽度 和 * EditText宽度 - 图标到控件右边间距之间我们就算点击了图标...以上就是本文全部内容,希望对大家学习有所帮助。

    1K41

    Android Studio Design Tools UX 更改 — Split View

    在这篇文章,我们将介绍 Android Studio 3.6 Design Editor (设计编辑器) 新功能,与您分享促成这些体验更改一些细节,并向您展示用它可以来做哪些有趣新操作。...介绍 Design Tools Split View Android Studio 3.6 ,我们对设计文件编辑模式进行了一些改动,相较于之前左下角切换 Text 或 Design 编辑模式...由于 Android Studio / IntelliJ 没有类似功能工具窗口,所以这种功能可能会让用户感到困惑。 ?...对替代用法支持 我们知道,很多开发者还不太清楚如何去利用 Android Studio 3.6 带来 UX 更改,这里我们会提供一些方案。...该文件另一个实例会以垂直拆分形式单独选项卡打开; 将新标签页拖动到 Android Studio 界面外,来创建一个浮动窗口; 选项卡,选择 Design 模式来让该窗口能够同浮动预览显示效果一样

    2.3K20

    解决androidEditText设置末尾省略号不生效情况

    Textiew可以通过设置TextView属性 android:maxEms 和 android:ellipseize 来使过多文字显示为省略号,但在在EditText设置只这两个属性则不行,...android默认只有文字不可编辑状态下才可以显示这些效果,但是EditText重写了这个属性,使得文字默认都是可以编辑。...所以若想要呈现TextView效果,必须加上以下属性 android:editable= "false" 另外EditText不支持跑马等效果.咱们来看看android源码 override public...这里呢, 建议大家自定义EditText并重写onTouchEvent方法,从外部进行控制是否获取焦点, 如下: class FocusEditText(context: Context, attrs:...AttributeSet) : EditText(context, attrs){ override fun onTouchEvent(event: MotionEvent?)

    2.6K20

    textview可复制_长按复制是怎么做

    前段时间因为项目需求实现TextView长按复制功能,特意上百度差了一下有不少实现这个功能方法,隔了好久也怕忘了,总结一下: 先推荐目前感觉最好用方法: 布局文件TextView控件属性增加一句话...:android:textIsSelectable=”true”,不过这个方法需要只有android sdk 11起才支持,v11以下则不行了。...不过现在版本这个应该也不成问题了 xml文件可以设置之外,java代码上也可以一句话设置: TextView tv = new TextView(context); tv.setTextIsSelectable...一样xml里面直接加一句话android:editable=”false” 可以实现,不过需要注意,使用EditText的话需要设置一个背景色,或者设置空也行,缺点是不能在java代码动态设置。...3、可以通过继承EditText,自定义TextView public class SelectCopyTextView extends EditText { public SelectCopyTextView

    1.9K20

    Android开发笔记(三十六)展示类控件

    setMovementMethod : 设置文本移动方式,一般取值“new ScrollingMovementMethod()”,如不设置将无法拉动文本。注意该方法只能在代码调用。...需要注意是,scrollbars只能在xml设置,而无法通过代码设置。反过来,setMovementMethod只能在代码设置,而无法通过xml设置。...可能大家很奇怪为何还要该方法,其实是因为绘图缓存默认背景色是黑色,如果不提前设置缓存背景色的话,截图结果就是黑乎乎一片,所以需要将背景色设置为默认颜色(通常是白色)。...代码设置: setInputType : 设置输入文本类型。...该功能有两种实现方式: 方式一:布局文件EditText节点中加入singleLine属性,但该方式只视觉上起作用,真正字符串还是带有回车换行符; android:singleLine="true

    1.5K30

    Android自定义实现自定义监听器方式

    其实,监听器就相当于C++回调函数,达到条件就回调执行。 很多时候,我们自定义控件类也需要实现一些属性变化监听器,实现跟原生控件监听器一样功能。...} } onFinishedLoading函数实现自定义逻辑则可。...补充知识:android Activity 给 Fragment 设置回调方法 这个实现方法很简单,可分为3步走: 1.fragment定义接口 2.activity定义时实现这个接口 3....fragment onAttach 方法 将 Context 转为 相应接口; 代码如下: public class AllFragment extends Fragment { //......自定义实现自定义监听器方式就是小编分享给大家全部内容了,希望能给大家一个参考。

    2.8K30

    Android 自定义验证码输入框实例代码(支持粘贴连续性)

    需求 1、能自定义输入框个数和样式 2、支持长按粘贴或剪切板内容自动填充(粘贴连续性) 其中第2点是最为重要,正是其他人没有这点,逼得自己弄一个 示例 别人示例: ?...粘贴居然不支持连续性,只能粘贴第一个字符,所以用有点难受 自己示例: ?...原理 大致是Edittext + n* TextView,然后设置edittext字体跟背景颜色都为透明,隐藏光标 Edittext:监听edittext每次输入一个字符就赋值到对应TextView上...,然后清空自己 下划线:TextView下面添加View 光标:这里每个TextView焦点光标其实对View设置了ValueAnimator 粘贴:粘贴弹窗是自定义PopupWindow 源码有详细注释...输入框背景色支持类型 1、@drawable/xxx 2、@color/xxx 3、#xxxxxx 总结 以上所述是小编给大家介绍Android 自定义验证码输入框实例代码(支持粘贴连续性),希望对大家有所帮助

    3K20

    Android自定义EditText:你需要一款简单实用SuperEditText(一键删除&自定义样式)

    前言 Android开发EditText使用 非常常见 本文将带来一款 附带一键删除功能 & 自定义样式丰富 SuperEditText控件使用,希望你们会喜欢。 ?...特点 对比市面上EditText控件,该控件Super_EditText 特点是: 3.1 功能实用 一键删除功能 需求中非常常见,现将其封装后更加方便使用 可自定义样式程度高(比自带强大 & 方便...),不复杂却能满足一般EditText使用需求 可自定义样式如下:(注:该样式设置是系统自带 API 所不具备) ?...:Android自定义View:手把手教你做一款简单实用SuperEditText(一键删除&自定义样式) 所以,在其上做二次开发 & 定制化成本非常低。...源码解析 具体请看文章:Android自定义View:手把手教你做一款简单实用SuperEditText(一键删除&自定义样式) ---- 7.

    1.6K20

    AndroidSpannableString与SpannableStringBuilder详解

    String上加下划线、加背景色、改变字体颜色、用图片把指定文字给替换掉,等等。...2、SpannableString与SpannableStringBuilder区别 它们区别在于 SpannableString像一个String一样,构造对象时候传入一个String,之后再无法更改...(转自博客:《android – SpannableString或SpannableStringBuilder以及string.xml文件整型和string型代替》) 因为Spannable等最终都实现了...EditText控件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=...这个函数不同之处在于,前几都是原来文字基础上加上特效,而这里却是利用图片将文字替换。如果遇到不支持显示图片函数,比如前一篇canvas绘图。

    2.5K20
    领券