android控件之ListView(二)

5)不同的呈现模式

我们修改ArrayAdapter的第二个显示的模式。另外可以通过getListView()获取ListView的对象,设置ListView的一些属性,ListView的一些常用方法:setChoiceMode(),getCheckedItemPositions() 。

setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice,items));
getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);//表明有选项,如果不设置,缺省为none,即我们点击后仍无反应

setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice ,items));
getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); //注意,只要点击就会触发Callback,而不过是的点击后选上还是变为取消。

setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_checked,items));
getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);

接着依次为上面三种格式。

android控件之ListView(二)_第1张图片 android控件之ListView(二)_第2张图片 android控件之ListView(二)_第3张图片 

package com.android.demo;

import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;

public class MytestActivity extends ListActivity {
	Button MyButton;
	String[] items={"One", "Two", "Three", "Four", "Five"};
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        MyButton = (Button)findViewById(R.id.myButton);
        /*
        setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_single_choice, items));
        getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE); 
        */
        /*
        setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice, items));
        getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
        //getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE); 
        */
        
        setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_checked,items)); 
        //getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
        getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE); 
        
    }
	@Override
	protected void onListItemClick(ListView l, View v, int position, long id) {
		// TODO Auto-generated method stub
		MyButton.setText(items[position]);
		super.onListItemClick(l, v, position, id);
	}
    
}


你可能感兴趣的:(android,ListView,list,Class,callback,button)