티스토리 뷰
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
- 워드프레스
- CSS
- JSON
- Prototype
- Docker
- Mac
- IE
- Android
- sencha touch
- nginx
- JQuery
- PHP
- mssql
- git
- Wordpress
- 한글
- IOS
- laravel
- iis
- Debug
- ASP
- iphone
- Linux
- API
- classic asp
- centos
- nodejs
- javascript
- 안드로이드
- macos
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
글 보관함