Евгений Половинкин Asked:2020-05-29 23:14:45 +0800 CST2020-05-29 23:14:45 +0800 CST 2020-05-29 23:14:45 +0800 CST 从xml到java类 772 大家好你们好!也许是一个愚蠢的问题,但我仍然想知道。有没有什么工具可以从一个XML文件(标记文件)制作一个java.class,也就是说我有一个xml片段,我需要把它做成一个java类,这样外观是一样的。:) java 2 个回答 Voted Best Answer Andrew 2020-05-30T00:16:52+08:002020-05-30T00:16:52+08:00 android 应用程序主要由两部分组成:屏幕布局和编写逻辑的类。以下是一些关于布局的文档: 布局定义用户界面的视觉结构,例如活动用户界面或应用程序小部件。 您可以在屏幕上创建所需的布局以显示您需要的信息。此外,为了获得支持,您可以使用带有图标、菜单资源等的可绘制文件 作为资源。大多数情况下,在向应用程序添加活动的过程中,您会使用活动创建向导生成一对,因此,您将拥有一个可以更改以满足您的需求的布局和一个名为活动的类,您可以在其中可以为布局元素的行为编写逻辑。活动文件:класс-макет 活动是用户可以做的单一的、专注的事情。几乎所有活动都与用户交互,因此 Activity 类负责为您创建一个窗口,您可以在其中放置用户界面 setContentView (View)。 您的活动中有一个方法可以连接创建的布局: setContentView (R.layout.activity_main) 文档对此进行了说明: 从布局资源中设置活动的内容。 因此,您不能从布局中创建活动,反之亦然,因为这与逻辑相反:) 有一个选项可以在不同的活动上重用一个布局 - 为此,使用上述方法,您可以设置标记资源。 更新 在评论中进行了一些沟通后,我明白了你想要做什么,并且我可以 200% 肯定地说 - 不要这样做。您想要做的是在 RecyclerView 的基础上使用自定义适配器和您的标记来完成。这里有两个教程1和2。为什么没有完成 - 起初如果有 1-2 个片段,应用程序将简单地工作,但如果它像 VK 磁带并且有几十张卡,那么应用程序将像 PC 上的 chrome 一样吃内存(你能做铬?))。通过列表做所有事情,它会方便得多。获取片段的标记并将其转换为列表项的标记:) pavlofff 2020-05-30T08:14:43+08:002020-05-30T08:14:43+08:00 为了将 XML 标记转换为 android API 中的 Java 对象,有一个类LayoutInflater,其方法inflate()执行这种转换,返回View. 您可以在本文中阅读更多相关信息。 PS:为了解决提问的用户的具体问题,这个答案不适合,因为他需要使用RecyclerView,但问题的答案本身也不会伤害
android 应用程序主要由两部分组成:屏幕布局和编写逻辑的类。以下是一些关于布局的文档:
您可以在屏幕上创建所需的布局以显示您需要的信息。此外,为了获得支持,您可以使用带有图标、菜单资源等的可绘制文件 作为资源。大多数情况下,在向应用程序添加活动的过程中,您会使用活动创建向导生成一对,因此,您将拥有一个可以更改以满足您的需求的布局和一个名为活动的类,您可以在其中可以为布局元素的行为编写逻辑。活动文件:
класс-макет
您的活动中有一个方法可以连接创建的布局:
文档对此进行了说明:
因此,您不能从布局中创建活动,反之亦然,因为这与逻辑相反:) 有一个选项可以在不同的活动上重用一个布局 - 为此,使用上述方法,您可以设置标记资源。
更新
在评论中进行了一些沟通后,我明白了你想要做什么,并且我可以 200% 肯定地说 - 不要这样做。您想要做的是在 RecyclerView 的基础上使用自定义适配器和您的标记来完成。这里有两个教程1和2。为什么没有完成 - 起初如果有 1-2 个片段,应用程序将简单地工作,但如果它像 VK 磁带并且有几十张卡,那么应用程序将像 PC 上的 chrome 一样吃内存(你能做铬?))。通过列表做所有事情,它会方便得多。获取片段的标记并将其转换为列表项的标记:)
为了将 XML 标记转换为 android API 中的 Java 对象,有一个类
LayoutInflater
,其方法inflate()
执行这种转换,返回View
. 您可以在本文中阅读更多相关信息。PS:为了解决提问的用户的具体问题,这个答案不适合,因为他需要使用RecyclerView,但问题的答案本身也不会伤害