有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android通过多种布局进行导航

我有这个应用程序,我想有一个特定的导航方式。所以我做了一项研究,但我感到困惑。我是安卓开发的begginer。 我想问一下我能用什么样的布局或任何东西来实现这一点。我不寻求超级具体的答案,只是做我想要的工作的是什么。这就是:

enter image description here

蓝色块(“选择品牌”视图)必须始终位于该位置,并且仅在需要时更改文本。我希望当单击一个图像按钮时,整个绿色块与图像网格一起更改为另一个xml布局。当我与这些布局的按钮交互时,我想调用绿色块中的多个布局。绿色块是一个<include layout ="layout.xml"/>

我真的很感激你的回答。对不起,如果是基本的,但我真的试图找到我需要的东西,但到目前为止,我看到的解决方案,阻止我使用简单的充气机。提前谢谢


共 (2) 个答案

  1. # 1 楼答案

    我认为您正在寻找的是片段类,它可以用作可链接到UI/布局的可重用代码

    来自android文档:

    To create a dynamic and multi-pane user interface on Android, you need to encapsulate UI components and activity behaviors into modules that you can swap into and out of your activities. You can create these modules with the Fragment class, which behaves somewhat like a nested activity that can define its own layout and manage its own lifecycle.

    Read more here

  2. # 2 楼答案

    在这个场景中,您必须使用片段

    您将有一个线性布局,其中第一个元素将是您的蓝色块。 第二个元素是一个FrameLayout,您可以将其更改为所需的片段(通常它具有ID容器)

    创建一个片段并将布局设置为您的布局。xml文件。 创建具有所需布局的第二个片段,以更改绿色块

    当您单击imageButton时,您必须用所需的片段更改当前片段Here您将看到如何将对象发送到片段

    您可以找到here一种在片段之间切换的方法。在ft.replace方法中,第一个id是将用作容器的FrameLayout(参见上文)

    FragmentTransaction ft = getFragmentManager().beginTransaction(); 
    ft.replace(R.id.container, new NewFragmentToReplace(), "NewFragmentTag"); 
    ft.commit(); 
    

    导入片段时要小心。如果使用支持包,则必须使用getSupportFragmentManager();

    阅读有关android developer的片段的更多信息