所以現在看來,標籤在android中的標籤是在FragmentActivity中使用tabhost,然後將每個選項卡作爲片段。我在這裏遇到的問題是,看起來整個系統的側邊片段具有相同的FragmentActivity(平板電腦或橫向模式),或者有一個片段使用第二個片段(如果它的小設備或旋轉)啓動另一個FragmentActivity,工作,因爲你不能有每個標籤的FragmentActivities。那麼我如何實現在選項卡上有碎片的主要優勢點?片段選項卡和不同的佈局
關於,
所以現在看來,標籤在android中的標籤是在FragmentActivity中使用tabhost,然後將每個選項卡作爲片段。我在這裏遇到的問題是,看起來整個系統的側邊片段具有相同的FragmentActivity(平板電腦或橫向模式),或者有一個片段使用第二個片段(如果它的小設備或旋轉)啓動另一個FragmentActivity,工作,因爲你不能有每個標籤的FragmentActivities。那麼我如何實現在選項卡上有碎片的主要優勢點?片段選項卡和不同的佈局
關於,
是的,您可以爲每個選項卡設置fragmentActivities。
這是一個PagerAdapter例如:
public class ExamplePagerAdapter extends FragmentPagerAdapter {
public ExamplePagerAdapter(FragmentManager fm) {
super(fm);
// TODO Auto-generated constructor stub
}
@Override
public int getCount() {
return 3;
}
@Override
public Fragment getItem(int position) {
Fragment f = null;
switch(position){
case 0:
{
f = new ArrayListFragment();
// set arguments here, if required
Bundle args = new Bundle();
f.setArguments(args);
break;
}
case 1:
{
f = new PrincipalFragment();
// set arguments here, if required
Bundle args = new Bundle();
f.setArguments(args);
break;
}
case 2:
{
f = new ViewFragment();
// set arguments here, if required
Bundle args = new Bundle();
f.setArguments(args);
break;
}
default:
throw new IllegalArgumentException("not this many fragments: " + position);
}
return f;
}
}
您可以使用此呼籲每個片段每一項活動。
public class PrincipalFragment extends Fragment {
private int mNum;
private EditText et;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mNum = getArguments() != null ? getArguments().getInt("num") : 1;
}
/**
* The Fragment's UI is just a simple text view showing its
* instance number.
*/
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.scrollview, container, false);
ImageView i = (ImageView)v.findViewById(R.id.imageView1);
ImageView i2 = (ImageView)v.findViewById(R.id.imageView2);
ImageView i4 = (ImageView)v.findViewById(R.id.imageView4);
ImageView i5 = (ImageView)v.findViewById(R.id.imageView5);
ImageDownloader.Mode mode = ImageDownloader.Mode.CORRECT;
ImageDownloader imageDownloader = new ImageDownloader();
imageDownloader.download(URLnames.URLS[1], i);
imageDownloader.download(URLnames.URLS[2], i2);
imageDownloader.download(URLnames.URLS[3], i4);
imageDownloader.download(URLnames.URLS[4], i5);
return v;
就像上面的例子中,我調用佈局滾動型,所以當你要創建scrollview.xml你需要指定的細節。
新建> android xml文件>選擇佈局類型>下一步>選擇一個特定的配置(您可以使用密度,方向等...)>完成。
現在eclipse會爲每個特定配置創建一個不同的文件夾,並在您運行不同的屏幕尺寸或sdkversion時自行管理它。
閱讀Supporting Multiple Screens瞭解更多信息。
不知道如何正確實現tabscroll?訪問此答案:Actionbarsherlock + tabs + multi fragments?
在片段活動中,您可以創建一個案例來選擇屏幕方向或將其放在AndroidManifest.xml中。
好的,謝謝我明天要檢查一下...但activityFragments在哪裏,似乎這返回片段與getItem()方法,但我把這個? – Maxrunner
它會返回片段,只讀我的補充,並給我一個答案。 – Marckaraujo