클라우드 서버와 통신하는 앱을 개발했습니다. 이제 데이터를로드 할 때 피드백을 추가하고 싶습니다. 예를 들어 사용자가 "데이터 가져 오기"버튼을 클릭하여 데이터를로드하면 버튼 텍스트가 "로드 중"으로 변경됩니다. 데이터가로드되면 텍스트가 다시 "데이터 가져 오기"가됩니다.데이터를로드하기 전에보기를 렌더링하는 방법
그러나 첫 시도는 효과가 없었으며 일부 연구를 수행했습니다. 작업이 완료 될 때까지 뷰가 렌더링되지 않기 때문입니다. (AsyncTask를 사용하여 데이터를로드했습니다.) 그리고 온라인 솔루션이 onPreExecute() 및 onPostExecute() 메서드에서 뷰를 렌더링해야한다는 것을 알았 기 때문에이 방법을 시도했습니다. 글쎄, 그것도 작동하지 않습니다.
모든 AsyncTask가 완료된 후에 만 렌더링 작업이 수행되도록하는 제약이있는 것처럼 보입니다.
누군가 나를 밝힐 수 있습니까? 그것은 꽤 오랫동안 나를 괴롭혔습니다.
는 텍스트 뷰에 onPreExecute에서 "...로드"당신의 코드 – meda
단지 설정 텍스트를 표시하고 onPostExecute에서 "데이터 가져 오기" – 44kksharma
내가 문제를 알아 냈어요 다시 텍스트를 설정합니다. UI 스레드를 차단하므로 AsyncTask.get()을 호출하지 마십시오. AsyncTask.execute()를 호출하면 충분하며 postExecute()에서 UI 업데이트를 수행합니다. –