lập trình thêm id vào R.id


89

Tôi đang tạo một EditTextđối tượng mà sau đó tôi cố gắng tham chiếu trong bài kiểm tra đơn vị. Cách tốt nhất để thêm mới idvào R.idđối tượng được tạo động này là gì, để sau này tôi có thể tham khảo nó findViewById()trong bài kiểm tra đơn vị?


Câu trả lời:


207

Bạn có thể đặt ID sẽ sử dụng sau này trong lớp R.id bằng cách sử dụng tệp tài nguyên xml và để Android SDK cung cấp cho chúng các giá trị duy nhất trong thời gian biên dịch.

res / values ​​/ ids.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <item name="my_edit_text_1" type="id"/>
    <item name="my_button_1" type="id"/>
    <item name="my_time_picker_1" type="id"/>

</resources>

Để sử dụng nó trong mã:

myEditTextView.setId(R.id.my_edit_text_1);

1
Tôi có thể gọi tệp là anothername.xml không?
ofir_aghai

2
Xin lỗi vì trả lời muộn, nhưng vâng, như với tất cả các tài nguyên Android, bạn có thể đặt tên .xml đó bằng cách nào bạn thích ...
Android ẩn

1

Bạn có thể sử dụng setId cho mọi chế độ xem và chỉ định bất kỳ số dương nào, dựa trên nhà phát triển google:

Đặt định danh cho chế độ xem này. Số nhận dạng không nhất thiết phải là duy nhất trong phân cấp của chế độ xem này. Số nhận dạng phải là một số dương. Liên kết

vì vậy bạn có thể sử dụng

EveryView.setId(int);
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.