pull/32/head
parent
edd3ab77f9
commit
04b471f7c1
@ -0,0 +1,19 @@ |
||||
package io.legado.app.ui.widget.page |
||||
|
||||
import android.widget.TextView |
||||
|
||||
|
||||
class ChapterProvider { |
||||
|
||||
|
||||
fun getTextChapter(textView: TextView, content: String) { |
||||
|
||||
textView.text = content |
||||
val layout = textView.layout |
||||
val topOfLastLine = textView.height - textView.paddingTop - textView.paddingBottom - textView.lineHeight |
||||
val lineNum = layout.getLineForVertical(topOfLastLine) |
||||
val lastCharNum = layout.getLineEnd(lineNum) |
||||
} |
||||
|
||||
|
||||
} |
@ -0,0 +1,41 @@ |
||||
package io.legado.app.ui.widget.page |
||||
|
||||
import android.content.Context |
||||
import android.util.AttributeSet |
||||
import androidx.appcompat.widget.AppCompatTextView |
||||
|
||||
|
||||
class ContentTextView : AppCompatTextView { |
||||
constructor(context: Context) : super(context) |
||||
|
||||
constructor(context: Context, attrs: AttributeSet) : super(context, attrs) |
||||
|
||||
constructor(context: Context, attrs: AttributeSet, defStyleAttr: Int) : super(context, attrs, defStyleAttr) |
||||
|
||||
/** |
||||
* 去除当前页无法显示的字 |
||||
* @return 去掉的字数 |
||||
*/ |
||||
fun resize(): Int { |
||||
val oldContent = text |
||||
val newContent = oldContent.subSequence(0, getCharNum()) |
||||
text = newContent |
||||
return oldContent.length - newContent.length |
||||
} |
||||
|
||||
/** |
||||
* 获取当前页总字数 |
||||
*/ |
||||
fun getCharNum(): Int { |
||||
return layout.getLineEnd(getLineNum()) |
||||
} |
||||
|
||||
/** |
||||
* 获取当前页总行数 |
||||
*/ |
||||
fun getLineNum(): Int { |
||||
val layout = layout |
||||
val topOfLastLine = height - paddingTop - paddingBottom - lineHeight |
||||
return layout.getLineForVertical(topOfLastLine) |
||||
} |
||||
} |
Loading…
Reference in new issue