Skip to content
能力中心
产品中心
应用市场
WebOffice
开发者后台

集成文档列表界面

协作中台 SDK 支持文档列表的集成,文档列表功能如下:

  • 点击快捷功能图标跳转到不同类型界面,如团队、我的文档、共享、星标、标签、模版库。

  • 显示文档最近打开记录,从新到旧排列,支持分享、复制等操作。

  • 点击导航栏搜索图标,可对文档进行精细化搜索。

  • 点击底部加号图标,在我的文档目录中创建不同类型的文档或者文件夹。

  • 点击列表文档可进行预览编辑。

目前仅公网支持原生化文档,私网可使用webview版本

效果展示

你可以通过两种方式集成文档原生化版本列表页面:

  • KIMDocumentHomeActivity,直接包含了 KIMDocumentHomeFragment 的 Activity 界面,可以通过 KIM.getService().goPage(KIMDocumentHomeFragment::class.java.getPageName(), this, Bundle())启动

  • KIMDocumentHomeFragment,接入方可以将该 Fragment 嵌入自己的 Activity,直接创建 KIMDocumentHomeFragment, 并通过 fragmentManager 添加到自定义的 Activity 中

接口定义

kotlin
KIM.getService().goPage(pageName: String, context: Context?, args: Bundle)

参数说明

参数类型说明
pageNamestring这里固定值:
KIMDocumentHomeFragment::class.java.getPageName()
contextContext
argsBundle

代码示例

示例一

直接使用KIMDocumentHomeActivity

kotlin
KIM.getService().goPage(KIMDocumentHomeFragment::class.java.getPageName(), this, Bundle())

示例二

使用KIMDocumentHomeFragment,接入方可以将该 Fragment 嵌入自己的 Activity,直接创建 KIMDocumentHomeFragment, 并通过 fragmentManager 添加到自定义的 Activity 中。

  1. 自定义 Activity 并将 Fragment 加入到 Activity 中。
kotlin
import android.os.Bundle
import androidx.fragment.app.FragmentActivity
import com.kingsoft.kim.expand.databinding.KimUiCommonFragmentContainerBinding
import com.kingsoft.kim.kit.sample.R
import com.kingsoft.kim.sdk.docs.kit.open.KIMDocumentHomeFragment

class CustomDocumentActivity : FragmentActivity() {
    private lateinit var binding: KimUiCommonFragmentContainerBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = KimUiCommonFragmentContainerBinding.inflate(layoutInflater)
        setContentView(binding.root)
        if (savedInstanceState == null) {
            val fragment = KIMDocumentHomeFragment()
            supportFragmentManager.beginTransaction()
                .add(R.id.container, fragment, KIMDocumentHomeFragment::class.java.name)
                .commitAllowingStateLoss()
        } else {
            val fragment = supportFragmentManager.findFragmentByTag(KIMDocumentHomeFragment::class.java.name)
            if (fragment == null) {
                finish()
                return
            }
            supportFragmentManager.beginTransaction()
                .attach(fragment)
                .commitAllowingStateLoss()
        }
    }
}

请注意在 Manifest 完成注册及主题设置。

  1. 打开Activity页面
kotlin
startActivity(Intent(this, CustomDocumentActivity::class.java))