2013-01-20 4 views
0

활동을 변경하는 대신 다른 조각을 표시하는 단일 활동이 있습니다. 한 조각에서, 나는 각 항목에 ImageViews와 TextViews가있는 ListView를 가지고있다. 사용자가 ListView 항목을 클릭하면 액티비티가 조각을 전환하지만 새 단편은 ListView 항목과 동일한 모든보기와 특정 단편에 추가 된 항목을 공유합니다.조각 사이의 뷰 전달 ​​

조각 사이에보기를 전달하여 동일한보기를 다시 부 풀리지 않아도됩니까? 비트 맵과 텍스트 문자열을 목록 항목의보기에서 가져 와서 새 조각의 새로운보기로 채우는 것이 더 낫지 않습니까?

답변

1

질문에 대한 답변을 짧게 말하십시오. 아니요 두 조각의 레이아웃이 동일하지 않으면 조각 사이에서보기를 공유 할 방법이 없습니다. 보기는 응용 프로그램의 레이아웃을 설명하는 컨테이너 일뿐입니다. 컨테이너를 채우기 위해 데이터를 조작하는 것은 당신에게 달려 있습니다.

동일한보기를 사용하려고하지 않습니다. 나는 당신이 원하는 것이 목록의보기에 있던 데이터라고 생각합니다. 단편 대 단편 통신을 처리해야합니다. 여기에는 인터페이스를 설정하고 주 활동으로 데이터를 전달하고 다른 단편이 생성 될 때 활동에서 해당 데이터를 가져 오는 작업이 포함됩니다. 내가 응답 한 게시물에 대한 링크를 넣습니다. 게시 된 코드는 활동 대신 응용 프로그램을 표시하기 위해 조각을 사용합니다. 몇 조각을 버렸지 만 인터페이스 코드가 좋은 링크 일뿐입니다. 그것에 대해 궁금한 점이 있으면 알려주십시오.

Fragment Demo Code

+0

답변 해 주셔서 감사합니다. 인터페이스를 사용하고 있지만 애니메이션을 사용하고 있으며 뷰 중 하나라도 새 조각으로 전환하지 않으려 고하지 않으려면 다시 채워야합니다. – Wenger

0

새로운 Fragment에 같은 ListView에 새로운 내용을 추가하려는 경우 실제로는 View을 전달할 필요가 없습니다. 새 항목을 변경할 수있는 경우에는 TextViewVisibility

+0

새 단편은 ListView가 아닙니다. 클릭 한 ListView 항목과 동일한 뷰가 많은 RelativeLayout입니다. – Wenger