2014-09-24 64 views
0

当我在我的列表视图中搜索时,它总是打开Articfox,即使我搜索熊 当我在我的列表视图中搜索它始终打开Articfox即使我搜索熊 当我在我的列表视图中搜索它总是打开Articfox甚至我搜索熊 强大的文本当我搜索我的列表视图上的项目。它总是打开第一个活动

private ListView mainlistView ; 
    private ArrayAdapter<String> listAdapter ; 
    EditText inputSearch; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_animals); 


     mainlistView = (ListView) findViewById(R.id.AnimalsView); 
     inputSearch = (EditText) findViewById(R.id.inputSearch); 

     final String[] Animals = new String[] { "Articfox", "Bear", "Cat", "Dog", 
       "Elephant", "Flamingo", "Giraffe", "Huming Bird"};  
     ArrayList<String> AnimalsList = new ArrayList<String>(); 
     AnimalsList.addAll(Arrays.asList(Animals)); 

     listAdapter = new ArrayAdapter<String>(this, R.layout.simplerow, AnimalsList); 
     mainlistView.setAdapter(listAdapter); 
     inputSearch.addTextChangedListener(new TextWatcher() { 

       @Override 
       public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) { 
        // When user changed the Text 
        Animals.this.listAdapter.getFilter().filter(cs); 
       } 

       @Override 
       public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, 
         int arg3) { 
        // TODO Auto-generated method stub 

       } 

       @Override 
       public void afterTextChanged(Editable arg0) { 
        // TODO Auto-generated method stub       
       } 


     }); 


     ListView mainlistView=(ListView)findViewById(R.id.AnimalsView); 

     this.setListAdapter(new ArrayAdapter<String>(this, 
        android.R.layout.simple_list_item_1,Animals)); 

     mainlistView.setOnItemClickListener(new onItemClickListener(){ 
      @Override 
     public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) { 
      super.onItemClick(arg0, view, position, arg3); 

      if (position == 0) { 
       Intent int0 = new Intent(getApplicationContext(),Articfox.class); 
       startActivity(int0); 
      } 

      else if (position == 1) { 
       Intent int1 = new Intent(getApplicationContext(), ArticfoxInfo.class); 
       startActivity(int1); 
      } 
      else if (position == 2) { 
       Intent int2 = new Intent(getApplicationContext(), Articfox.class); 
       startActivity(int2); 
      } 

      else if (position == 3) { 
       Intent int3 = new Intent(getApplicationContext(), 
         Articfox.class); 
       startActivity(int3); 
      } 

     } 
}); 


     listAdapter.add("Iguana"); 
      listAdapter.add("Jaguar"); 
      listAdapter.add("Kangaroo"); 
      listAdapter.add("Lizard"); 
      listAdapter.add("Monkey"); 




    } 

回答

0

看来你是调用同一个活动,在每个项目的点击这种情况下Articfox.class

if (position == 0) { 
     Intent int0 = new Intent(getApplicationContext(),Articfox.class); 
     startActivity(int0); 
    } 

    else if (position == 1) { 
     Intent int1 = new Intent(getApplicationContext(), ArticfoxInfo.class); 
     startActivity(int1); 
    } 
    else if (position == 2) { 
     Intent int2 = new Intent(getApplicationContext(), Articfox.class); 
     startActivity(int2); 
    } 

    else if (position == 3) { 
     Intent int3 = new Intent(getApplicationContext(), 
       Articfox.class); 
     startActivity(int3); 
    } 
相关问题