Android 애플리케이션에 두 가지 활동, EditPerson
및 EditEmployee
이 있다고 가정 해보십시오.Android보기의 ID를 여러 활동간에 안전하게 공유 할 수 있습니까?
EditPerson
활동이 EditEmployee
의 기본 클래스가되는 것처럼 보일 것입니다. 레이아웃 및 레이아웃에서 정의 된 뷰와 데이터를 마샬링하는 메서드를 정의하고 정의합니다. EditPerson
액티비티 구현은 "Name"필드를 EditText
요소로 푸시 (예 :)합니다. EditEmployee
버전은 기본 클래스 버전을 호출 한 다음 고유 한 필드 (예 : 세금 ID 등)를 마샬링합니다.
공유 코드를 사용하려면 두 활동 모두 동일한 ID를 공유하는 하나 이상의 EditText
요소 쌍을 정의하는 레이아웃 리소스가 있어야합니다. 는 "사람"입니다 "직원"때문에
<EditText android:id="@+id/name_editor" />
<EditText android:id="@+id/tax_id_editor" />
<!-- etc. -->
및 마샬링 공통 필드 (이 있습니다 :처럼 뭔가있을 것 layout\edit_employee.xml
에 다음
<EditText android:id="@+id/name_editor" />
그리고 : layout\edit_person.xml
의 예는있을 것입니다 위의 예에서 "name_editor"로 할당 된 ID는 활동 범위 (또는 레이아웃?) 내에서만 고유해야하는 것처럼 보입니다.
내 테스트에서이 방법이 효과가있는 것으로 보였지만 모호한 레이아웃 요소 ID를 사용하는 경우 의도하지 않은 부작용이 생길 것입니다. 누구나 이것이 안전한 관행임을 확인하고 결국 애플리케이션을 어떻게 날려 버릴지 지적 할 수 있습니까? 누구도 비슷한 것을 한 적이 있습니까?
경험을 공유해 주셔서 감사합니다. Android 세계에서 나는 아직 새로운 기술이기 때문에 무엇이 정상적인 접근인지 알기가 더 어려울 수 있습니다. – el2iot2