프로그래밍 방식으로 버튼에 추가 정보를 첨부하려면 어떻게해야합니까? 텍스트를 변경하려면 mButton.setText ("new text")를 사용할 수 있지만 버튼을 클릭하면 해당 추가 필드를 잡고 데이터를 사용할 수 있도록 몇 개의 필드를 추가 할 수 있기를 원합니다. 내가 어떻게 할 수 있니?버튼을 사용하여 추가 정보 저장
1
A
답변
7
사용 View.setTag (INT 키, 개체 태그)를 필요로하는 필드와 메소드를 추가 할 수 있습니다.
getTag (int key)를 사용하여 나중에 검색 할 수 있습니다. 당신의 XML로
:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item type="id"
name="string_key" />
<item type="id"
name="boolean_key" />
</resources>
코드에서 :
//I'd like to store String s and Boolean b in the button.
button.setTag(R.id.string_key, s);
button.setTag(R.id.boolean_key, b);
//Now, I'd like to retrieve the data in new fields.
String new_s = (String) button.getTag(R.id.string_key);
Boolean new_b = (Boolean) button.getTag(R.id.boolean_key);
1
당신은 항상 버튼 클래스를 확장하고
+0
제발하지 마세요. 또는 적어도 내가 코드를 상속받지 못하게하고 유지 관리해야합니다. –
0
당신은 태그 속성을 사용할 수 있습니다. 문자열을 지정하십시오 [두 개 이상의 값에 파이프 문자 (|)를 사용하고 나중에 나눠] 또는 객체를 지정할 수 있습니다.
관련 문제
- 1. cv :: Mat 요소와 함께 추가 정보 저장
- 2. ASP.NET : 사용자 정보 저장
- 3. 필요한 OpenID 정보 저장
- 4. 루비를 사용하여 추가 조작을위한 cvs 데이터 저장
- 5. 데이터베이스에 OpenID 정보 저장
- 6. aspNetMembershipProvider를 사용하여 세션에 사용자 정보 저장
- 7. web.config를 사용하여 정보 저장 및 매핑
- 8. 계정없이 사용자 정보 저장
- 9. IO 시스템에 정보 저장
- 10. django의 contenttypes를 사용하여 추가 테이블 정보 모델링
- 11. UITabBarController의 추가 화면에 정보 버튼 추가
- 12. JMenuItem에 추가 된 추가 정보
- 13. 신용 카드 정보 저장
- 14. RAM에 정보 저장
- 15. 쿠키에 로그인 정보 저장
- 16. 정보 저장 PHP/mysql
- 17. UIToolbar에 정보 버튼을 추가하는 방법
- 18. 익명 사용자의 등록 정보 저장
- 19. 추가 정보 nipype을 사용하여 추가 이미지 오류에 FLIRT 등록을 적용하십시오.
- 20. CakePHP의 "sub"모델에 정보 저장
- 21. 로그인 한 사용자 정보 저장
- 22. 오라클 데이터베이스에 로깅 정보 저장
- 23. Eclipse : .project 파일에 정보 저장
- 24. ListView 내의 추가 정보
- 25. DataGrid에없는 DataNavigateUrlFormatString에 정보 추가
- 26. C55 : 추가 정보?
- 27. JNDI의 추가 정보 정의
- 28. Facebook API가있는 추가 정보?
- 29. SQLite에 정보 추가
- 30. SWFScan에 대한 추가 정보
내가 그걸 시도하면 IllegalArgumentStatement가 나온다. "키는 응용 프로그램 특정 리소스 ID 여야합니다." – Roger
내 실수! 이 ID는 고유한지 확인하기 위해 xml에서 선언해야합니다. 자세한 내용은 http://developer.android.com/guide/topics/resources/more-resources.html#Id "를 참조하십시오. – Cephron
또한 하나의 필드 만 저장해야하는 경우 setTag (Object 태그) 및 getTag() -하지만 여러 필드를 저장하려는 것 같습니다. ID가 필요한 이유입니다. – Cephron