我需要兩個TextView來具有相同的基線,上升,下降,下降值。文本被繪製後,是否可以更改TextView的FontMetrics?在TextView中設置文本的上升,下降,基線
0
A
回答
1
這麼晚了,但我也遇到了這個問題,我解決了一些竅門。 (just modify baseline
,沒有上升,下降或東西)
注意,
fontMetrics' values
(上升,下降,底部,頂部)是依賴於textSize
。所以我們必須在
view is drawn
之後使用fontMetrics' values
。 (如果它是自動調整大小或東西)做某事視圖繪製之後,使用Sa Qada's answer
baseline is always 0.
下降,上升,頂部,底部是相對值。請參閱此Suragch's answer。
更改fontMetrics的值不影響UI。
設置自定義基線(文本視圖的文本位置),只需使用填充。下面的代碼中的 與兩個TextView的基線對齊。
// this is kotlin code, but I'm sure you can understand // align textview2 to textview1's baseline val tv1Baseline = tv1.paddingBottom + tv1.paint.fontMetrics.bottom val tv2Baseline = tv2.paddingBottom + tv2.paint.fontMetrics.bottom val newPaddingOffset = tv1Baseline - tv2Baseline tv2.setPadding(tv2.paddingLeft, tv2.paddingTop, tv2.paddingRight, tv2.paddingBottom + newPaddingOffset)
+0
感謝您的回答,非常感謝。我會試試這個。 – Siva
+0
@Siva,但這可能不是一個好主意。因爲你必須考慮文本的對齊情況。 –
相關問題
- 1. 設置/取消設置下劃線TextView
- 2. 在後臺線程異常情況下在TextView上設置文本
- 3. 在TextView上設置文本onTextChanged
- 4. Python的上升和下降
- 5. android textview基線上標下標
- 6. 排序都上升和下降的基礎上哈希
- 7. 在textview中不設置文本粗體
- 8. 在ListActivity中爲TextView設置文本
- 9. 你可以在線程中設置textview文本嗎?
- 10. 以編程方式在android中設置下劃線文本爲TextView
- 11. 將文本設置到ListView中的特定位置上的TextView
- 12. 在主要活動中實例化的textview上設置文本
- 13. 使用HTML在TextView中設置文本上方的圖像
- 14. 將文本設置爲textView
- 15. 如何在另一個TextView中設置TextView的文本?
- 16. 的android TextView中設置文本問題
- 17. 我們如何在textView中以textView的形式爲文本下劃線設置顏色
- 18. 在記事本中設置行下線++
- 19. 在後臺進程textView設置文本
- 20. TextView在設置文本時崩潰
- 21. textview下劃線(輔助文本)
- 22. 在TextView上設置一些長文本的最佳方法
- 23. 如何在PyGtk TextView的空行上設置文本屬性?
- 24. 基線對齊的TextView剪輯多行文本的底線
- 25. 在Android上的TextView下繪製線條
- 26. NullPointerException當設置TextView的文本
- 27. 如何設置TextView的文本?
- 28. 如何異步設置TextView的文本?
- 29. Android的虛線下劃線在TextView中
- 30. 如何設置重點和編輯文本的下降
你檢查'TextView'文檔?有什麼與「大小」有關嗎? – pskink
@pskink我沒有檢查。沒有任何與此相關的公開API。但getPaint()提供了fontmetrics的值。我想知道是否可以在繪畫對象內改變它。 – Siva
與'TextView' api中的大小沒有關係? – pskink