Ohatra ny vokatry ny fitadiavana ao amin'ny Baiboly dia mampiasa ListView fa ao anatin'ny "row" anakiray dia misy views telo (a_id, a_titre, a_texte)
Mba hahafahana mandray ny zavatra ao anatin'io "row" io rehefa manao "tsindry maharitra", ohatra hoe tiana hotehirizina ilay andininy, dia tsy afaka tonga dia mampiasa position (izay manome ny position-n'ny row ao anatin'ilay ListView izay tsy mitovy akory amin'ny a_id). Dia naleoko maka ny objet avy amin'ny getItemAtPosition
Toa izao no natao ary:
@Override
protected void onCreate(Bundle savedInstanceState) {
  (...)
  lv = (ListView) findViewById(R.id.lstResult);
 
  registerForContextMenu(lv);
  (...)
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);
    AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
    int position = info.position;
    HashMap row = (HashMap)lv.getItemAtPosition(info.position);
    menu.setHeaderTitle(row.get("a_title"));
    menu.add(Menu.NONE, 1, 0, "Tehirizina");
}
@Override
public boolean onContextItemSelected(MenuItem item) {
    // Get extra info about list item that was long-pressed
    AdapterView.AdapterContextMenuInfo menuInfo = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
    // Perform action according to selected item from context menu
    HashMap row = (HashMap)lv.getItemAtPosition(menuInfo.position);
    String a_id = row.get("a_id");
    String a_title = row.get("a_title");
    String a_text = row.get("a_text");
    switch (item.getItemId()) {
        case 1: //tehirzina
            // Show message
            fdb = new FavoriteDb(this);
            if(fdb.isFavorite(a_id) == 0)
            {
                Toast.makeText(getApplicationContext(), "Voatahiry ny " + a_title, Toast.LENGTH_LONG).show();
            }
            else
            {
                Toast.makeText(getApplicationContext(), "Efa ao anaty tahiry ny " + a_title, Toast.LENGTH_LONG).show();
            }
            break;
       
    }
    return true;
}
  
Amin'izao dia manana "object" mitahiry ny votoatin'ilay "row" ka azoko alaina tsirairay ny singa ao anatiny (ohatra hoe tehirizina any amin'ny base de données)

 
Aucun commentaire:
Enregistrer un commentaire