android - CardView 或 MaterialTextView OnClickListener 不起作用

标签 android onclicklistener materialcardview

我在 LinearLayout 布局中使用了卡片 View 和 Material TextView ,如下所示

<LinearLayout
                        android:layout_marginTop="10dp"
                        android:layout_width="match_parent"
                        android:layout_height="50dp"
                        android:weightSum="2">

                        <com.google.android.material.card.MaterialCardView
                            android:id="@+id/card_date"
                            android:layout_width="0dp"
                            android:clickable="true"
                            android:layout_weight="1"
                            android:layout_marginEnd="2dp"
                            android:layout_height="match_parent"
                            android:clipToPadding="true"
                            app:cardCornerRadius="5dp"
                            android:focusable="true">

                        <com.google.android.material.textview.MaterialTextView
                            android:layout_weight="1"
                            android:id="@+id/editText_schedule_date"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:layout_gravity="center"
                            android:gravity="center"
                            android:background="@color/transparent"
                            android:text="@string/date_post"
                            android:focusableInTouchMode="false"
                            android:singleLine="true"
                            android:textColor="@color/textView_hint_upload"
                            android:theme="@style/editText_style"
                            android:textSize="16sp" />
                        </com.google.android.material.card.MaterialCardView>



                        <com.google.android.material.card.MaterialCardView
                            android:layout_weight="1"
                            android:layout_width="0dp"
                            android:layout_marginStart="2dp"
                            android:layout_height="match_parent"
                            android:clipToPadding="true"
                            app:cardCornerRadius="5dp">

                        <com.google.android.material.textfield.TextInputEditText

                            android:id="@+id/editText_schedule_time"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:layout_gravity="center"
                            android:layout_marginLeft="10dp"
                            android:layout_marginRight="10dp"
                            android:background="@color/transparent"
                            android:hint="@string/time_post"
                            android:gravity="center"
                            android:inputType="time"
                            android:singleLine="true"
                            android:textColor="@color/textView_upload"
                            android:textColorHint="@color/textView_hint_upload"
                            android:theme="@style/editText_style"
                            android:textSize="16sp" />
                        </com.google.android.material.card.MaterialCardView>
                    </LinearLayout>

我正在尝试在我的 Activity 中使用它,如下所示

private MaterialCardView card_date;

然后像下面一样创建

card_date = findViewById(R.id.card_date);
card_date.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Log.e("called","this card");
            }
        });

但它不起作用。我也尝试过 textview onclick 监听器,但也不起作用。让我知道是否有人可以帮助我解决这个难题。谢谢!此 LinearLayout 之外的代码也可以正常工作。谢谢!

最佳答案

请删除android:clickable="true"

 <com.google.android.material.card.MaterialCardView
  android:id="@+id/card_date"
  android:layout_width="0dp"
  android:layout_weight="1"
  android:layout_marginEnd="2dp"
  android:layout_height="match_parent"
  android:clipToPadding="true"
  app:cardCornerRadius="5dp"/>

                 

关于android - CardView 或 MaterialTextView OnClickListener 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64482511/

相关文章:

php - 在 android 中测试 gcm 推送通知

android - 在自定义 View 中覆盖空方法并在 MainActivity 中处理它

android - Android Studio 与 DatePicker 代码结构的建议

android - 无法在仪器测试中膨胀 MaterialCardVIew 类

android - 以编程方式将描边颜色设置为 CardView

android - 将 PDF 文件的内容读入 webView

java - android从数据库类内部传递变量

android - 如何在 'fragment'中找到listview

java - 未在 onClickListener 上设置 boolean 值