2011-10-02 3 views
0

Quel est le problème avec cette classe? les clics dans le listview ne coûtent pas enregistrés, j'ai essayé de faire un journal, mais il ne marche pas aller dans le setItemOnClickListenerListView ne répond pas aux clics

public class Chosen extends Activity{ 
SimpleCursorAdapter adapter; 
String[] getResult; 
Cursor c; 
@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.chosen); 
    Intent i=getIntent(); 
    Bundle extras=i.getExtras(); 
    final TextView t=(TextView) findViewById(R.id.tv1); 
    int num=extras.getInt("category"); 
    ArrayList al=new ArrayList<String>(); 
    switch(num) 
    { 
    case 0:c=Splash.db.getSocial(Login.uname);break; 
    case 1:c=Splash.db.getMail(Login.uname);break; 
    case 2:c=Splash.db.getBank(Login.uname);break; 
    case 3:c=Splash.db.getMisc(Login.uname);break; 
    } 
    if(c.moveToFirst()) 
    { 
     do 
     { 
      al.add(c.getString(1)); 
     }while(c.moveToNext()); 
    } 

    getResult=new String[al.size()]; 
    al.toArray(getResult); 
    ListView lv=(ListView) findViewById(R.id.list); 
    lv.setClickable(true); 
    ArrayAdapter ad=new ArrayAdapter(this,R.layout.chosenitemlist,R.id.client,getResult); 
    lv.setAdapter(ad); 

    lv.setTextFilterEnabled(true); 
    lv.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int position, 
       long id) { 
      // TODO Auto-generated method stub 
      Log.w("akash", "in list item click"); 
      t.setText("clicked"); 
      Toast.makeText(getApplicationContext(), "hello", Toast.LENGTH_LONG).show(); 
     } 
    }); 
} 

}

Répondre

3

Intéressant. D'abord, essayez sur plusieurs scénarios que j'ai vérifiés moi-même: http://xjaphx.wordpress.com/2011/07/14/listview-doesnt-respond-to-onitemclicklistener/

Si le problème encore, vous pourriez vouloir partager votre code source, je voudrais analyser si c'est un nouveau scénario. Dans le cas où vous ne pouvez pas partager la source complète, puis essayez de créer un nouveau projet et de mettre tout le code nécessaire, et partager :)

+0

merci beaucoup monsieur! J'ai oublié de mentionner que ma disposition des lignes avait aussi un bouton, j'ai mis son android: focusable à faux, et cela a fonctionné! – user962339

0

Un autre scénario que j'ai trouvé (non répertorié par xjaphx): ma disposition des lignes a eu un textview et deux images, et certains d'entre eux a eu "clickable = true". Le réglage sur "false" a résolu le problème.

Questions connexes