在android中显示/隐藏自定义ListView

时间:2013-06-11 12:51:36

标签: android listview

有人可以指导我如何从我的活动中显示/隐藏自定义ListView(基于BaseAdapter)。

对于一些更详细的说明,我有一个有BUTTON和LISTVIEW的活动,我有一个内部类MyAdapter扩展了Base Adapter。

现在在我的ACTIVITY SHOW / HIDE ListView上按下一个按钮。

CAn任何人指导。

由于

2 个答案:

答案 0 :(得分:3)

只需按下按钮即可更改visibility的{​​{1}}。使用这一行:

ListView

显示。 和

listView.setVisibility(View.VISIBLE);   

隐藏。

你也可以使用:listView.setVisibility(View.GONE); 来隐藏listView,但仍然可以使用它的屏幕位置。

答案 1 :(得分:0)

你可以试试这个。使用切换按钮:

public class ShowHideListViewActivity extends Activity {

ToggleButton tb;
ListView lv;

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.mylistviewlayout);

    tb = (ToggleButton) findViewById(R.id.toggleButton1);
    lv = (ListView) findViewById(R.id.listView1);

    //You could set ListView Adapter here.

    tb.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

            if(isChecked)
            {
                lv.setVisibility(View.VISIBLE);
            }
            else
            {
                //lv.setVisibility(View.GONE);
                lv.setVisibility(View.INVISIBLE);
            }
        }
    });
 }
}
  

XML文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<ToggleButton
    android:id="@+id/toggleButton1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="ToggleButton" 
    android:textOn="Show"
    android:textOff="Hide"/>

<ListView
    android:id="@+id/listView1"
    android:layout_width="match_parent"
    android:layout_height="406dp" >
</ListView>

</LinearLayout>