Intentando hacer que un oyente onclick trabaje en una ejecución lineal, pero nunca se llama :(. Habilitado hacer clic y es útil (ambos modos) y todavía no puede responder el oyente de clic Detalles de la plataforma: Android 3.0 .. Cualquier ayuda ?? código de abajoEl oyente de clic de LinearLayout nunca se llama
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/menu_items_button"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center_horizontal"
android:paddingTop="@dimen/gen_margin_xsmall"
android:paddingBottom="@dimen/gen_margin_xsmall"
android:background="@drawable/rule_bg_menu_button"
android:clickable="true"
android:focusableInTouchMode="true"
>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/menu_items"
android:tag="image"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:tag="text"
android:text="@string/menu_items_icon_txt"
style="@style/textDisplay.mediumLarge"
/>
</LinearLayout>
y en el código para agregar el detector de eventos
_itemsButton = (LinearLayout) menu.findViewById(R.id.menu_items_button);
final Intent itemsIntent = new Intent(this, ItemsActivity.class);
_itemsButton.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(itemsIntent); //Never called!
}
}
);
la razón por la que estoy haciendo esto y no utilizar un botón de imagen en su lugar se debe a que el fondo de el "botón" está basado en el estado (cambios de gradiente) pero también la imagen y para combinar con los dos al hacer clic/en el foco, utilicé una distribución lineal que tiene un ImageView en sí mismo. ¿Alguna sugerencia sobre por qué el clickListener no está funcionando en el linearLayout?
THX
¿Ve el cambio de estado cuando hace clic en el diseño? – bigstones
sí el estado cambió, el color de fondo cambió, que se define en el estado dibujable – Rickster
@pzulw lo hizo bien, la vista de la imagen (dentro de la distribución lineal) está recibiendo el clic ... tal vez debería hacer que "no se pueda hacer clic" o propagar el clic a su padre de alguna manera ... – Rickster