Animación deslizante que tiene múltiples problemas de sincronización de vistas

Estoy tratando de hacer una animación con dos vistas de texto. Ambos están en una disposición relativa. La funcionalidad de la animación es a la izquierda, la vista de texto irá un poco a la izquierda y, al mismo tiempo, la vista de texto a la derecha también irá a la izquierda. Yo he tratado:

http://nineoldandroids.com/ y forma predeterminada.

Pero para ambos casos estoy teniendo una brecha durante el proceso. Ya hice una pregunta pero no recibo ninguna respuesta positiva:

La animación del deslizador de Android no está sincronizada

Código de Nineoldandroids:

archivo xml:

 <RelativeLayout  
android:layout_width="match_parent" android:layout_height="wrap_content"  
android:orientation="horizontal"
android:layout_below="@+id/target"
android:layout_marginTop="50dp"> 

<TextView
    android:id="@+id/TextView01"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_alignParentLeft="true"     
    android:background="#f00"
    android:gravity="center"
    android:text="RED"
    android:textColor="#000" />

<Button
        android:id="@+id/TextView02"
        android:layout_width="50dp"
        android:layout_height="match_parent"
        android:layout_alignBottom="@+id/TextView01"
        android:layout_alignParentRight="true"
        android:layout_alignTop="@+id/TextView01"
        android:background="#0F0"
        android:text="TXT"
        android:visibility="invisible" />
</RelativeLayout>

MainActivity.java:

public class MainActivity extends Activity {
  double counter = 0;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.toggles);
    final View target = findViewById(R.id.target);
    final int duration = 5*1000;
    final int duration1 = 300;

    final View textView1 = findViewById(R.id.TextView01);
    final View textView2 = findViewById(R.id.TextView02);
    textView1.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        if (counter == 0) {
          textView2.setVisibility(View.VISIBLE);
          ObjectAnimator.ofFloat(textView1, "translationX", 0, -50).setDuration(duration1).start();
          ObjectAnimator.ofFloat(textView2, "translationX", 100, 0).setDuration(duration1).start();
          counter++;

        }
        else {
          ObjectAnimator.ofFloat(textView1, "translationX", -50,0).setDuration(duration1).start();
          ObjectAnimator.ofFloat(textView2, "translationX", 0,100).setDuration(duration1).start();
          counter--;
        }
      }
    });
  }
}

¿Cómo puedo arreglarlo?

de lo contrario, estoy intentando colocar ambas vistas de texto dentro de un diseño en el que la segunda vista de texto estará fuera de la pantalla y, utilizando la animación, moveré todo el diseño. ¿Cómo puedo hacer el xml de esta manera?

Respuestas a la pregunta(2)

Su respuesta a la pregunta