listview-setonclicklistener事件中如何改变其他控件的属性

问题描述

setonclicklistener事件中如何改变其他控件的属性

public View getView(int arg0, View arg1, ViewGroup arg2) {

        if(arg1==null){
            arg1=layoutInflater.inflate(R.layout.items, null);
        }

        ImageView musicflag = (ImageView) arg1.findViewById(R.id.musicflag);
        TextView musicname=(TextView) arg1.findViewById(R.id.musicname);
        TextView musicsinger=(TextView) arg1.findViewById(R.id.musicsingers);
         final ImageView musicplay = (ImageView) arg1.findViewById(R.id.musicatt);
        musicflag.setImageResource(R.drawable.music);
        musicname.setText(musics[arg0]);
        musicsinger.setText(musicsingers[arg0]);
        musicplay.setImageResource(R.drawable.play);

        listView.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1,
                    int arg2, long arg3) {

                //Toast.makeText(MainActivity.this, arg2+"", Toast.LENGTH_SHORT).show();
                /*if (flag==0) {
                    musicplay.setImageResource(R.drawable.pause);
                    flag=1;
                }else if (flag==1) {
                    musicplay.setImageResource(R.drawable.play);
                    flag=0;
                }*/
                **musicplay.setImageResource(R.drawable.pause);_**

                Toast.makeText(MainActivity.this, flag+"", Toast.LENGTH_SHORT).show();

                Intent intent = new Intent("MusicPlay");
                Bundle bundle = new Bundle();
                bundle.putInt("song", arg2);
                intent.putExtra("int", bundle);
                sendBroadcast(intent);
            }
        });

为什么musicplay.setImageResource(R.drawable.pause);这句话不能执行,图片没有更改

解决方案

listView.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1,
                    int arg2, long arg3) {
                                        ImageView musicplay = (ImageView) arg1.findViewById(R.id.musicatt);//这里重新获取当前点击的item对应的musicplay,不然musicplay是指向最后一个item的。
                //Toast.makeText(MainActivity.this, arg2+"", Toast.LENGTH_SHORT).show();
                /*if (flag==0) {
                    musicplay.setImageResource(R.drawable.pause);
时间: 2025-01-29 18:39:35

listview-setonclicklistener事件中如何改变其他控件的属性的相关文章

在asp.net中为Web用户控件添加属性和事件

asp.net|web|控件 在asp.net中为Web用户控件添加属性和事件 在90年代初,Microsoft为Web程序员提供的 Active Server Pages(ASP)革命性地改变了Web的编程.它可以利用十分易用的模型在Web服务器上动态生成HTML,并且很容易的实现了对数据库的访问,就当时来说,这是一项多么吸引人的技术,包括现在Internet上的许多web站点都是用Asp写的,我的同事前辈们更是玩Asp的高手,经历这么多年而不衰,可见他的成功. 但是,技术是在不断的发展着,引

为asp.net中的Web用户控件添加属性和事件

asp.net|web|控件      在90年代初,Microsoft为Web程序员提供的 Active Server Pages(ASP)革命性地改变了Web的编程.它可以利用十分易用的模型在Web服务器上动态生成HTML,并且很容易的实现了对数据库的访问,就当时来说,这是一项多么吸引人的技术,包括现在Internet上的许多web站点都是用Asp写的,我的同事前辈们更是玩Asp的高手,经历这么多年而不衰,可见他的成功.         但是,技术是在不断的发展着,引用某位Net专家的话讲―

telerik:RadGrid 控件,如何在EditCommand事件中获取到模版控件的ID

问题描述 telerik:RadGrid中添加了自定义模版<EditFormSettingsCaptionFormatString="修改菜单序号:{0}"CaptionDataField="id"EditFormType="Template"PopUpSettings-Modal="true"><EditColumnUniqueName="EditCommandColumn1"EditT

asp.net中如何改变CheckBox控件中方格的大小

问题描述 同上 解决方案 解决方案二:HTML:<inputclass="bigcheck"type="checkbox"name="agree"> CSS:input.bigcheck{height:50px;width:50px;} 解决方案三:一楼的正确,呵呵解决方案四:1楼这个不错解决方案五:引用1楼only_endure的回复: HTML:HTMLcode<inputclass="bigcheck"

ASP.NET 页面中动态增加的控件、添加事件第1/2页_实用技巧

要求:页面上有一个Add按钮,每点击一次该按钮,页面上动态创建一个WebPartZone! 提醒:WebPartZone只能在OnInit或之前才能创建,否则报异常! 大家都知道,按钮的点击事件是在RaisePostbackEvent时触发的,这意味着点击事件在OnLoad阶段之后才执行,远远落后于 OnInit阶段,而且ViewState在OnLoad时才准备好,OnInit以及之前的阶段根本就不能使用ViewState!如果试图在按钮点击事件里面创建WebPartZone等控件,唯一的后果就

(100分)初学ASP.NET AJAX想问问题!关于CALLBACK机制和ASp.net ajax中的调用WebService能否改变服务端控件的属性!

问题描述 如题目我能否在asp.netajax中前台通过调用webservice的方法调用后台控件的属性值如果用PageMethod的话发现只能调用静态方法或者用CallBack也可以能不能?如果不能有没有什么替代的方法,我不想用UpdataPanel,感觉很累赘 解决方案 解决方案二:CallBack应该可以,是调用还是改变?解决方案三:O_O解决方案四:是改变属性值解决方案五:用JS改变不可以么?解决方案六:JS可以??不会吧解决方案七:如果设置控件属性,传递的值比较小的话,可能是xmlht

抢先试用ASP.NET 2.0中的新型安全控件

asp.net|安全|控件 一. 引言 与ASP.NET 2.0一同上市的有几个新的安全控件-它们位于工具的Login选项卡中(见图1)-这些控件大大简化了Web开发人员的工作.通过使用这些新的安全控件,现在你可以执行例如用户登录.注册.口令改变等的任务:而且,为此做出的努力仅是拖放相应的控件到你的Web表单上去.在本文中,我将向你展示怎样使用这些新控件来实现用户认证. 首先,让我们探索一下LoginView.LoginStatus和LoginName三个控件的使用.首先,让我们使用Visual

C#根据句柄改变窗体控件值

原文:C#根据句柄改变窗体控件值 需求是这样,有个程序界面我们需要通过自己的程序持续输入数据,界面如图. 可以获得控件的句柄而用钩子写入值.这里需要用到spy++工具.在VS的工具下有个spy++工具,打开如下图 通过这个工具可以获得窗体的句柄,当然这里获得的句柄只能用于测试,因为.net开发的程序窗体每次打开句柄都会变,都需要重新获得.这个工具的用处在于找一个控件的前一句柄控件和后一句柄控件. 一.引用 //寻找目标进程窗口 [DllImport("USER32.DLL")] pub

同一个窗体根据用户来改变contextMenuStrip控件的可见性,这个可以实现吗??

问题描述 同一个窗体根据用户来改变contextMenuStrip控件的可见性,这个可以实现吗??比如说,用户A可以通过右击显示contextMenuStrip控件,用户b则不能通过右击显示contextMenuStrip控件 解决方案 解决方案二:可以实现,关键是你先能区分是A还是B解决方案三:这就是权限管理,你为每个人设置权限,根据这个设置去控制界面,关于权限设置的文章很多,你可以去搜搜解决方案四:引用2楼bdmh的回复: 这就是权限管理,你为每个人设置权限,根据这个设置去控制界面,关于权限