1
マイアクティビティが開始されるとすぐに、アクセシビリティによっていくつかの指示を読んでいます。これどうやってするの? (私はアクティビティラベルを読みたくありません)Androidのアクセシビリティ:アクティビティの起動時にカスタムテキストを読む
マイアクティビティが開始されるとすぐに、アクセシビリティによっていくつかの指示を読んでいます。これどうやってするの? (私はアクティビティラベルを読みたくありません)Androidのアクセシビリティ:アクティビティの起動時にカスタムテキストを読む
アクセシビリティアナウンスイベントを投稿すると、これを行うことができます。
AccessibilityManager manager = (AccessibilityManager)mService.getSystemService(Context.ACCESSIBILITY_SERVICE);
if (manager.isEnabled()) {
AccessibilityEvent e = AccessibilityEvent.obtain();
e.setEventType(AccessibilityEvent.TYPE_ANNOUNCEMENT);
e.getText().add(message);
//There may be other things you need to add like class/packagename, I'm doing this from memory on my non-dev machine, so if this isn't quite right I apologize, I promise it's super close! :)
manager.sendAccessibilityEvent(e);
}
アクティビティonCreateメソッドでは、これを行うことができない場合があります。アクセシビリティサービスの添付を伴う微妙な競争条件があります。これをonCreateに配置するのがうまくいかない場合は、それを遅延付きのRunnableに追加するか、onPostResumeに追加してみてください。これは、そのチェーンの最新のコールバックです。最終的には、これが問題であれば、遅れたRunnableが唯一信頼できる回避策です。
もっと情報を提供してください...あなたは何を読んでいますか?ビュー、文字列... –
そう言えば、「XYZスクリーンが起動しました」と言うはずです。 – Amit
アプリを開くときの最初のアクティビティでのみ、または新しい活動のたびにあなたは開きますか?新しいアクティビティを開くたびに –