mirror of
https://github.com/SimpleMobileTools/Simple-Notes.git
synced 2025-06-05 17:00:23 +02:00
move the notes in a viewpager
This commit is contained in:
@ -0,0 +1,38 @@
|
||||
package com.simplemobiletools.notes.adapters
|
||||
|
||||
import android.os.Bundle
|
||||
import android.support.v4.app.Fragment
|
||||
import android.support.v4.app.FragmentManager
|
||||
import android.support.v4.app.FragmentStatePagerAdapter
|
||||
import android.util.SparseArray
|
||||
import com.simplemobiletools.notes.NOTE_ID
|
||||
import com.simplemobiletools.notes.fragments.NoteFragment
|
||||
import com.simplemobiletools.notes.models.Note
|
||||
|
||||
class NotesPagerAdapter(fm: FragmentManager, private val notes: List<Note>) : FragmentStatePagerAdapter(fm) {
|
||||
lateinit var fragments: SparseArray<NoteFragment>
|
||||
|
||||
init {
|
||||
fragments = SparseArray(10)
|
||||
}
|
||||
|
||||
override fun getCount() = notes.size
|
||||
|
||||
override fun getItem(position: Int): Fragment {
|
||||
val bundle = Bundle()
|
||||
val id = notes[position].id
|
||||
bundle.putInt(NOTE_ID, id)
|
||||
|
||||
if (fragments.get(position) != null)
|
||||
return fragments[position]
|
||||
|
||||
val fragment = NoteFragment()
|
||||
fragment.arguments = bundle
|
||||
fragments.put(position, fragment)
|
||||
return fragment
|
||||
}
|
||||
|
||||
fun saveNote(pos: Int) {
|
||||
fragments.get(pos)?.saveText()
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user