title: Talk Back speaks the selected text three times after double tap
body: <p>I'm developing an Android application to ease navigation of visually impaired. Application's one of the features is to let user know his current position. User has two different views to know this. I'm using FragmentPagerAdapter to achieve two side by side tabs to tell his current position on a travel route. Using FragmentPagerAdapter we load two fragments and user can switch between these views.</p>
  
  <pre><code>public class NavigateActivity extends FragmentActivity implements ActionBar.TabListener{
      private ViewPager viewPager;
      private NavigateActivity.TabsPagerAdapter mAdapter;
      private ActionBar actionBar;  
      viewPager.setAdapter(mAdapter);         
      mAdapter = new NavigateActivity.TabsPagerAdapter(getSupportFragmentManager());
  
      actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
  
      // Adding Tabs
      private String[] tabs = {"Text", "Map"};
      for (String tab_name : tabs) {
          actionBar.addTab(actionBar.newTab().setText(tab_name)
                  .setTabListener(this));
      }
      viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
           // Override some existing java functions and load respective fragment on click
      });
  }
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/YSnJn.png" rel="nofollow noreferrer">Click here for image of the View</a>
  I have turned on the talk back on my android device.
  Suppose I'm on 'Text' tab (Tab 1) and want to switch to 'Map' tab (Tab 2).
  I click over 'Map' tab, Talk back reads the text<br>
  I double tap to switch to Map tab, Talk back reads the text thrice<br>
  I don't want any talk back announcement on or after double tapping </p>
  
  <p>I tried below code in one of fragments of Tab but there's no success </p>
  
  <pre><code>public class TextNavigationFragment extends Fragment implements View.OnClickListener {      
    // Below code loads the fragment 
    View rootView = inflater.inflate(R.layout.text_navigation_fragment, null);
    rootView.setContentDescription("\u00A0");
  }
  </code></pre>
  
  <p>I even tried below code in NavigateActivity to detect double tap and speak out empty Charsequence. </p>
  
  <pre><code>viewPager.setAccessibilityDelegate(new View.AccessibilityDelegate()
  {
    @Override
    public void onInitializeAccessibilityNodeInfo(View v, AccessibilityNodeInfo info)
    {
     super.onInitializeAccessibilityNodeInfo(v, info);
     CharSequence description = getResources().getText(R.string.id);
     AccessibilityAction customClick = new AccessibilityAction(AccessibilityAction.ACTION_ACTION_CLICK, description); 
     info.addAction(customClick);
    }
  });
  </code></pre>
  
  <p>But above code shows bugs as my app runs on devices with API&lt;21. I wasn't able to understand how to use *compat( Used as replacement for above code for devices API&lt;21 ). </p>