在listview android中显示/隐藏按钮,

时间:2013-12-25 18:53:24

标签: android listview button hide show

有谁知道如何在ListView中制作这样的东西?

单击ListView中的项目时,imageButton将变为可见。

http://img850.imageshack.us/img850/2377/is4t.png

然后单击另一个项目,单击的previus项目将不可见,实际项目将显示图像按钮。

http://img14.imageshack.us/img14/1920/lnpy.png

我已经搜索过这个,但我还没找到一些可以正常工作的东西。我已经尝试在该视图的onItemClick上显示该按钮,但是,当我单击另一个按钮时,previus项仍然可见。我曾尝试过notifyDataBaseChanged但仍然存在。谢谢你的帮助,抱歉我的英语不好。

¿如何访问上一个项目视图以将按钮设置为View.GONE? 代码:

listView.setOnItemClickListener(new OnItemClickListener() {


        @Override
        public void onItemClick(AdapterView<?> arg0, View view, int position,
                long arg3) {
            // TODO Auto-generated method stub
            MPlayer.playSong(position);
            Button bPlaying = (Buttton)view.findViewById(R.id.button1);
            bPlaying.setVisibility(View.VISIBLE);
            ca.notifyDataSetChanged();
        }
    });

1 个答案:

答案 0 :(得分:7)

不是最好的解决方案,但希望这可以帮助您解决问题

private Button previousButton = null;    
listView.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) {
        MPlayer.playSong(position);
        if(previousButton != null){
            previousButton.setVisibility(View.GONE);
        }
        Button bPlaying = (Buttton)view.findViewById(R.id.button1);
        bPlaying.setVisibility(View.VISIBLE);
        previousButton = bPlaying;
        ca.notifyDataSetChanged();
    }
});
相关问题