如何在onCreateView方法中创建显示多个布局

时间:2016-12-05 04:23:20

标签: android android-layout android-fragments android-viewpager

我正在尝试使用片段和'op创建一个介绍滑块屏幕。我想在ViewPager方法中显示多个布局,但不知道如何操作。

请帮忙吗?

主要活动

onCreateView

片段类

public class MainActivity extends AppCompatActivity {
    public ViewPager pager;
    public The_fragment_adapter the_fragment_adapter;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        pager = (ViewPager) findViewById(R.id.pager);
        the_fragment_adapter = new The_fragment_adapter(getSupportFragmentManager());
        pager.setAdapter(the_fragment_adapter);
    }
}

适配器视图

public class The_fragment extends Fragment {

    public The_fragment(){
    }

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View my_view=inflater.inflate(R.layout.theui,container,false);
        return my_view;
    }
}

1 个答案:

答案 0 :(得分:0)

ViewPager用于分页多个片段,而不是布局。 getItem()方法应返回所需位置的片段。

使用您想要的布局创建第二个片段:

public Fragment The_second_fragment extends Fragment {

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View my_view=inflater.inflate(R.layout.page2,container,false);
        return my_view;
    }
}

然后更改适配器方法:

@Override
public Fragment getItem(int position) {
    switch 0:
        return new The_fragment();
    switch 1:
        return new The_second_fragment();
}

@Override
public int getCount() {
    return 2;
}

看到优秀的tutorial in the Android Developer's Guide。而且,将来如果你遵循Java naming conventions,你更有可能得到一个更好的答案,因为其他程序员将能够更容易地理解你的代码。