我是Adapter
的新手。因此,要了解有关如何实现Adapter
的更多信息,我将在SO和其他一些博客中查看各种示例。我发现许多人在自定义适配器类中定义了getCount()
,getItem()
,getItemId()
,并扩展了ArrayAdapter
并且甚至没有使用这些功能。我了解在扩展' BaseAdapter'的自定义类中,我们必须覆盖getCount()
,getItem()
,getItemId()
才能完成任务。
所以对于我的问题,我是否必须在扩展ArrayAdapter
时在自定义Adapter类中定义这些函数?
注意:让我感到惊讶的是,当我使用自定义适配器扩展Spinner
而不定义这些功能时实现自定义ArrayAdapter
时,似乎没有问题,一切正常精细。我是否做错了我真的很困惑。
答案 0 :(得分:0)
当你“获得你的物品”时,这些方法在内部使用。用你的逻辑来填充你的“getView”方法中的数据。
答案 1 :(得分:0)
创建自定义适配器扩展getCount()
时,我们无需定义getItem()
,getItemId()
,ArrayAdapter
。没有必要,如ArrayAdapter
folderInput1<- reactive({
shinyDirChoose(input, 'directory', roots= volumes, session=session, restrictions=system.file(package='base'))
return(parseDirPath(volumes, input$directory))})
files1 <- reactive({
list.files(path = folderInput1(), pattern = "*.csv", full.names = T)
})
nFiles1 <- reactive({ length(files1() ) })
这些函数被覆盖。但是如果我们需要覆盖这些函数并提供我们自己的定义,我们就可以做到这一点,而且根本没有问题。
感谢definition指导我完成定义。