Theo mặc định, chế độ xem EditText lưu trạng thái của nó - Điều này được thực hiện bằng cách đặt cờ trong mã cho biết chế độ xem lưu trạng thái khi chế độ xem không hiển thị hoặc bị mất tiêu điểm. Văn bản được lưu tự động và khôi phục sau khi xoay thiết bị. Tiết kiệm tự động của tình trạng EditText xem có thể bị vô hiệu hóa trong file layout XML bằng cách thiết lập android: tài sản saveEnabled false:
android:saveEnabled="false"
Hoặc lập trình, gọi view.setSaveEnabled(false)
.
lưuĐiều khiển được bật cho dù trạng thái lưu của chế độ xem này có được bật hay không (tức là, liệu phương thức onSaveInstanceState() của nó sẽ được gọi). Lưu ý rằng ngay cả khi đóng băng được bật, chế độ xem vẫn phải có id được gán cho nó (thông qua setId()) cho trạng thái của nó được lưu. Cờ này chỉ có thể vô hiệu hóa việc lưu chế độ xem này; bất kỳ chế độ xem con nào cũng có thể được lưu lại trạng thái của chúng. thuộc tính saveEnabled là một phần của Android View - View Code. phụ tùng ở đây là liên quan đến mã:
public boolean isSaveEnabled() {
return (mViewFlags & SAVE_DISABLED_MASK) != SAVE_DISABLED;
}
...
public void setSaveEnabled(boolean enabled) {
setFlags(enabled ? 0 : SAVE_DISABLED, SAVE_DISABLED_MASK);
}
...
void setFlags(int flags, int mask) {
int old = mViewFlags;
mViewFlags = (mViewFlags & ~mask) | (flags & mask);
int changed = mViewFlags^old;
if (changed == 0) {
return;
}
int privateFlags = mPrivateFlags;
/* Check if the FOCUSABLE bit has changed */
if (((changed & FOCUSABLE_MASK) != 0) &&
((privateFlags & HAS_BOUNDS) !=0)) {
if (((old & FOCUSABLE_MASK) == FOCUSABLE)
&& ((privateFlags & FOCUSED) != 0)) {
/* Give up focus if we are no longer focusable */
clearFocus();
} else if (((old & FOCUSABLE_MASK) == NOT_FOCUSABLE)
&& ((privateFlags & FOCUSED) == 0)) {
/*
* Tell the view system that we are now available to take focus
* if no one else already has it.
*/
if (mParent != null) mParent.focusableViewAvailable(this);
}
}
....
là u có đặt giá trị của TextView thông qua mã không? – Atrix1987
Tôi không hỏi làm thế nào để giữ lại nó nhưng làm thế nào nó được xử lý tự động bởi android? –
thực sự nó sẽ ... hoặc bạn đang cố gắng để nói cái gì khác?/ – Kiran