Come get un articolo ListView con Android onItemClick?

Questa è una continuazione da un SO Q qui ma manca ancora qualcosa.

Non so come get un elemento che è stato mappato da un JSONObject per una visualizzazione di elenco. Il valore chiave di HashMap è:

  • Come incorporare un layout all'interno di un altro nel mio caso?
  • Connetti a un dispositivo Bluetooth specifico con un clic
  • Aggiunta di elementi a Endless Scroll RecyclerView con un recyclerview ReverseLayout
  • Come get una vista specifica cliccato da RecyclerView con onInterceptTouchEvent?
  • Android - Ottenendo in modo affidabile la posizione corrente
  • Studio Android where è file gradle.properties?
  • map.put(TAG_RES_FILE, resFile); 

    E vorrei mettere quella String nel mio onItemClick(){int passResFile = getResources().getIdentifier(TAG_RES_FILE, "raw", "com.andaero.app");}

    Pensavo di mettere il nome del tag nel metodo sotto, il sistema lo tirerebbe automaticamente da quella posizione di elemento – ovviamente no. Quindi come farlo get? Thnx.

    EDIT: Ho aggiunto un log.i () per vedere quali valori sono all'interno della posizione che viene cliccato e restituisce:

    getIdentifier (11925): {isRawRes = true, title = Circolatori consultivi, label = AC, _id = 1, resFile = advisory_circulators_sort_list, description = Fornisce orientamenti quali methods, procedure e pratiche per il rispetto dei regolamenti e dei requisiti. .id.listContainer}

    È il

    resFile = advisory_circulators_sort_list

    Questo è ciò che ho bisogno di get – come faccio?

    Questo è l'integer ascoltatore:

     public void onItemClick(AdapterView<?> parent, View view, int pos, long id) { MainActivity.mLayout.toggleSidebar(); setHasOptionsMenu(true); FragmentManager fm = getFragmentManager(); final FragmentTransaction lcFT = fm.beginTransaction(); lcFT.setCustomAnimations(R.anim.slide_in, R.anim.hyperspace_out, R.anim.hyperspace_in, R.anim.slide_out); final Bundle args = new Bundle(); Object o = lv.getItemAtPosition(pos); String resFile = (String) o.toString(); int passResFile = getResources().getIdentifier(TAG_RES_FILE, "raw", "com.andaero.app"); args.putInt("KEY_RES_FILE", passResFile); boolean isRawRes = true; args.putBoolean("KEY_IS_RAW_RES", isRawRes); Log.i("getIdentifier", resFile ); // Delayed to improve animations final Handler handler = new Handler(); handler.postDelayed(new Runnable() { public void run() { ListViewFragment lvf = new ListViewFragment(); lcFT.replace(R.id.listContainer, lvf).commit(); lvf.setArguments(args); } }, 300); } 

  • Come mantenere solo il primo frammento aggiunto nella pila posteriore (sovrapposizione frammentazione)?
  • Programmatically Fling ListView Android
  • LibGDX - L'applicazione si blocca quando chiamata TiledMapRenderer.render ()
  • Android: recupero delle preferenze condivise di un'altra applicazione
  • Creare un emulatore con una dimensione decente dalla row di command
  • Debug remoto con emulatore Android
  • 2 Solutions collect form web for “Come get un articolo ListView con Android onItemClick?”

    Così sono andato avanti e ha inviato l'elemento a un textView e impostato la visability di essere andato nel file di layout. Questo funziona bene, ma speravo per un modo migliore / più pulito di farlo.

    Modificato nel metodo onItemClick () da:

     Object o = lv.getItemAtPosition(pos); String resFile = (String) o.toString(); int passResFile = getResources().getIdentifier(TAG_RES_FILE, "raw", "com.andaero.app"); args.putInt("KEY_RES_FILE", passResFile); 

    A questa:

     String resFile = ((TextView) view.findViewById(R.id.listResFile)).getText().toString(); int passResFile = getResources().getIdentifier(resFile, "raw", "com.andaero.app"); args.putInt("KEY_RES_FILE", passResFile); 

    TAG_RES_FILE non è dichiarato in questo metodo, quindi probabilmente è una costante. per dimostrare che è corretto, provare a eseguire il debug di questo metodo e vedere se sta cambiando in base a quello che ti aspetteresti.

    infatti, in questo integer metodo non si è nemless guardare a quale elemento l'utente finale ha fatto clic, non tramite il tag di visualizzazione e non tramite la posizione dell'elemento. Non vedo neanche un uso della mappa che hai parlato.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.