반응형
들어가며
안드로이드 ListActivity에 Download폴더 내부에 있는 파일의 리스트를 보여주는 예제 입니다.
Manifest에 파일 읽는 권한을 추가합니다.
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
구현하기
public class FileList extends ListActivity
{
private File file;
private List myList;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
myList = new ArrayList();
String rootSD = Environment.getExternalStorageDirectory().toString();
file = new File( rootSD + "/Download" ) ;
File list[] = file.listFiles();
for( int i=0; i<list.length; i++)
{
myList.add( list[i].getName() );
}
setListAdapter(new ArrayAdapter(this,
android.R.layout.simple_list_item_1, myList ));
}
protected void onListItemClick(ListView l, View v, int position, long id)
{
super.onListItemClick(l, v, position, id);
File temp_file = new File( file, myList.get( position ) );
if( !temp_file.isFile())
{
file = new File( file, myList.get( position ));
File list[] = file.listFiles();
myList.clear();
for( int i=0; i< list.length; i++)
{
myList.add( list[i].getName() );
}
Toast.makeText(getApplicationContext(), file.toString(), Toast.LENGTH_LONG).show();
setListAdapter(new ArrayAdapter(this,
android.R.layout.simple_list_item_1, myList ));
}
}
@Override
public void onBackPressed() {
String parent = file.getParent().toString();
file = new File( parent ) ;
File list[] = file.listFiles();
myList.clear();
for( int i=0; i< list.length; i++)
{
myList.add( list[i].getName() );
}
Toast.makeText(getApplicationContext(), parent, Toast.LENGTH_LONG).show();
setListAdapter(new ArrayAdapter(this,
android.R.layout.simple_list_item_1, myList ));
}
}
반응형
'Programming > Android' 카테고리의 다른 글
[Android] 안드로이드 Intent를 이용한 파일열기 (0) | 2016.04.24 |
---|---|
[Android] 파일 삭제하기 (0) | 2016.04.24 |
[Android] 안드로이드 전체 화면 사용하기 - 상태바, 액션바 숨기기, 제거하기 (Status Bar, Action Bar Hiding/Removing) (1) | 2016.04.17 |
[Android] 안드로이드 HTTP요청 사용법 (GET/POST/PUT/DELETE) (0) | 2016.03.27 |
[Android] 안드로이드 SharedPreference 사용하기 (0) | 2016.03.26 |