2015-05-14 69 views
0

我正在尝试使列表视图行为空,如果它没有文本。我之前已经实现了这一点,但我不确定我是如何做到的。目前,当文本没有任何内容时,我设法让它不显示任何内容,但它仍然显示行边界。Android - 使列表视图行不可见

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_2, android.R.id.text1, MainActivity.values) { 
       @Override 
       public View getView(int position, View convertView, ViewGroup parent) { 
       View view = super.getView(position, convertView, parent); 
       TextView text1 = (TextView) view.findViewById(android.R.id.text1); 
       TextView text2 = (TextView) view.findViewById(android.R.id.text2); 


       text1.setText(MainActivity.values[position]); 
       text2.setText(MainActivity.numvalues[position]); 

        if (MainActivity.values[position].equals("")) { 
         text1.setVisibility(View.INVISIBLE); 
         text1.setVisibility(View.GONE); 
         text2.setVisibility(View.INVISIBLE); 
         text2.setVisibility(View.GONE); 
         //convertView.setVisibility(View.INVISIBLE); 
         //convertView.setVisibility(View.GONE); 
         view.setVisibility(View.INVISIBLE); 
         view.setVisibility(View.GONE); 
        } 
        else { 
         text1.setVisibility(View.VISIBLE); 
         text2.setVisibility(View.VISIBLE); 
         //convertView.setVisibility(View.INVISIBLE); 
         //convertView.setVisibility(View.GONE); 
         view.setVisibility(View.VISIBLE); 
        } 

       return view; 
       } 
      }; 
+3

为什么你设置可见性**两次**? 'GONE'就够了。节省CPU周期! –

回答

1

在init ArrayAdapter从MainActivity.values和MainActivity.numvalues项中移除之前,不需要显示。

1

VIEW.GONE将无法​​正常工作,我试过了,但有一件事你可以做,以避免这个问题,也许你应该删除你所有的空行,适配器?

相关问题