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