У меня есть относительный макет, состоящий из нескольких пользовательских представлений. Когда я щелкаю по одному из представлений, говорят «NavigationSelector», другое представление говорит, что «AssistanceSelector» должен быть изменен. Я добавил событие setOnClickListener для объекта NavigationSelector, но я заметил, что везде, где я щелкаю по всей относительной компоновке, вызывается NavigationClickListener.
<RelativeLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<com.dashboard.customviews.NavigationSelector
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:id="@+id/navigationSelector">
</com.dashboard.customviews.NavigationSelector>
<com.dashboard.customviews.AssistanceSelector
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:id="@+id/assistanceSelector">
</com.dashboard.customviews.AssistanceSelector>
Activity.java:
NavigationSelector objNavigationSelector=null;
objNavigationSelector=(NavigationSelector)findViewById(R.id.navigationSelector);
objNavigationSelector.setOnClickListener(new NavigationClickListener(this));
class NavigationClickListener implements OnClickListener
public void onClick(View v) {
switch (v.getId()) {
case R.id.navigationSelector: //do required stuff
break;
...
}