如何在Fragment中实现Views

时间:2013-12-05 11:26:49

标签: android android-fragments fragment

我使用this示例代码使用导航绘图器创建滑动菜单。
我现在有这个菜单的页面是Fragment。现在我需要将View元素放在这些页面中,例如按钮textviews等。我该怎么做?因为我不在Activity类中,所以我不能将视图元素放在Fragment中。我已经读过,我必须创建一个与片段通信并完成工作的活动。这是怎么做到的?你能告诉我一些示例代码吗?感谢

2 个答案:

答案 0 :(得分:1)

我正在写我的答案但是Dhaval在蚂蚁之前做了很棒的事。 无论如何,我建议访问片段上的这个伟大的片段教程 来自vogella的http://www.vogella.com/articles/AndroidFragments/article.html,所以你可以更好地理解每个概念。

答案 1 :(得分:0)

请参阅下面的代码。它已初始化Button和ArrayAdapter。 片段要记住的一些事情:

在片段中,你必须使用" getActivity()"而不是上下文。

在编写" findViewById"时,您必须使用代码中显示的View实例。

这将有助于您开始。

<强> e.g。

public class FragmentExample extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        // TODO Auto-generated method stub

        View v = inflater.inflate(R.layout.fragment_layout, container,
                false);

        // String[] valuesD = getResources().getStringArray(
        // R.array.amtsDestination);
        // ArrayAdapter<String> destinationArray = new ArrayAdapter<String>(
        // this.getActivity(), android.R.layout.simple_spinner_item,
        // valuesD);
        // destinationArray
        // .setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
        // destination.setAdapter(startArray);

        Button button = (Button) v.findViewById(R.id.buttonRoute);
        button.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                // Toast.makeText(getActivity(), "Clicked", 6000).show();
                Intent intent = new Intent(getActivity(),
                        NewActivity.class);
                startActivity(intent);
            }
        });


        return v;
    }

}