簡體   English   中英

啟用 EditText 下划線

[英]Enable EditText underline

默認情況下EditText有一個下划線。 我想在禁用Edittext啟動我的程序,當有人單擊某個圖標時,將啟用EditText

這是一張圖片,顯示“to ...” EditText沒有下划線,而其他人則這樣做,而有焦點的則有強調色。

在此處輸入圖片說明

我試過的代碼:

foodIconButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            foodCurrentEditText.setEnabled(true);
            foodDesiredEditText.setEnabled(true);
            foodDesiredEditText.setFocusable(true);
            foodDesiredEditText.setBackgroundColor(Color.TRANSPARENT);
            //foodDesiredEditText.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#03DAC5")));
            //MyDrawableCompat.setColorFilter(foodDesiredEditText.getBackground(), ContextCompat.getColor(MainActivity.this, R.color.colorAccent));

            foodDesiredEditText.getBackground().setColorFilter(ContextCompat.getColor(MainActivity.this, R.color.colorAccent), PorterDuff.Mode.SRC_IN);
        }
    });

底部的 3 行代碼是我從此處其他問題的建議中嘗試過的不同方法。

如果你想隱藏和顯示EditText的下划線,你可以這樣做:

要隱藏該行:

ColorStateList colorStateList = ColorStateList.valueOf(Color.TRANSPARENT);
ViewCompat.setBackgroundTintList(foodDesiredEditText, colorStateList);

要顯示該行:

ColorStateList colorStateList = ColorStateList.valueOf(ContextCompat.getColor(applicationContext, R.color.colorAccent));
ViewCompat.setBackgroundTintList(foodDesiredEditText, colorStateList);

如果您使用androidx更好的解決方案是:

要隱藏該行:

foodDesiredEditText.setBackgroundResource(0);

要顯示該行:

foodDesiredEditText.setBackgroundResource(androidx.appcompat.R.drawable.abc_edit_text_material);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM