listview的过滤-创新互联

这个也是我自己通过网上找资料,自己写的一个Demos。

创新互联-专业网站定制、快速模板网站建设、高性价比太仓网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式太仓网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖太仓地区。费用合理售后完善,十年实体公司更值得信赖。

内容简单,直接代码献上;

public class MainActivity extends Activity {

   List people = new ArrayList() ;

   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 we = new ArrayList();

       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 people = new ArrayList();

    Adapter(List people) {

        // 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://myzitong.com/article/coeoho.html