안 드 로 이 드 는 핸드폰 안의 모든 그림 에 대한 상세 한 설명 과 인 스 턴 스 를 가 져 옵 니 다.
구현 코드:
public class MainActivity extends Activity {
//
private Button look;
private Button add;
// list
ListView show_list;
ArrayList names = null;
ArrayList descs= null;
ArrayList fileNames = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
look = (Button) findViewById(R.id.look);
add = (Button) findViewById(R.id.add);
show_list = (ListView) findViewById(R.id.show_list);
look.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
names = new ArrayList();
descs = new ArrayList();
fileNames = new ArrayList();
Cursor cursor = getContentResolver().query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, null, null, null, null);
while (cursor.moveToNext()) {
//
String name = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DISPLAY_NAME));
//
byte[] data = cursor.getBlob(cursor.getColumnIndex(MediaStore.Images.Media.DATA));
//
String desc = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DESCRIPTION));
names.add(name);
descs.add(desc);
fileNames.add(new String(data, 0, data.length - 1));
}
List<Map<String, Object>> listItems = new ArrayList<>();
for (int i = 0; i < names.size(); i++) {
Map<String, Object> map = new HashMap<>();
map.put("name", names.get(i));
map.put("desc", descs.get(i));
listItems.add(map);
}
// adapter
SimpleAdapter adapter = new SimpleAdapter(MainActivity.this, listItems,
R.layout.line, new String[]{"name", "desc"}, new int[]{R.id.name, R.id.desc});
show_list.setAdapter(adapter);
}
});
///list
show_list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
View viewDiag = getLayoutInflater().inflate(R.layout.view,null);
ImageView image = (ImageView)viewDiag.findViewById(R.id.image);
image.setImageBitmap(BitmapFactory.decodeFile((String) fileNames.get(i)));
new AlertDialog.Builder(MainActivity.this).setView(viewDiag)
.setPositiveButton(" ",null).show();
}
});
}
}
XML:
<!-- -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.