是否可以在同一页面上设置微调器和列表视图?

时间:2011-12-07 16:12:57

标签: android listview

我希望在页面顶部有一个微调器,然后根据用户从微调器中选择的内容在微调器下面生成一个列表视图,是否有人知道这个的好教程或者有一些代码在可能有帮助?

2 个答案:

答案 0 :(得分:1)

是的,这是可能的。创建包含微调器和列表视图的布局。在listactivtiy中,使用setContentView基于布局创建视图。获取微调器(findViewById)的句柄,并做任何你需要做的事情。基于微调器选择 - 为列表视图适配器设置数组或光标。那应该够了。

答案 1 :(得分:1)

在字符串数组上使用ArrayAdapter填充微调器的简单示例:

// Create string array adapter to populate spinner
ArrayAdapter<CharSequence> adapter = 
    ArrayAdapter.createFromResource(this, R.array.spinner_string_array,
        android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

// Set the spinners content adapter and add onSelect listener
Spinner spinnerExample = (Spinner)findViewById(R.id.id_to_spinner);
spinnerExample.setAdapter(adapter);
spinnerExample.setOnItemSelectedListener(listerner);

// Get a reference to the ListView that will be used in the listener
listViewToPopulate = (ListView)findViewById(R.id.id_to_listview);

关联的OnClickListener处理列表填充:

OnItemSelectedListener listerner = new OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> paramAdapterView,
            View paramView, int paramInt, long paramLong) {
        String selection = (String)paramAdapterView.getItemAtPosition(paramInt);
        // Populate list based on selection
    }

    @Override
    public void onNothingSelected(AdapterView<?> paramAdapterView) {
        // do nothing
    }
};