4

Android App Instagram에서 좋아하는 두 가지가 있으며이를 내 앱에서 구현하고 싶습니다. 당신이 사용자에 탭하면 당신은 자신의 세부 정보를 볼 수 있습니다Instagram에서와 같은 일부 기능 구현 android app

1. 무한 추종자에 찍고 그의 세부 사항을 표시합니다 다른 사용자에 눌러, 추종자의 목록을 반환합니다 조각의 역사에 돌아가 ... 등등. 기본적으로 여러 번이 작업을 수행 할 수 있지만 로딩하지 않고 모든 작업을 즉시 수행 할 수 있습니다. 이것이 어떻게 구현 될 수 있는가? 필자의 초기 생각은 맨 위의 작업 표시 줄과 함께 하나의 활동 만 남기고 나머지는 조각 (사용자 세부 정보를위한 하나의 단편, 사용자 목록의 단편) 등을 사용하는 것이 었습니다. 문제는 역사를 되돌아 볼 수있는 좋은 방법을 생각할 수 없다는 것입니다. 모든 데이터 (사용자 데이터/목록 어댑터)를 캐싱하여 볼 수있는 유일한 방법은 ArrayList이므로 사용자가 다시 누르면 마지막 목록을 가져 와서 조각을 인스턴스화합니다. 그것을하는 더 좋은 방법이 있습니까? 나는 각 사용자 상호 작용에 대해 새로운 활동을 시작할 수 있다고 생각하고 있으며, 사용자가 뒤로 밀면 현재 활동을 끝내기 만하면됩니다. 이 경우 나의 유일한 걱정은 기억을 잃을 것입니다. 조각을 상태와 함께 캐시하는 방법이 있습니까? 사용자 세부 레이아웃 및 이미지의 gridview :있는 ScrollView 사용자에

내부

2.GridView는 두 가지 레이아웃이 있습니다 자세히 설명합니다. 사용자가 스크롤 할 때 스크롤의 끝에서 gridview는 새로운 항목 집합을 가져옵니다 (스크롤 할 때로드). 나는 내가있는 gridview에 대한 스크롤 부하를 구현하는 방법을 알고 있지만, 나는있는 ScrollView 안에있는 gridview를 추가하고 스크롤 이벤트

enter image description here

음악 감상을 계속하는 방법을 모른다
+0

첫 번째 것은 다시 누른 후 데이터가 요구대로로드되지 않습니다. 서버에서 데이터를 가져 오는 기능을 호출하는 동안 조각이 호출되는 해당 활동에서 조각에 대한 정적 어댑터를 만들어야합니다 ... 그리고 확인 어댑터가 == null의 경우, 서버로부터 데이터를 꺼냅니다. 그렇지 않은 경우, 어댑터를 listView 또는 GridView에 직접 설정할 수 있습니다. – Piyush

+0

첫 번째 부분에서는 Fragments가 saveInstanceState()를 수행하고 onCreate()에서 다시 가져올 수 있습니다. 데이터 요청과 응답 사이에 디스크 캐시를 추가하면 오래된 조각이 스택에 올 때 신속하게 재사용 할 수 있도록 이전 데이터가 저장됩니다. 두 번째 부분에서는'GridView'를 확장하고 헤더 기능을 추가 한 것 같습니다. –

+0

하나의 경우 addToBackStack()을 사용하십시오.하지만 직접 데이터를 저장해야합니다. 둘째로, 당신은 자신의'GridView'에 헤더를 만들거나'GridView'처럼 보이게하는'ListView' (여기서는 작은 데이터를 볼 수 있습니다. https : // github.com/luksprog/DroidPlayground/blob/master/src/com/luksprog/playground/adapter/ExpandingRowItemDetails.java). – Luksprog

답변

0

빠른 답변을 가지고하지 않았 2 번이지만 첫 번째 질문에 왜 조각을 백 스택에 FragmentTransaction.addToBackStack과 함께 추가하지 않는 것이 좋을까요?

그런 식으로 모든 작업에 대해 새로운 활동을 시작하지 않고도 조각으로 자연스러운 백 액션을 얻을 수 있습니다.

+0

전에 addToBackStack을 사용하지 않았습니다. 스택에 조각을 추가하면 모든 조각 세부 정보 (예 : 캐시 된 버전)가 저장됩니까? 나는 모든 변수, 이미지, 뷰 등을 유지할 것인가? – Alin