2015-08-31 2 views
1

Мой первый макет ничего не показывает. Существует 2-й макет над ним, который показывает изображение. Как добавить onTouchEvent во второй макет? (Я спрашиваю об этом, потому что OnTouchEvent влияет только на мой 1-й макет ...) Его относительная компоновка накладывается на другую относительную компоновкуonTouchEvent к макету внутри макета

Большое спасибо.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:id="@+id/camera_layout" 
    android:background="#000000"> 

    <RelativeLayout 

     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:id="@+id/camera_preview" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_alignWithParentIfMissing="false" 
     android:layout_alignParentBottom="true" 
     android:layout_marginBottom="1dp" 
     android:visibility="visible"> 


    </RelativeLayout> 
</RelativeLayout> 
+0

Когда вы говорите о макете, что вы имеете в виду? –

+0

относительная компоновка внутри другой относительной компоновки – Anderson

+0

проверить мой ответ :) –

ответ

2

Я сделал это это делает:

final RelativeLayout rt = (RelativeLayout)findViewById(R.id.Test123); 
    rt.setOnTouchListener(new View.OnTouchListener() { 
     @Override 
     public boolean onTouch(View arg0, MotionEvent arg1) { 
      Log.d("TOUCHED","PEWPEW"); 
      rt.onTouchEvent(arg1); 
      return true; 
     } 
    }); 
} 

Мои activity_main.xml является:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:id="@+id/camera_layout" 
android:background="#000000"> 

<RelativeLayout 

    android:orientation="horizontal" 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:id="@+id/Test123" 
    android:background="#2d2" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignWithParentIfMissing="false" 
    android:layout_alignParentBottom="true" 
    android:layout_marginBottom="1dp" 
    android:visibility="visible" 
    > 
</RelativeLayout> 

Он будет говорить D/TOUCHED﹕ PEWPEW каждый раз, когда вы касаетесь test123 RelativeLayout если вы касаетесь другой он не срабатывает.

+0

спасибо, что это сработало. – Anderson

+0

@ Андерсон, пожалуйста;) –

Смежные вопросы