Fragments를 사용하기 위해 몇 가지 Android 앱을 업그레이드하고 싶습니다. 여기에 기본적인 상황이 있습니다 :오래된 Android 앱에 조각 추가하기
나는 Activity와 ListActivity를 가지고있다. 호환성 패키징을 사용하여 조각을 사용하여 변환하고 싶습니다. 아래는 Activity의 onCreate 메소드에있는 것입니다. (ListActivity에는 비슷한 항목이 있으므로 전환시 예제를 활동으로 만 사용하고 있습니다.)
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
setContentView(R.layout.rate);
Item = getIntent().getExtras().getString("name");
Category = getIntent().getExtras().getString("category");
title = (TextView) findViewById(R.id.tvRateItem);
ratingsBar = (RatingBar) findViewById(R.id.theRatingBar);
title.setText(Item);
// Display list of reviews
new starTotalTask().execute();
new starRatingTask().execute();
final EditText etTweetReview = (EditText) findViewById(R.id.etTweetReview);
Button button = (Button) findViewById(R.id.theRatingBarButton);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// do stuff
}
}
});
Button BReviews = (Button) findViewById(R.id.bReviews);
BReviews.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// do stuff
}
});
}
그래서 당신은 내가 버튼의 부부, AsyncTasks의 몇 가지있다, 참조, 다른 활동에서 데이터를 잡는 일부 getIntents, 일부 "위젯"선언은 XML에 참조.
기본 프레임 워크에는 이미 가리키는 조각이있는 FragmentActivity (호환성 v4 패키지)가 설치되어 있습니다. 사실 ViewPager가 있고 탭이 설정되어 있습니다. 올바른 레이아웃은 새 조각보기와 동일하게 이미 설정되어 있습니다. 위의 데이터 이동 방법을 모르겠습니다. 또한 onCreateView는 레이아웃을 설정하는 곳이라는 것을 이해합니다. 그 밖의 모든 것은 어디로 가고 있습니까? 코드 예제를 방향으로 찾는 것이 아닙니다. 가능한 경우 가능합니다.
편집 : http://thepseudocoder.wordpress.com/2011/10/13/android-tabs-viewpager-swipe-able-tabs-ftw/이
가특히 관심에서 : 내 레이아웃이 기반으로 - 어디 RatingsBar 및 텍스트 뷰 (및 다른 XML 참조) 가야합니까? - AsyncTask는 어떤가요? - 인 텐트의 데이터 전달을 어떻게 처리합니까?
응답 해 주셔서 감사합니다. 특정 질문에 답변했는지 확신 할 수 없습니까? "모든 것이 동일 할 것입니다."- 그래서 그 코드 블록을 내 Activity에서 Fragment로 옮깁니다. (작동하지 않거나 시도 했음), 또는 활동을 단편 활동에? (내 레이아웃에 대한 링크도 포함되어 있습니다.) – KickingLettuce
공용 SDK가있는'ViewPager' +'Fragment'를 이미 사용하고 있다면, 지원 라이브러리로 전환하는 것은 단지 코드를 변경하는 것입니다 내 대답에 제안했다. 'Activity' 코드를'Fragment' 코드로 옮겨야한다고 말한 적은 없습니다 ...'Activity' 대신'FragmentActivity'를 사용해야한다고했습니다. 코드는 이전과 같은 구조를 따라야합니다. 위의 네 가지를 변경해야합니다. 올바른 'support.v4' 라이브러리도 가져와야합니다. –
물론, 코드의 구조는'ListActivity' 코드를 변경하여'FragmentActivity'를 확장합니다. 이것은 처음에'ListActivity' 대신에'Activity' 클래스를 확장했다면 작성한 코드와 거의 동일 해 보입니다. 여기에 어떤 의미가 있습니다. –