Vorrei creare un layout lineare che si comporterebbe in modo simile a ImageButton.Android: come propagare l'evento click ai child di LinearLayout e modificarne il drawable
<LinearLayout
android:id="@+id/container"
style="?WidgetHomeIconContainer">
<ImageView
android:id="@+id/icon"
style="?WidgetHomeIcon" />
<TextView
android:id="@+id/title"
style="?WidgetHomeLabel"
android:text="@string/title"
android:textAppearance="?attr/TextHomeLabel" />
</LinearLayout>
negli stili di ImageView, TextView e LinearLayout, Ho impostato un selettori per tutti gli stati.
Ora:
- quando clicco su ImageView (ho provato anche con ImageButton) - si comporta correttamente e l'immagine viene modificata in base xml selettore.
- quando clicco sul LinearLayout - la disposizione lineare viene cliccato, ma la l'ImageView e TextView non cambiano è drawable/aspetto
quindi vorrei fare quanto segue. Quando clicco su LinearLayout padre, ho bisogno di cambiare tutto lo stato di childs in stato premuto.
Ho provato ad aggiungere seguente codice LinearLayout onClickListener per propagare il clic:
@Override
public void onClick(View v)
{
LinearLayout l = (LinearLayout) v;
for(int i = 0; i < l.getChildCount(); i++)
{
l.getChildAt(i).setClickable(true);
l.getChildAt(i).performClick();
}
}
Ma Reamins ancora lo stesso. Grazie mille per qualsiasi aiuto.
SÌ! Questo è tutto! Grazie ... – Bhiefer
android: duplicateParentState = "true" non funziona per me, qualche idea del perché? –
Ho lo stesso problema ma il clic funziona e il selettore non funziona, qualche idea? –