2017-04-25 2 views
-1

Hier ist der Code, den ich die Liste der MP3-Dateien aus Gerätespeicher anzeigen möchte und wenn jeder von ihnen angeklickt wird sein Name getoastet und in naher Zukunft spielen diese Musik. Ich kann die Dateinamen in dem spezifischen Ordner sehen, aber wenn ich auf sie klicke, wird kein Toast angezeigt. Was ist das wahre Problem ?! Tnx im Voraus.Liste der Songs in Listview android Studio anzeigen

listView = (ListView)findViewById(R.id.lv1); 
    List<String> list = new ArrayList<String); 
    String path = Environment.getExternalStorageDirectory().getPath(); 
    path += "/Music"; 
    File file = new File(path); 
    File [] inn = file.listFiles(); 


    for(int i=0;i<inn.length;i++) 
    { 
     try { 
      list.add(inn[i].getName().toString()); 
     } 
     catch (Exception e) 
     { 
      e.printStackTrace(); 
     } 
    } 

    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<Stringthis,android.R.layout.simple_list_item_1,list); 
    listView.setAdapter(arrayAdapter); 



} 
    @Override 
public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

    String name = parent.getItemAtPosition(position).toString(); 
    Toast.makeText(getApplicationContext(),name,Toast.LENGTH_LONG).show(); 

} 

Antwort

1

Sie müssen einen Klick-Listener für Ihre Listenansicht festlegen. Sie können das mit der OnCreate-Methode tun. Ähnlich wie:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.your_activity_name); 
    listView = (ListView)findViewById(R.id.lv1); 

    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      //Debug to make sure that you are getting the name in the variable 
      String name = parent.getItemAtPosition(position).toString(); 
      Toast.makeText(getApplicationContext(),name,Toast.LENGTH_LONG).show(); 
     } 
    } 
} 
+0

tnx viel. es funktionierte :) . –

Verwandte Themen