我想知道是否有可能使用XML-onclick attribtue调用另一个XML - “View
”。
意味着如果我在菜单中并单击“创建新绘图”按钮,我是否应该只调用另一个XML-View来提供更多选项?
我所知道的是:android:onclick="hellothere"
调用视图所属的public void hellothere(View view)
中的方法Activity
,但为什么它必须与代码一起使用,而不是我只需调用另一个XML-Layout?
示例:andorid:onclick="new_page"
(new_page.xml opens
)
答案 0 :(得分:1)
在android中无法调用另一个没有上下文的xml。上下文将类似于活动,片段等。 如果要将另一个xml充气到所需布局上的区域而不进行活动转换,请改用片段。
Heres是一个简单的代码,如何在特定或通用区域中附加片段:
附加到通用片段区域:
FragmentTransaction ft;
Fragment mFragment = new MySampleFragment();
ft = getFragmentManager().beginTransaction();
ft.replace(android.R.id.content, mFragment, "samplefragment");
ft.commit();
如上所示,我们将Fragment附加到android的默认片段inflater中,这是“android.R.id.content”。它为您提供了视图的根元素,没有必须知道它的实际名称/类型/ ID。查看从当前活动中获取根视图
附加到特定片段区域:
FragmentTransaction ft;
Fragment mFragment = new MySampleFragment();
currentFragment = mFragment;
ft = getFragmentManager().beginTransaction();
ft.replace(R.id.myfragmentid, mFragment, "samplefragment");
ft.commit();
这里我们使用实际ID R.id.myfragmentid 对特定区域内的片段进行了膨胀。在这种情况下,您可以指定页面中的哪个区域,您将在按钮单击,悬停等特定事件上显示所需的输出。
希望它有所帮助。干杯! :)