zoukankan      html  css  js  c++  java
  • 自定义控件EditText

    public class defineEditText extends EditText {
        Context context;
        Drawable d;
    public defineEditText(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
            // TODO Auto-generated constructor stub
            this.context=context;
            inint();
        }
    
    public defineEditText(Context context) {
            super(context);
            this.context=context;
            inint();
        }
    
        public defineEditText(Context context, AttributeSet attrs) {
            super(context, attrs);
            // TODO Auto-generated constructor stub
            this.context=context;
            inint();
        }
    
        @SuppressLint("NewApi")
        private void inint() {
            // TODO Auto-generated method stub
            addTextChangedListener(new TextWatcher() {
                
                @Override
                public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
                    // TODO Auto-generated method stub
                    
                }
                
                @Override
                public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
                        int arg3) {
                    // TODO Auto-generated method stub
                    
                }
                
                @Override
                public void afterTextChanged(Editable arg0) {
                    // TODO Auto-generated method stub
                    setdrawable();
                }
    
                
            });
        }
        private void setdrawable() {
            // TODO Auto-generated method stub
            if(getText().length()>1){
                d=context.getResources().getDrawable(R.drawable.ic_launcher);
                setCompoundDrawablesWithIntrinsicBounds(null, null, d, null);
            }else{
                setCompoundDrawablesWithIntrinsicBounds(null, null, null, null);
            }
        }
        
        @Override
        protected void onDraw(Canvas canvas) {
            // TODO Auto-generated method stub
            canvas.drawLine(0, getHeight(), getWidth(), getHeight(), getPaint());
            super.onDraw(canvas);
        }
    
        @Override
        public boolean onTouchEvent(MotionEvent event) {
            // TODO Auto-generated method stub
            if(d!=null&&event.getAction()==MotionEvent.ACTION_UP){
                if(event.getX()>getWidth()-50){
                setText("");}
            }
            return super.onTouchEvent(event);
        }
  • 相关阅读:
    select查询语句
    springboot的热部署
    springboot入门
    java学习之Semaphore信号量
    Java学习之自定义线程池
    java学习之生产者消费者模式
    sql通过其中一个字段计算另一个字段的值
    activeMq用mysql实现持久化方式
    idea创建Hystrix入门实例
    idea创建Eureka Server入门实例
  • 原文地址:https://www.cnblogs.com/androidxufeng/p/3654916.html
Copyright © 2011-2022 走看看