梦到自己脚踩两只船:ArrayAdapter和List的关系
来源:百度文库 编辑:偶看新闻 时间:2024/07/02 03:06:37
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 adapter; //把数据放入一个数组以便显示
private List allCountres; //
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
allCountres = new ArrayList();
for(int i = 0; i < countresStr.length; i++)
{
allCountres.add(countresStr[i]);
}
//new ArrayAdapter对象并将allCountres传入。
adapter = new ArrayAdapter(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
}
});
}
}
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
private List
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
allCountres = new ArrayList
for(int i = 0; i < countresStr.length; i++)
{
allCountres.add(countresStr[i]);
}
//new ArrayAdapter对象并将allCountres传入。
adapter = new ArrayAdapter
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
}
});
}
}
packing list 和 Invoice的中文意思是什么?
什么是硬盘的P-LIST,G-LIST?
关于LIST的问题
VB中的list.index和list.text怎么用?
什么软件可以查看G-LIST和P-LIST
LIST控件的REMOVEITEM问题
java中list的使用方法
foxpro里LIST的用法
谁有Schindlers.List和JAY的晴天的大提琴谱??
schindler's list的电影和原著有什么不同
各位高手谁知道list to me 的序列号和ID吗
DELPHI的小总是问题 List Box和Combo Box部件
quote list 和quote panel分别是什么意思?
arraylist和list有什么区别?
和同事的关系
和女友的关系
和男朋友的关系
和外婆的关系
和朋友的关系。
和父母的关系
和女朋友的关系...........
和老板的关系
和下属的关系
和姐姐的关系