2012-06-23 3 views
0

내부에 두 개의 TextView가있는 상대 레이아웃이 있습니다. RelativeLayout을 누르면 텍스트 색상 TextViews를 어떻게 변경할 수 있습니까?Android에서 RelativeLayout 눌린 상태를 잡는 방법?

선택자를 사용했지만 상대 레이아웃이 텍스트 색상 속성을 지원하지 않았습니다.

OnFocus 및 OnTouch Listener와 함께 시도한 상대 레이아웃 누름 상태이지만 작동하지 않거나 (OnFocusChangeListener) 한쪽 (OnTouchListener)에서 작업 중입니다.

코드 :

<RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="243dp" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentLeft="true" 
     android:background="@drawable/singup_button_selector" 
     android:clickable="true" 
     android:focusable="true" 
     android:gravity="center" 
     android:id="@+id/sungup" 
     android:textColor="@drawable/singup_button_text_selector" 
     android:focusableInTouchMode="true"> 

     <TextView 
      android:id="@+id/singupTV1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_centerHorizontal="true" 
      android:text="@string/singup" 
      android:textColor="#3c5775"/> 




     <TextView 
      android:id="@+id/singupTV2" 
      android:layout_width="300dp" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/singupTV1" 
      android:layout_marginTop="15dp" 
      android:gravity="center" 
      android:text="@string/singup_extended" 
      android:textColor="#506378" 
      android:textSize="15dp" /> 

    </RelativeLayout> 

답변

0

당신은, 다음의 onclick 방법에서, RelativeLayout의 상에 OnClickListener를 설정 코드에서 모두 TextViews의 텍스트 색상을 변경할 수 있습니다.

+0

손가락을 뗀 후에 만 ​​작동하기 때문에. – bvitaliyg

+0

손가락을 떼면 손가락 터치부터 시작해야합니다. – bvitaliyg

0

나를 위해 일한 것은 OnTouchListener입니다.

setOnTouchListener(new OnTouchListener() { 
    @Override 
    public boolean onTouch(View v, MotionEvent event) 
    { 
     if(event.getAction() == MotionEvent.ACTION_DOWN || event.getAction() == MotionEvent.ACTION_MOVE) { 
      // focus in 
     } else{ 
      // focus out 
     } 

     return false; 
    } 
});