Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用事件移除卡_Java_Android_Listview_Cardslib - Fatal编程技术网

Java 使用事件移除卡

Java 使用事件移除卡,java,android,listview,cardslib,Java,Android,Listview,Cardslib,我用的是gabrielemariotti的cardslib。我使用的是可扩展的ListView卡。我在它里面有一个自定义布局,在ListView卡的视图中有一个图像视图,nameremove。我计划使用Remove imageview作为触发器,从列表中动态删除一张卡 问题是,卡片上有两种布局,标题和主要内容。顺便提一下,这些卡片包含在ListView中。其中一个布局是删除图像视图所在的位置。下面的代码可以通过单击将卡移除 单击imageview移除时,下面的代码将触发Toast @Overri

我用的是gabrielemariotti的cardslib。我使用的是可扩展的ListView卡。我在它里面有一个自定义布局,在ListView卡的视图中有一个图像视图,nameremove。我计划使用Remove imageview作为触发器,从列表中动态删除一张卡

问题是,卡片上有两种布局,标题和主要内容。顺便提一下,这些卡片包含在ListView中。其中一个布局是删除图像视图所在的位置。下面的代码可以通过单击将卡移除

单击imageview移除时,下面的代码将触发Toast

@Override
    public void setupInnerViewElements(ViewGroup parent,View view){



        //Add simple title to header
        if (view!=null){
            TextView mTitleView=(TextView) view.findViewById(R.id.card_header_inner_simple_title);
            if (mTitleView!=null)
                mTitleView.setText(mTitle);

            ImageView img = (ImageView)view.findViewById(R.id.cancel);

            img.setOnClickListener(new OnClickListener(){

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Toast.makeText(getContext(), "Clicked", Toast.LENGTH_SHORT).show();
                }});

        }

    }

我想把两者结合起来。卡SLIB的工作原理类似于首先将所有卡添加到一个卡阵列,然后使用卡阵列初始化卡阵列适配器

这与使用ListView相同。因此,删除一个项目也与从ListView中删除相同

1) 在任何情况下,将卡从卡阵列中移除


2) 调用notifyDataSetChanged();在您的CardArrayAdapter对象上。它将更新卡片列表,并从视图中删除已删除的卡片。

谢谢这给了我一个提示,特别是调用notifyDataSetChanged()
@Override
    public void setupInnerViewElements(ViewGroup parent,View view){



        //Add simple title to header
        if (view!=null){
            TextView mTitleView=(TextView) view.findViewById(R.id.card_header_inner_simple_title);
            if (mTitleView!=null)
                mTitleView.setText(mTitle);

            ImageView img = (ImageView)view.findViewById(R.id.cancel);

            img.setOnClickListener(new OnClickListener(){

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Toast.makeText(getContext(), "Clicked", Toast.LENGTH_SHORT).show();
                }});

        }

    }