我已经仔细搜索并尝试了常见的嫌疑人,但现在是时候寻求帮助了。
我的Android活动非常乐意从SQLite加载EditText,Spinner和CheckBox值。
如果用户此后实际更改了值,则问题是检测到所以如果未进行未保存的更改(即他/她没有点击“保存”按钮),我可以在onBackPressed上发出警告。
例如,我尝试使用EditText:
使用TextWatcher.onTextChanged侦听器,但在第一次实例化EditText时会触发它,这会使“数据已更改”标记设置无意义
捕获DONE,ENTER,NEXT和DEL键的各种KEY_DOWN事件,但是混合的结果无论如何都对我的Spinners和CheckBoxes没有帮助
onTouchListener(我想,但我现在有点模糊),无济于事
我想我正在寻找的是一个View类侦听器,只有在活动稳定后才会附加,这会触发后续的状态更改。但是,我搜索过的任何内容都不符合要求。
其他人如何处理这个问题?
感谢您提供任何指导。
答案 0 :(得分:2)
我想不出任何适用于各种小部件的通用机制。
然而,更清洁的解决方案是: