2015-01-07 19 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(); 
      } 
     }); 

中的文件路徑,如果我的回答可以幫助不要忘記給予好評吧:d

+0

對不起,但我必須添加這部分,因爲我想通過選擇列表中的文件,用一個按鈕,我看到這個文件的路徑 – user4406204

+0

只是添加它後main 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);