如何通过code。打开文件管理内置 [英] How to open inbuilt filemanager through code
本文介绍了如何通过code。打开文件管理内置的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在我的手机一个内置的文件管理器。我怎么能叫通过code在我的应用程序。
I have an inbuilt filemanager in my phone. How can I call that through code in my app.
推荐答案
我写我自己的文件管理器,如下图所示。可能对你有用的所有
I wrote my own file manager as shown below. May be useful to you all.
试试这个,纠正我,如果我错了
Try this and correct me if I am wrong
public class FileManager extends Activity {
private String[] basePath = {Environment.getExternalStorageDirectory() + "", "/mnt/sdcard2"};
private ListView listView;
private ArrayList<String> pathList;
ArrayAdapter<String> adapter;
private ArrayList<String> fileList;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_file_manager);
listView = (ListView)findViewById(R.id.listView);
fileList = new ArrayList<String>();
pathList = new ArrayList<String>();
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, fileList);
loadBasedata();
listView.setAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// Path is hardcoded
if(pathList.size() == 0)
pathList.add(basePath[0]);
else
pathList.add(pathList.get(pathList.size() - 1) + "/" + fileList.get(position));
fileList.clear();
// Add new files to list
addFilesToList(pathList.get(pathList.size() - 1));
adapter.notifyDataSetChanged();
}
});
}
private void loadBasedata() {
fileList.clear();
fileList.add("Internal sdcard");
File file = new File(basePath[1]);
if(file.exists())
{
fileList.add("External sdcard");
}
adapter.notifyDataSetChanged();
}
@Override
public void onBackPressed() {
if(pathList.isEmpty())
finish();
else if(pathList.size() == 1)
{
pathList.clear();
loadBasedata();
}
else
{
fileList.clear();
pathList.remove(pathList.size() - 1);
addFilesToList(pathList.get(pathList.size() - 1));
adapter.notifyDataSetChanged();
}
}
private void addFilesToList(String path) {
File parentDir = new File(path);
if(parentDir.isDirectory())
{
File[] files = parentDir.listFiles();
//this.adapter.add("Go Back");
for(int i = 0; i < files.length; i++)
{
String filename=files[i].getName();
fileList.add(filename);
}
}
}
}
这篇关于如何通过code。打开文件管理内置的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文