2016-04-10 32 views
0

我在一個項目android應用程序,我創建了一個項目列表視圖,甚至正常。 用戶可以在編輯文本中搜索項目,我只是喜歡,現在用戶可以點擊一個項目,並被重定向到另一個活動。 我可以做重定向,沒有問題。我怎麼能做一個開關,研究在表中,如果這樣的複選框item1做這等等......那麼我怎麼能做到這一點? 對不起,我的英語,我是法國人,好日子Android列表視圖可點擊重定向

下面是代碼:

public class MainActivity extends ActionBarActivity { 

String[] items; 
ArrayList<String> listItems; 
ArrayAdapter<String>adapter; 
ListView listView; 
EditText editText; 


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

    listView=(ListView)findViewById(R.id.listview); 
    editText=(EditText) findViewById(R.id.txtsearch); 
    initList(); 
    editText.addTextChangedListener(new TextWatcher() { 
     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) { 

     } 

     @Override 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 

      if (s.toString().equals("")) { 
       initList(); 
      } else { 
       searchItem(s.toString()); 
      } 

     } 

     @Override 
     public void afterTextChanged(Editable s) { 

     } 

    }); 

    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() 
    { 
     @Override 
     public void onItemClick(AdapterView<?> adapterView, 
           View view, int position, long id) { 
      switch (position){ 
       case 0: 
        listView.setBackgroundColor(17170459); 
        finish(); 
        break; 

       case 1: 
        listView.setBackgroundColor(17170453); 
         finish(); 
        break; 
      } 
     } 
    }); 
} 

public void searchItem(String textToSearch){ 

    for (String item:items){ 
     if (!item.contains(textToSearch)){ 
      listItems.remove(item); 
     } 
    } 

    adapter.notifyDataSetChanged(); 
} 


public void initList(){ 

    items= new String[]{"item2","item3","test"}; 
    listItems = new ArrayList<>(Arrays.asList(items)); 
    adapter = new ArrayAdapter<String>(this, R.layout.list_item,R.id.txtitem,listItems); 
    listView.setAdapter(adapter); 




} 

}

+0

如何做一個開關,研究表中的研究,如果這樣的複選框item1做到這一點等......這並不清楚..你說重定向是好的,這意味着項目點擊活動改變是好的....所以你想要什麼...... –

回答

1

好吧,首先對不起張貼的答案,而不是評論,但我沒有足夠的聲譽發表評論。

你想知道在你的「itemActivity」中你點擊了上一個活動的哪個項目,對嗎?

然後啓動一個新的活動感謝的意圖,並且可以精確您一個額外的點擊的項目的位置:

Intent i=new Intent(context,itemActivity.class); 
i.putExtra("quelItem", position); 
startActivity(i); 

你可以在你的ItemActivity類這樣的位置:

Intent intent = getIntent(); 
int quelItem= intent.getIntExtra("quelItem");