From c1219a024fb03f06166ca394f85f4d520134fdcc Mon Sep 17 00:00:00 2001 From: Sysking1024 <38101886+Sysking1024@users.noreply.github.com> Date: Sun, 28 Jun 2020 21:22:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DTalkBack=E4=B8=8BTabView?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E8=81=9A=E7=84=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TalkBack是Google推出的Android上的屏幕阅读器。透过TalkBack能让视力受损用户与Android设备上的app交互。当TabView无法被TalkBack聚焦时,用户将无法与Widget交互。 --- .../main/java/com/qmuiteam/qmui/widget/tab/QMUITabView.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/qmui/src/main/java/com/qmuiteam/qmui/widget/tab/QMUITabView.java b/qmui/src/main/java/com/qmuiteam/qmui/widget/tab/QMUITabView.java index f5266c7c..b13041fc 100644 --- a/qmui/src/main/java/com/qmuiteam/qmui/widget/tab/QMUITabView.java +++ b/qmui/src/main/java/com/qmuiteam/qmui/widget/tab/QMUITabView.java @@ -80,6 +80,12 @@ public class QMUITabView extends FrameLayout implements IQMUISkinHandlerView { public QMUITabView(@NonNull Context context) { super(context); + + // 使得每个tab可被诸如TalkBack等屏幕阅读器聚焦 + // 这样视力受损用户(如盲人、低、弱视力)就能与tab交互 + this.setFocusable(true); + this.setFocusableInTouchMode(true); + setWillNotDraw(false); mCollapsingTextHelper = new QMUICollapsingTextHelper(this, 1f); mGestureDetector = new GestureDetector(getContext(), new GestureDetector.SimpleOnGestureListener() {