当前位置:首页 > 开发 > 移动开发 > 正文

ArrayAdapter和List的关系

发表于: 2011-08-11   作者:chenhaodejia   来源:转载   浏览次数:
摘要: 1、使用ArrayAdapter(数组适配器)顾名思义,需要把数据放入一个数组以便显示。 package com.js.EX04_9; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.view.View;

1、使用ArrayAdapter(数组适配器)顾名思义,需要把数据放入一个数组以便显示。

package com.js.EX04_9;

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;

public class EX04_9 extends Activity {
private static final String[] countresStr =
{
"北京","上海","湖南","江苏"
};
private TextView myTextView;
private EditText myEditText;
private Button myButtonAdd, myButtonRemove;
private Spinner mySpinner;
private ArrayAdapter<String> adapter;  //把数据放入一个数组以便显示
private List<String> allCountres;     //

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        allCountres = new ArrayList<String>();
        for(int i = 0; i < countresStr.length; i++)
        {
        allCountres.add(countresStr[i]);
        }
        //new ArrayAdapter对象并将allCountres传入。
        adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, allCountres);
        adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
       
        //以findViewById()取得对象
        myTextView = (TextView) findViewById(R.id.myTextView);
        myEditText = (EditText) findViewById(R.id.myEditText);
        myButtonAdd = (Button) findViewById(R.id.myButtonAdd);
        myButtonRemove = (Button) findViewById(R.id.myButtonRemove);
        mySpinner = (Spinner) findViewById(R.id.mySpinner);
       
        //将ArraySpinner添加Spinner对象
        mySpinner.setAdapter(adapter);
       
        //将myButtonAdd添加OnClickListener对象
        myButtonAdd.setOnClickListener(new OnClickListener()
{

@Override
public void onClick(View arg0)
{
//取得EditText输入的文字
String newCountry = myEditText.getText().toString();
//先比较先添加的是不是已经存在,不存在才添加
for(int i = 0; i < adapter.getCount(); i++)
{
if(newCountry.equals(adapter.getItemId(i)))
{
return;
}
}
if(!newCountry.equals(""))
{
//将值添加至adapter
adapter.add(newCountry);
//取得添加值的位置
int position = adapter.getPosition(newCountry);
//将Spinner添加在选择值的位置
mySpinner.setSelection(position);
myEditText.setText("");
}
}
});
        //将myButtonRemove添加OnClickListener
        myButtonRemove.setOnClickListener(new OnClickListener()
{

@Override
public void onClick(View arg0)
{
if(mySpinner.getSelectedItem() != null)
{
//删除mySpinner的值
adapter.remove(mySpinner.getSelectedItem().toString());
//将myEditText清空
myEditText.setText("");
if(adapter.getCount() == 0 )
{
//将myEditText清空
myEditText.setText("");
}
}
}
});
       
        //将mySpinner添加OnItemSelectedListener
        mySpinner.setOnItemSelectedListener(new OnItemSelectedListener()
{

@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3)
{
//将mySpinner所选的值带入myTextView中。
myTextView.setText(arg0.getSelectedItem().toString());

}

@Override
public void onNothingSelected(AdapterView<?> arg0)
{
// TODO Auto-generated method stub

}
       
});
       
    }
}

 

 

:博客涉及的源码请在千寻资源库www.qxzyk.com 下载获取,谢谢支持。

ArrayAdapter和List的关系

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
使用ArrayAdapter定制 To-Do List 这个例子将扩展 To-Do List 工程,以一个 ToDoItem 对象来储存每
在开发中,我们经常需要在ListView中模拟一些数据,最快速简单的做法就是使用ArrayAdapter来做。 当
在开发中,我们经常需要在ListView中模拟一些数据,最快速简单的做法就是使用ArrayAdapter来做。 当
昨天介绍了ArrayAdapter的使用,今天介绍一下更加实用的一点,对它进行重写,满足自己的个性化设计需要
使用ArrayAdapter定制To-Do List 这个例子将扩展To-Do List工程,以一个ToDoItem对象来储存每一个项
ArrayAdapter绑定ListView : String[] names = { "fsd", "fds", "rew" }; ListView lView = new Lis
创建ArrayAdapter时候必须指定一个resource,该参数决定每个列表项的外观样式 simple_list_item_1:
ArrayAdapter是一个简单的适配器,他的作用是将一个数组中的内容放入listView中。listView的item必
1List:List元素的特点! List集合的遍历方式: while-迭代器遍历 for-迭代器遍历 foreach-迭代遍历
简单好用的Adapter---ArrayAdapter 拖延症最可怕的地方就是:就算自己这边没有拖延,但对方也会拖延
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号