我实际上使用recreate()
方法重新启动了一个Activity,但是这个方法并没有清除Activity中的EditTexts。
我该如何解决这个问题?
答案 0 :(得分:1)
如果您只想清除EditText而不重新创建整个活动,则应使用setText()方法正确清除它。
像这样:
yourEditText.setText("");
答案 1 :(得分:0)
根据recreate
的{{3}},重新调用的调用导致使用新实例重新创建活动。这导致与由于配置更改创建活动时基本相同的流程 - 当前实例将经历其生命周期到onDestroy
(),然后创建新实例它。
所以基本上recreate
()实际上并不像完全重新创建活动一样。
例如:如果您有setRetainInstance(true)
的任何片段,则不会重新创建;只是暂停并恢复。
API级别11及以上版本支持recreate
API的另一个问题。因此,如果您的应用仅定位到SDK级别11及以上,则可以使用recreate
。
检查您的代码中是否使用了setRetainInstance(true)
。
您可能需要显示更多代码才能了解具体问题!