티스토리 뷰
UI 상으로 CommentActivity 와 그 하위에 CommentListFragment 가 있다고 가정한다.
public static class CommentListFragment extends SherlockListFragment { private String mNum; /** * Create a new instance of CommentFragment, providing "num" as an argument. * CommentListFragment list = CommentListFragment.newInstance(num); */ public static CommentListFragment newInstance(String sNum) { CommentListFragment f = new CommentListFragment(); // Supply num input as an argument. Bundle args = new Bundle(); args.putString("num", sNum); f.setArguments(args); return f; } public void setNum(String sNum) { this.mNum = sNum; } private String getNum() { return getArguments().getString("num"); } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); this.mNum = getNum(); if (this.mNum == null || this.mNum.length() == 0) { getActivity().finish(); //getActivity().getSupportFragmentManager().beginTransaction().remove(this).commit(); } ...... } }
데이터 전달 방법#1
public class CommentActivity extends SherlockFragmentActivity { private String num = ""; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // FragmentManager를 받아온다. FragmentManager fm = getSupportFragmentManager(); // findFragmentById(android.R.id.content) = 루트뷰 if (fm.findFragmentById(android.R.id.content) == null) { // 리스트로 사용할 MainListFragment 생성 CommentListFragment list = CommentListFragment.newInstance(num); // FragmentTransaction 시작하고 액티비티에 붙이고 변경사항을 적용 FragmentTransaction ft = fm.beginTransaction(); //ft.addToBackStack(null); // 물리 Back 버튼 누르면 현 Fragment를 finish() ft.add(android.R.id.content, list).commit(); } } }
데이터 전달 방법#2
public class CommentActivity extends SherlockFragmentActivity { private String num = ""; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // FragmentManager를 받아온다. FragmentManager fm = getSupportFragmentManager(); // findFragmentById(android.R.id.content) = 루트뷰 if (fm.findFragmentById(android.R.id.content) == null) { // 리스트로 사용할 MainListFragment 생성 CommentListFragment list = new CommentListFragment(); list.setNum(num); // FragmentTransaction 시작하고 액티비티에 붙이고 변경사항을 적용 FragmentTransaction ft = fm.beginTransaction(); //ft.addToBackStack(null); // 물리 Back 버튼 누르면 현 Fragment를 finish() ft.add(android.R.id.content, list).commit(); } } }
참고 = http://marakana.com/s/post/1250/android_fragments_tutorial
'모바일 > Android' 카테고리의 다른 글
APK 압축해제(디컴파일) 후 리소스, manifest 수정 후 인증(사인)하기 (0) | 2013.05.30 |
---|---|
MAC Eclipse Android Export Singed Application 예기치 않게 종료 (0) | 2013.03.16 |
Android Drawable 미리보기 (0) | 2013.01.12 |
Android Pull To Refresh And Load More ListView를 ListFragment에서 사용하기 (0) | 2012.12.31 |
Android Action Bar Style Generator (안드로이드 액션바 스타일 생성기) (0) | 2012.12.26 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 안드로이드
- 워드프레스
- laravel
- iis
- ASP
- git
- centos
- Debug
- Wordpress
- javascript
- PHP
- nginx
- 한글
- Docker
- sencha touch
- nodejs
- IOS
- iphone
- API
- JSON
- IE
- Prototype
- mssql
- classic asp
- Mac
- Linux
- macos
- Android
- CSS
- JQuery
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
글 보관함