我有一个线性布局,其中包含 5 个线性布局作为其子级。我想为每个子线性布局处理触摸事件。我的布局看起来像这样
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/container">
<LinearLayout android:id="@+id/item1"
android:layout_width="match_parent"
style="@style/NavLinkItemContainer"
android:layout_height="wrap_content">
<TextView
style="@style/NaviLinkSelected"
android:text="First"/>
</LinearLayout>
<LinearLayout android:id="@+id/item2"
android:layout_width="match_parent"
style="@style/NavLinkItemContainer"
android:layout_height="wrap_content">
<TextView
style="@style/NaviLinks"
android:text="Second"/>
</LinearLayout>
<LinearLayout android:id="@+id/item3"
android:layout_width="match_parent"
style="@style/NavLinkItemContainer"
android:layout_height="wrap_content">
<TextView
style="@style/NaviLinks"
android:text="Third"/>
</LinearLayout>
<LinearLayout android:id="@+id/item4"
android:layout_width="match_parent"
style="@style/NavLinkItemContainer"
android:layout_height="wrap_content">
<TextView
style="@style/NaviLinks"
android:text="Fourth"/>
</LinearLayout>
<LinearLayout android:id="@+id/item5"
android:layout_width="match_parent"
style="@style/NavLinkItemContainer"
android:layout_height="wrap_content">
<TextView
style="@style/NaviLinks"
android:text="Fifth"/>
</LinearLayout>
</LinearLayout>
我使用布局的活动看起来像
public class MainActivity extends Activity implements OnTouchListener{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
Log.d("","ON TOUCH VIEW ######## "+v.getId());
return false;
}
}
触摸子布局时,在 onTouch 事件中没有得到 id(item1,item2...) 请建议。