почему адаптер gridviewList не работает при вызове notifyDataSetChanged
при прокрутке отображаются элементы сетки: (
// здесь я вызвал onCreate fun, когда открытое занятие
var arraySection = ArrayList<section>()
var adapter:sectionsAdapter?=null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
adapter = sectionsAdapter(arraySection,this)
gridViewSections.adapter = adapter
getData()
}
// здесь я делаю адаптер для вида сетки
class sectionsAdapter:BaseAdapter{
var arraySection = ArrayList<section>()
var context:Context?=null
constructor(arraySection:ArrayList<section> , context:Context) {
this.arraySection = arraySection
this.context = context
}
override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {
println("position " + position)
val row = arraySection[position]
val inflater = context!!.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
val viewRow = inflater.inflate(R.layout.view_grid_home , null)
viewRow.textViewSectionId.text = row.title
viewRow.imageViewSectionId.loadFromUrl(row.imageurl!! , R.drawable.iconapp)
viewRow.setOnClickListener {
val intent = Intent(context , LensesActivity::class.java)
intent.putExtra("sectionId" , row.id)
context!!.startActivity(intent)
}
return viewRow
}
override fun getItem(position: Int): Any {
return arraySection[position]
}
override fun getItemId(position: Int): Long {
return position.toLong()
}
override fun getCount(): Int {
println("getCount " + arraySection.size)
println("getCount this " + this.arraySection.size)
return this.arraySection.size
}
}
// это удовольствие для загрузки всех данных из базы данных
Я загружаю все данные после этого добавить в массив
но я не вижу никаких данных в виде сетки
когда я прокручиваю сетку просмотра все данные отображаются
fun getData(){
arraySection.clear()
val parameter = Urls().makeParameter(tbl.sctions.name
, 50
, "id"
, orderType.DESC.name
, "{\"where\":\"isShow='1'\"}") // "+ isSections +"
Fuel.post(Urls().getData)
.body(parameter)
.responseString { request , response , result ->
if (response.isSuccessful) {
val gson = GsonBuilder().create()
val secionsData = gson.fromJson(result.get() , sectionList::class.java)
for (s in secionsData.data) {
val row = section(s.id,s.title,s.isShow,s.imageUrl)
arraySection.add(row)
}
adapter!!.notifyDataSetChanged()
}
}
}