首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Android EditText 不顯示輸入文字:三大常見原因與解決方案

     編輯:程式設計疑難解答

現象

光標移動、輸入法彈出,但編輯框內無文字顯示。

原因一:代碼誤設為密碼模式

// ❌ 錯誤:設為密碼輸入,字符被遮罩
editText.setTransformationMethod(new PasswordTransformationMethod());

// ✅ 恢復可見
editText.setTransformationMethod(null);
// 或 XML: android:inputType="textVisiblePassword" (顯示密碼)

原因二:XML 屬性衝突

<EditText
    android:inputType="textPassword"  // 導致不顯示
    android:password="true" />       // 已棄用,同效果

**修正**:移除上述屬性,改用 android:inputType="text" 或具體類型 (如 textEmailAddress)。

原因三:控件高度過小/字體過大導致文字超出可視區

<EditText
    android:layout_height="wrap_content"  // 高度僅包裹內容
    android:textSize="30sp" />          // 字體過大,文字繪製在控件邊界外

**修正**:

  • 設定固定高度:android:layout_height="48dp"。
  • 或增加內邊距:android:paddingTop="8dp" android:paddingBottom="8dp"。
  • 或減小字體:android:textSize="16sp"。

排查順序建議

  1. 檢查 XML inputType/password 屬性。
  2. 檢查代碼是否調用 setTransformationMethod。
  3. 佈局預覽中觀察文字基線位置,調整高度/內邊距/字體大小。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved