我打开一个Activity列出一堆搜索结果之后按了退出键退出了,有没有办法我再打开这个Activity的时候别重新搜索,就打开刚刚退出的界面,别把onCreate重新执行一遍?
就是从这个Activity跳转到别的Activity,然后回来的效果那样
或者推出了就destroy了,没救了?
PHPz2017-04-17 17:44:27
종료 키를 눌러 활동을 종료하면 활동이 onDestroy()
메서드를 실행하게 되므로 다시 들어오면 반드시 다시 시작됩니다 onCreate()
검색결과를 유지하는 방법은 2가지 생각해볼 수 있어요
검색 결과를 저장하는 방법에는 검색 결과를 유지하거나, 정적 개체에 저장하거나, 결과를 시작한 활동에 다시 전달한 다음 다시 전달하는 등 여러 가지 방법이 있습니다. 다시 시작되면 Activity에 추가됩니다.
Fragment를 직접 사용하여 검색 결과 콘텐츠 뷰를 표시합니다. Fragment로 돌아가기 버튼을 누를 때 hide()
메서드를 사용하면 검색 결과 페이지에 다시 들어갈 때 이 Fragment 인스턴스가 재활용되지 않습니다. 이것을 사용하세요show()
그냥 나오세요. 하지만 이 방법은 페이지의 점프 로직이 필요합니다.
이 검색결과 페이지와 다른 페이지 간의 관계에 따라 어떤 방법을 사용할지 결정됩니다
伊谢尔伦2017-04-17 17:44:27
검색 결과를 표시하는 Activity의 launchMode를 SingleTask로 설정한 다음 Activity의 onNewIntent 메서드를 다시 작성할 수 있다고 생각합니다. 그러나 원할 경우 시스템은 언제든지 Activity를 종료합니다. 열 때마다 표시하려면, 하나의 검색 결과에 대해 검색 키워드를 데이터베이스에 저장한 다음 마지막 검색 키워드를 사용하여 열 때마다 데이터를 요청하는 것을 고려할 수 있습니다
PHP中文网2017-04-17 17:44:27
액티비티를 종료하기 전에 검색된 데이터를 Bundle에 저장한 다음 (이전에 저장한 데이터가 포함된) onCreate의 Bundle 매개변수를 사용하여 뷰를 다시 설정하세요. . .
그렇습니다. . . 한마디로 이렇습니다