旋轉平板電腦後密碼和郵件字段的內容被覆蓋。當在電子郵件和密碼字段中寫入內容時,打開設備以旋轉視圖,然後密碼在電子郵件字段中顯示(電子郵件文本被密碼覆蓋),但密碼文本與以前保持一致(密碼不可見)。 這真的很奇怪。爲什麼在編輯文本中旋轉屏幕時文本被覆蓋
此外,我沒有使用內置的EditText,而是通過擴展Relativelayout自定義文本字段,該對象具有autoCompleteText和按鈕。你可以在下面看到code。
public class CustomClearableEditText extends RelativeLayout {
void initViews() {
inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.clearable_edit_text, this, true);
edit_text = (AutoCompleteTextView) findViewById(R.id.clearable_edit);
btn_clear = (Button) findViewById(R.id.clearable_button_clear);
btn_clear.setVisibility(RelativeLayout.INVISIBLE);
clearText();
showHideClearButton();
}
public void setEmailAddressAutoCompleteAdapter(ArrayAdapter<String> adapter) {
if (adapter != null)
edit_text.setAdapter(adapter);
}
public void setInputType(String type) {
if (type.equals(INPUT_TYPE_EMAIL)) {
edit_text.setInputType(InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
edit_text.setHint("email");
} else if (type.equals(INPUT_TYPE_PASSWORD)) {
edit_text.setTransformationMethod(PasswordTransformationMethod.getInstance());
edit_text.setHint("password");
}
}
}
而且我用這個自定義的控制通過下面的代碼
emailText = (CustomClearableEditText) findViewById(R.id.email_address);
emailText.setInputType(CustomClearableEditText.INPUT_TYPE_EMAIL);
passwdText = (CustomClearableEditText) findViewById(R.id.password);
passwdText.setInputType(CustomClearableEditText.INPUT_TYPE_PASSWORD);
你可以看到完整的代碼here
我想知道爲什麼文本被覆蓋,當我旋轉設備。提前致謝。
你在哪裏聲明瞭你的自定義控件?在onStart()?例如自定義emailText =(CustomClearableEditText)findViewById(R.id.email_address); –
在OnCreate的活動 –