Extended Android TextView with pagination and clicks handling
- Page pagination
- Page fliping over left/right swipes
- Detecting clicks by paragraphs
- Detecting long clicks by words
1) Add library as a dependency to your project
implementation 'ru.mamykin.widget:paginatedtextview:0.1.1'
2) Add ru.mamykin.paginatedtextview.view.PaginatedTextView
to your layout. Init control with your text:
val tvBookContent = findViewById<PaginatedTextView>(R.id.tv_book_text) tvBookContent.setup(getText())
3) Set OnActionListener and OnSwipeListener for detecting paragraph/words clicks and left/right swipes.
class MyActivity : AppCompatActivity(), OnSwipeListener, OnActionListener { private fun init() { ... tvBookContent.setOnActionListener(this) tvBookContent.setOnSwipeListener(this) ... } override fun onSwipeLeft() {} // Called when user swiped left override fun onSwipeRight() {} // Called when user swiped right override fun onClick(paragraph: String) {} // Called when user clicked by a paragraph override fun onLongClick(word: String) {} // Called when user long clicked by a word override fun onPageLoaded(state: ReadState) {} // Called after page loading
For more details see sample module