我想从MainActivity更改片段的元素:
1268558100, 03/14/2010 01:15
1268558400, 03/14/2010 01:20
1268558700, 03/14/2010 01:25
1268559000, 03/14/2010 01:30
1268559300, 03/14/2010 01:35
1268559600, 03/14/2010 01:40
1268559900, 03/14/2010 01:45
1268560200, 03/14/2010 01:50
1268560500, 03/14/2010 01:55
1268560800, 03/14/2010 03:00
1268561100, 03/14/2010 03:05
1268561400, 03/14/2010 03:10
1268561700, 03/14/2010 03:15
我需要操作'来自MainActivity,但我不能,因为元素“list”位于片段container.xml中,不在activity_main.xml中。 我无法在activity_main.xml中移动'list',因为我需要加载到container.xml中。 我怎样才能以正确的方式从MainActivity打电话?
答案 0 :(得分:0)
为什么需要对活动中的片段视图执行操作?
您可以在片段中完成所有这些操作。
将该片段添加到活动中。
在片段onCreateView方法中获取视图并执行任何操作。
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View inflatedView = inflater.inflate(R.layout.your_layout, container, false);
ListView list = (ListView) inflatedView.findViewById(R.id.list);// => this is the error
list.setOnItemClickListener(new Adapter.OnItemClickListener() {});
return inflatedView;
}
答案 1 :(得分:0)
虽然这是一个坏主意,但是你最好找到一个更好的解决方案来满足你的需求,答案是你可以让你的ListView里面的片段公共静态,然后对它执行你的操作,如:
YourFragment.list.setOnItemClickListener(new Adapter.OnItemClickListener()...