如何在LIstview中隐藏一些控件

时间:2011-07-21 14:05:06

标签: android android-listview

我有一个listView,里面有一些控件。现在情况是我想在特定的“列表视图项”上隐藏一些控件..

1 个答案:

答案 0 :(得分:0)

您可以在getView()中执行此操作,也可以遍历listview项目,在该特定项目中,使用父视图对子视图执行操作。如果您进行迭代,请使用AsyncTask

这样的事情:

   private class UI extends AsyncTask <View, String, View>
     {
         public View viewItem=null;
         public UI(View v)
         {
             this.viewItem=v;
         }
        @Override
        protected View doInBackground(View... arg0) {

            return viewItem;
        }

        @Override
        protected void onPreExecute() {

            for(int i = 0; i  <= listView.getLastVisiblePosition(); i++)
            {
                if(listView.getChildAt(i)!= null)
                {
                    (listView.getChildAt(i).findViewById(R.id.go)).setVisibility(View.GONE);
                    (listView.getChildAt(i).findViewById(R.id.remove)).setVisibility(View.GONE);

                }
            }

            super.onPreExecute();
        }

        @Override
        protected void onPostExecute(View result) {

            ((Button)result.findViewById(R.id.go)).setVisibility(View.VISIBLE);
            ((Button)result.findViewById(R.id.remove)).setVisibility(View.VISIBLE);

            super.onPostExecute(result);
        }

     }