android - 我在 xamarin android 中使用相对布局的布局代码有问题吗?

标签 android android-layout xamarin

这个布局有三个控件:两个工具栏和一个框架布局。我想要两个工具栏,一个在布局的底部,另一个在布局的顶部。框架布局就在它们之间。我有这样的代码,但是它总是有错误说“没有找到与给定名称匹配的资源(在'layout_above'值为'@id/bottomToolBar')”。我很确定我已经设置了底部工具栏的ID。我好绝望。非常感谢。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
    android:id="@+id/mainToolBar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:background="@color/colorPrimary"
    android:minHeight="?attr/actionBarSize"
    app:titleTextColor="#FFFFFF"
    app:title="Musics">
</android.support.v7.widget.Toolbar>
<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/mainToolBar"
    android:layout_above="@id/bottomToolBar"
    android:id="@+id/fragmentsContainer"
    />

<android.support.v7.widget.Toolbar
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:id="@+id/bottomToolBar"
    android:minHeight="?attr/actionBarSize"
    android:background="#EFEFEF">
</android.support.v7.widget.Toolbar>
</RelativeLayout>

最佳答案

是的。当您的 FrameLayout 被解析时,解析器会尝试解析所有 ID。所以它也尝试查找 bottomToolBar。但是,此时 bottomToolBar 不存在于您的 R.java/Resource.cs 文件中,因此无法找到。 此 ID 稍后会在您的第二个 Toolbar 中创建:

android:id="@+id/bottomToolBar"

+ 表示,如果此引用不存在 id,则必须创建一个新 id。然后它将添加到 Xamarin 的 R.java 文件或 Resource.cs 文件中。

因此解决方法是:将 + 添加到您从 FrameLayoutbottomToolBar 的引用中,这样 bottomToolBar 的 id 是在您尝试引用它时创建的:

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/mainToolBar"
    android:layout_above="@+id/bottomToolBar"
    android:id="@+id/fragmentsContainer"
    />

来源:https://developer.android.com/guide/topics/ui/declaring-layout#id

关于android - 我在 xamarin android 中使用相对布局的布局代码有问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56871739/

相关文章:

xamarin - 在 C# 后端中,如何选择分段控件中的元素?

android - 单击按钮关闭充气布局

java - Xamarin .jar 绑定(bind) - 'Bitmap could not be found'

android - 如何为所有 Activity 创建通用的 Android XML 布局

android - 在 Kotlin 中将值从 Activity 传递到 Fragment

android - leftDrawable 和 rightDrawable 的单选按钮空间

xamarin - xamarin 中的绝对布局与相对布局

Xamarin 表单 XAML 标签轮换

android - Android 中短而可变的间隔计时器

android - NavigationView headerLayout Android 中的 onClick 错误