listview的过滤-创新互联
这个也是我自己通过网上找资料,自己写的一个Demos。
创新互联-专业网站定制、快速模板网站建设、高性价比太仓网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式太仓网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖太仓地区。费用合理售后完善,十年实体公司更值得信赖。内容简单,直接代码献上;
public class MainActivity extends Activity {
List
EditText editinput;
ListView listview;
Adapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editinput = (EditText)findViewById(R.id.edit);
listview = (ListView)findViewById(R.id.ydlist);
initdata();
adapter = new Adapter( people);
listview.setAdapter(adapter);
editinput.addTextChangedListener(new watcher());
}
void initdata(){
people.add(new People("张三","1374456"));
people.add(new People("张三小子", "12444455"));
people.add(new People("李一", "1345555"));
people.add(new People("王一", "1355555"));
people.add(new People("王二", "1365555"));
people.add(new People("李三", "13565555"));
people.add(new People("李一", "123555"));
}
class watcher implements TextWatcher{
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
String aa = s.toString();
Pattern p = Pattern.compile(aa);
List
for(int i=0;i People pp = people.get(i); Matcher matcher = p.matcher(pp.getName()+pp.getPhome()); if(matcher.find()){ we.add(pp); } } adapter = new Adapter( we); listview.setAdapter(adapter); } @Override public void afterTextChanged(Editable s) { // TODO Auto-generated method stub } } public class Adapter extends BaseAdapter { private List Adapter(List // TODO Auto-generated constructor stub this.people = people; } @Override public int getCount() { // TODO Auto-generated method stub return people.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return people.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub People p = people.get(position); if(convertView==null){ convertView = getLayoutInflater().inflate(R.layout.yd_item, null); } TextView tv1 = (TextView) convertView.findViewById(R.id.ydtext1); TextView tv2 = (TextView) convertView.findViewById(R.id.ydtext2); tv1.setText(p.getName()); tv2.setText(p.getPhome()); return convertView; } } public class People { private String Name ; private String Phome; public String getName() { return Name; } public void setName(String name) { Name = name; } public String getPhome() { return Phome; } public void setPhome(String phome) { Phome = phome; } public People(String name,String phone){ super(); this.Name = name; this.Phome = phone; } } } xml的代码: xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > android:id="@+id/edit" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="82dp" android:ems="10" > android:id="@+id/ydlist" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_below="@+id/edit" > 另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页题目:listview的过滤-创新互联
网站地址:http://scyanting.com/article/coeoho.html