【问题标题】:How to use tools:context to associtate Fragment files?如何使用 tools:context 关联 Fragment 文件?
【发布时间】:2020-01-21 04:39:10
【问题描述】:

最近我遇到了在我的布局文件中使用tools:context 进行活动的用例。 我了解到我可以使用它将 Activity 类文件关联到我的布局文件。

但是如何使用它将片段类文件关联到任何布局?

正如我所尝试的,它只在自动完成建议中显示活动列表。

【问题讨论】:

    标签: android android-layout android-xml


    【解决方案1】:

    Android Studio有个bug,你要手动写,会显示红色(表示未解决),直到你输入完,才会显示为绿色

    【讨论】:

      【解决方案2】:

      你有没有试过这样做:

      假设Relative layout 是您的fragment's 布局中的父布局:

      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                  xmlns:tools="http://schemas.android.com/tools"
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  tools:context=".Folder.Fragment"  >
      

      现在这个 .xml 文件将与您的 .Fragment class 关联,这是一个片段。

      【讨论】:

      • 我已经尝试过了,但自动完成没有显示任何片段名称。让我手动输入并回复您。
      • @Dhaval 当然。但我一直这样使用它,它工作正常。如果您想在自动完成中显示片段名称,我认为您不会这样做。
      • 谢谢。我一直在等待自动完成以显示片段名称。我在整个互联网上搜索解决方案。但是,一旦我按照您所说的手动输入了它,它就可以工作了。
      【解决方案3】:

      使用布局文件创建片段并查看tools:context 的布局文件。

      【讨论】:

        【解决方案4】:

        重点:自动补全不显示名称,手动输入即可编译。

        【讨论】:

          【解决方案5】:

          我刚刚遇到了同样的问题,并且在 tools:context=".NameFragment" 语句中输入片段名称没有得到片段名称的识别。

          起作用的是首先删除该片段的类和 xml 文件,然后:

          1. 右击包名,选择New->Fragment->Fragment (Blank)
          2. 输入您的片段名称(布局名称会自动在同一表单上创建),然后单击“完成”。

          此方法同时创建了类和 xml 文件。此时,我的 xml 文件中的 tools:context 语句自动具有我的片段名称,并且不是红色而是绿色文本(表明它已被识别)。我在 Android Studio Bumblebee 2021.1.1 上看到了这个。

          之前我先创建了 xml 文件,然后创建了类文件(并且遇到了 tools:context 语句无法识别片段类文件名的问题)。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-11-09
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多