0
我正在寫一個應用程序,該程序允許用戶輸入URL,然後選擇放置下載文件的位置。但是我陷入了第二步。 我想要做的就是顯示這樣的位置: 顯示SD卡路徑以選擇用於存儲下載文件
並返回到位置的路徑。 任何人都有解決方案?提前致謝! PS:顯示外部存儲器。
我正在寫一個應用程序,該程序允許用戶輸入URL,然後選擇放置下載文件的位置。但是我陷入了第二步。 我想要做的就是顯示這樣的位置: 顯示SD卡路徑以選擇用於存儲下載文件
並返回到位置的路徑。 任何人都有解決方案?提前致謝! PS:顯示外部存儲器。
這是我該怎麼辦,和它的作品對我來說:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tree_view);
File dir = new File("/sdcard");
ArrayList<String> folders = new ArrayList<String>();
final File[] fileList = dir.listFiles();
if (fileList == null){
Toast msg = Toast.makeText(this, "No files", 3000);
msg.show();
}else{
for (File f:fileList){
if (f.isDirectory()){
folders.add(f.getName());
}
}
final ListView lvFolder = (ListView)findViewById(R.id.lvTree);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_selectable_list_item, folders);
lvFolder.setAdapter(adapter);
lvFolder.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View v,
int position, long id) {
// TODO Auto-generated method stub
Object o = lvFolder.getItemAtPosition(position);
String fullObject = (String)o;
Toast.makeText(getApplicationContext(), "You have chosen: " + " " + fullObject.toString(), Toast.LENGTH_LONG).show();
}
});
}
}
創建活動
public class ... extend activity
{
string path = "/";
public void onResume()
{
...
setContentView(..);
if (getIntent().hasExtra("path"))
{
path = getIntent().getStringExtra("path");
}
listview = findviewbyid(R.id.listview);
listview.setAdapter(new adapter(path));
listview.setOnItemClickListener(this);
}
public void onActivityResult(result)
{
if (resultOK) ...
}
public void onclicklisteneer(view,pos,id)
{
if (dir)
{
Intent intent = new Intent(this, this.class);
intent.put("path",path+" "+view.getAdapter().getItem(pos))
intent.setFlag(FLAG_NEW_TASK)
startActivityForResult(intent)
}
else if (file)
{
setResult(Result_OK);
finish();
}
}
}