Swift,集合视图:未显示节标题

时间:2018-12-10 01:07:46

标签: swift macos collections header nscollectionview

我正在尝试在MacOS的Swift中对NSCollectionView进行编程。除了一个例外,它运行良好。节标题不会出现。它们应该出现的地方只是空白。下面代码中的最后一个arFragment = supportFragmentManager.findFragmentById(R.id.ux_fragment) as ArFragment 函数,永远不会被调用,每次绘制标题时都要调用。相反,它引发以下警告:

  

实例方法'collectionView(:viewForSupplementaryElementOfKind:at :)'与协议'NSCollectionViewDataSource'的可选要求'collectionView(:viewForSupplementaryElementOfKind:at :)'几乎匹配

有人知道我做错了吗?如何获得程序来调用Supplementary-view-collectionView-function?

最好!

<layout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <fragment android:name="edu.htw.cd.ar.objectdetect.sceneform.ArFragmentWithoutInstructions"
            android:id="@+id/ux_fragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
        <com.google.android.material.floatingactionbutton.FloatingActionButton
            android:id="@+id/search_fab"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom|end"
            android:layout_margin="16dp"
            app:srcCompat="@drawable/ic_search"
            app:elevation="6dp" /> <!-- https://material.io/design/environment/elevation.html -->
    </FrameLayout>
</layout>

1 个答案:

答案 0 :(得分:0)

谢谢大家,我找到了答案!

此代码:

collectionView(_ collectionView:NSCollectionView,viewForSupplementaryElementOfKind种类:String,at indexPath:IndexPath)-> NSView

从未被调用过,因为系统不再知道它了。那是我从代码示例中复制粘贴的旧代码。手动重新键入它,XCode提出正确的建议。