android – 如何在每个项目的列表视图中实现简单的按钮

android – 如何在每个项目的列表视图中实现简单的按钮,第1张

概述我的列表视图项中有一些条目.在那里,我有一个简单的“喜欢按钮”(不像Facebook按钮).你可以看到上面提到的SCREENSHOT;供参考. 我点击按钮的那一刻;当我再次登录时,我希望更改类似按钮颜色,并且类似按钮颜色应该保持不变(改变之类). 此外,所有条目必须使用json填充数据库中的cust_id,bus_id,Offer_id;我非常清楚. 当我再次点击相同的按钮(如按钮)时,其颜色已被 我的列表视图项中有一些条目.在那里,我有一个简单的“喜欢按钮”(不像Facebook按钮).你可以看到上面提到的SCREENSHOT;供参考.
我点击按钮的那一刻;当我再次登录时,我希望更改类似按钮颜色,并且类似按钮颜色应该保持不变(改变之类).

此外,所有条目必须使用Json填充数据库中的cust_ID,bus_ID,Offer_ID;我非常清楚.

当我再次点击相同的按钮(如按钮)时,其颜色已被更改.必须将其更改回默认颜色,并且必须从数据库中删除数据.

我怎样才能做到这一点…?
1.如何获得点击按钮的价值.
2.如何将更改的颜色恢复为默认值;一旦按钮被重新点击.

Plz建议我……

这是按钮代码

holder.b1.setonClickListener(new VIEw.OnClickListener() {            @OverrIDe            public voID onClick(VIEw v) {                if (clicked) {                    holder.b1.setBackgroundResource(R.drawable.like_icon_hover);                } else {                    holder.b1.setBackgroundResource(R.drawable.like_icon);                }                clicked = true;            }        });
解决方法 您需要为按钮添加一个监听器,并使用ValueAnimator,您可以更改按钮颜色,并在再次单击时将其反转.

这是实现您的方案的简单而最好的方法.为这个列表项中的按钮添加onClick监听器,就像这样..我已经解释了每一行..

// set a default background color to the button    placeHolder.likebutton.setBackgroundcolor(color.RED);    placeHolder.likebutton.setonClickListener(new VIEw.OnClickListener() {        ValueAnimator buttoncolorAnim = null; // to hold the button animator        @OverrIDe        public voID onClick(VIEw v) {            // first time this will be null            if(buttoncolorAnim != null){                // reverse the color                buttoncolorAnim.reverse();                // reset for next time click                buttoncolorAnim = null;                // add your code here to remove from database            }            else {                final button button = (button) v;                // create a color value animator                buttoncolorAnim = ValueAnimator.ofObject(new ArgbEvaluator(),color.RED,color.BLUE);                // add a update Listener for the animator.                buttoncolorAnim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {                    @OverrIDe                    public voID onAnimationUpdate(ValueAnimator animator) {                        // set the background color                        button.setBackgroundcolor((Integer) animator.getAnimatedValue());                    }                });                // you can also set a delay before start                //buttoncolorAnim.setStartDelay(2000); // 2 seconds                // start the animator..                buttoncolorAnim.start();                // add your code here to add to database            }        }    });

这将更改第一次单击时的按钮颜色,然后在下次单击时将颜色恢复.您还可以设置延迟以更改颜色.

注意:您必须根据逻辑设置默认按钮颜色.

总结

以上是内存溢出为你收集整理的android – 如何在每个项目的列表视图中实现简单的按钮全部内容,希望文章能够帮你解决android – 如何在每个项目的列表视图中实现简单的按钮所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1136072.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存