안드로이드는 res/drawable 디렉토리의 사진마다 ID를 할당합니다. 어디있어? 동적으로 하나의 그림 양식을 선택하여 보여주고 싶습니다. 어떻게해야합니까?리소스의 ID는 어디에 있습니까?
답변
res/drawable 폴더에 저장됩니다. 파일 이름이 demo.png되는 경우 생성, 프로그램, 임의의 당김에 액세스하려면 정수의 ArrayList에있는 모든 리소스 식별자를 저장하고 싶은 경우에, 그들은 R.drawable.demo
에 액세스 할 수 있습니다
Random()을 사용하는 무작위 함수, arraylist에서 특정 항목 가져 오기 그러면 매번 임의의 드로어 블을 가질 수 있습니다.
자동 생성 ID는 gen 파일에 있지만 사용하는 것은 바람직하지 않습니다. 미리 정의 된 R.drawable.filename의 배열을 통해 직접 파일 이름을 사용하고 무작위로 선택하는 것이 좋습니다.
ID는 R.java 파일에 저장되지만 매번 변경 사항이 덮어 쓰여 지므로 편집 할 수 없습니다.
리소스 이름에 액세스 할 수도 있습니다. 리소스 이름을 알고 있거나 사전 정의 된 명명 체계에 따라 리소스를 파생시킬 수있는 경우 문제를 해결할 수있는 가능한 방법 일 수 있습니다. (예를 들어 이미지는 순서 image1
, image2
등으로 이름이 지정됩니다.
당신은 Resources
클래스의 getIdentifier() 방법을 사용하여 식별자 이름을 매핑해야합니다.
String name = "resource" + rng.nextInt(count);
int resource = getResources().getIdentifier(name, "drawable", "com.package");
이 방법에 대한 설명서 말한다 :
참고 :.이 기능의 사용이 이 권장되지는 훨씬 더 효율적인 식별자함으로써 자원을 검색하는 것입니다이름보다.
성능에 민감하지 않은 코드에서이 작업을 수행하는 것은 사실이지만 문제가되지는 않습니다.
또는 리소스를 XML로 나열하는 데 신경 쓰지 않는다면 임의로 선택할 수있는 a typed array을 만들 수 있습니다.
- 1. ID는 어디에 저장되어 있습니까?
- 2. 주문 ID는 어디에 할당됩니까?
- 3. iTunes Connect : 공급 업체 ID는 어디에 있습니까?
- 4. MSTAPI 요청 ID는 어디에 초기화됩니까?
- 5. GCM의 앱 ID는 어디에 넣어야합니까?
- 6. WPF for window/usercontrol 리소스의 코드는 어디에 있습니까?
- 7. Android 게임 인증 - 앱 ID는 어디에 있나요?
- 8. ID는
- 9. 2D Array와는 어디에 있습니까?
- 10. Play 2.0의 session.id는 어디에 있습니까?
- 11. 모든 컨트롤의 ID는 html로되어 있습니까?
- 12. TimeZoneInfo Id는 컴퓨터에 종속되어 있습니까?
- 13. 사용자 이름과 사용자 ID는 어디에 저장합니까? 세션 또는 쿠키?
- 14. JSON은 어디에 있습니까? 어디에 넣을 수 있습니까?
- 15. 독특한 INT ID는
- 16. 데이터 소스와 DataSourceID 사이의 링크는 어디에 있습니까?
- 17. 리소스의 현지화
- 18. 반환 ID는
- 19. tastypie가있는 리소스의 색인을 허용하지 않을 수 있습니까?
- 20. Spring은 리소스의 이름으로 변수를 사용할 수 있습니까?
- 21. 변경 ID는
- 22. Android MediaPlayer 오디오 세션 ID는 무엇을 참조합니까?
- 23. 세션 ID는
- 24. 업데이트 ID는
- 25. 호출 ID는,
- 26. 전달 ID는
- 27. 삽입 ID는
- 28. 광고 ID는
- 29. 패킷 ID는
- 30. ID는 다시
레이아웃 XML의 모든 사진을 나열하면 모든 사진이 표시됩니다. – Gabriel
글쎄, 그래. 그것이 요점입니다. 문제가 있습니까? –
GridView를 통해 하나의 그림을 선택한 다음 활동 2에서 선택한 그림을 표시합니다. 내 아이디어는 선택한 그림의 색인을 포함하는 의도를 사용하고 색인을 사용하여 표시 할 그림을 결정합니다 활동 2.이 방법으로 작동 할 수 있습니까? 레이아웃 XML의 모든 사진을 나열하면 프로그램이 실행될 때 모든 사진이 표시됩니다. 그러나 나는 갤러리에서 내가 선택한 것을보고 싶다. – Gabriel