LinearLayout не активируется - Android - PullRequest
1 голос
/ 01 декабря 2011

Я знаю, что это вопрос, который задавался ранее, но я думаю, что я делаю правильное кодирование, и все же я не придумываю правильный результат. Вот мой код xml:

            <LinearLayout 
                android:id="@+id/directions_layout"
                android:orientation="horizontal"
                android:layout_width="fill_parent"
                android:layout_height="50dp"
                android:clickable="true">

                <ImageView android:src="@drawable/icon_directions"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_vertical"
                    android:layout_marginLeft="5dp"/>

                <TextView android:text="Directions"
                    android:textColor="@color/gray"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_vertical"
                    android:layout_marginLeft="10dp"/>

            </LinearLayout>

Я не знаю, имеет ли это значение или нет, но LinearLayout, который является родительским для показанного, не кликабелен.

Вот где я устанавливаю OnClickListener в коде:

    listener_layout = new OnClickListener(){

        @Override
        public void onClick(View v) {
            Toast.makeText(v.getContext(), "hi", Toast.LENGTH_SHORT);

        }

    };
    call_layout = (LinearLayout) findViewById(R.id.call_layout);
    call_layout.setOnClickListener(listener_layout);

но его никогда не уволят ... Есть предложения?

1 Ответ

3 голосов
/ 01 декабря 2011
Toast.makeText(v.getContext(), "hi", Toast.LENGTH_SHORT);

Вы не набрали show() на своем тосте, который, похоже, не слушает ваш слушатель.

Приведенная выше строка должна быть:

Toast.makeText(v.getContext(), "hi", Toast.LENGTH_SHORT).show();
...