机器人:的onclick ="" - 调用布局

时间:2014-07-25 10:38:36

标签: android android-layout android-activity

我想知道是否有可能使用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

1 个答案:

答案 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 对特定区域内的片段进行了膨胀。在这种情况下,您可以指定页面中的哪个区域,您将在按钮单击,悬停等特定事件上显示所需的输出。

希望它有所帮助。干杯! :)