2015-01-07 4 views
-1

У меня есть список wav-файлов в папке во внешнем хранилище. Отобразить этот список с ListView, это мой код:Android: путь к определенному файлу из списка

public class MainActivity extends Activity { 

    final StringBuffer stringbuff = new StringBuffer(); 

    private ListView mainListView ; 
    private ArrayAdapter<String> listAdapter ; 

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

     mainListView = (ListView) findViewById(R.id.mainListView); 
     ArrayList<String> List = new ArrayList<String>(); 

     File storage = Environment.getExternalStorageDirectory(); 

     File file = new File(storage,"/folder/"); 

     if (file.exists() && file.isDirectory()) { 
      for (String s : file.list()) { 
       stringbuffer.append(s + " "); 
       List.addAll(Arrays.asList(s)); 
      } 
     } 

     listAdapter = new ArrayAdapter<String>(this, R.layout.simplerow, R.id.rowTextView,List); 
     mainListView.setAdapter(listAdapter); 

    } 

Я хочу, что нажатие кнопки путь выбранного файла. Как мне это сделать?

+0

Рассмотрите возможность использования пользовательских ArrayAdapter –

ответ

0

этот код покажет путь, файлы с тостами

mainListView.setOnItemClickListener(new OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
        long arg3) { 
       String filepath = new File(storage + "/folder/"+ List.get(arg2)).getAbsolutePath(); 
       Toast.makeText(getApplicationContext(), filepath, Toast.LENGTH_LONG).show(); 
      } 
     }); 

если мой ответ помогает не забудьте upvote его: D

+0

Извините, но я должен добавить эту часть, потому что хочу, выбрав файл в списке, с помощью кнопки, я вижу путь к этому файлу – user4406204

+0

просто добавьте его после основного ListView.setAdapter (listAdapter); когда вы нажимаете на строку, вы увидите адрес –

0

Вам нужно добавить OnItemClickListener

AdapterView.OnItemClickListener openSelection = new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1,int arg2, long arg3) { 
      String p = (String) arg0.getItemAtPosition(arg2); 
      Toast.makeText(UploadFilePage.this, p, Toast.LENGTH_LONG).show(); 
     } 
}; 

mainListView.setOnItemClickListener(openSelection); 
Смежные вопросы