在Android Studio中的Card View上添加点击效果波纹效果

我已经以编程方式添加了名片视图。我只想使其可单击并在单击时显示动画。这是我的代码

CardView cardView = new CardView(this);
LayoutParams layoutParams = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
cardView.setLayoutParams(layoutParams);
cardView.setRadius(15);
cardView.setPadding(25,25,25);
cardView.setCardBackgroundColor(Color.MAGENTA);

TextView textView = new TextView(this);
textView.setLayoutParams(layoutParams);
textView.setText("Programmatically set");
textView.setGravity(Gravity.CENTER);
textView.setTextColor(Color.WHITE);
cardView.addView(textView);
LinearLayout linearLayout = findViewById(R.id.linearLayout1);
linearLayout.addView(cardView);
songqian729 回答:在Android Studio中的Card View上添加点击效果波纹效果

this.props.props
,

您可以使用此:

cardView.setClickable(true);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
    TypedValue typedValue = new TypedValue();
    getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground,typedValue,true);
    cardView.setBackgroundResource(typedValue.resourceId);
}
,

使用Material Components Library只需使用:

cardView.setRippleColor(ContextCompat.getColorStateList(this,R.color.selector_card));
本文链接:https://www.f2er.com/3164438.html

大家都在问