我想升级我的几个 Android 应用程序以使用 Fragments。这是一个基本情况:
我有一个活动和一个 ListActivity。我想使用兼容性包装使用片段转换这些。下面是我在 Activity 的 onCreate 方法中的内容。(ListActivity 有类似的项目,所以我只使用 Activity 作为转换中的示例)。
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,并设置了选项卡。正确的布局已经设置,因为它应该是新的 Fragment 视图。我只是不知道如何移动数据,如上所示。我也了解 onCreateView 是您设置布局的地方。除此之外,其他一切都去哪里了?不要像方向一样寻找代码示例——如果可能的话。
编辑:我的布局基于此: http ://thepseudocoder.wordpress.com/2011/10/13/android-tabs-viewpager-swipe-able-tabs-ftw/
特别感兴趣的是: - RatingsBar 和 TextView(以及其他 xml 引用)去哪里了?- AsyncTask 呢?- 你如何处理在意图中传递数据?