2013-06-22 13 views
5

Używam funkcji przeciągnij i upuść, aby dodać liniowy układ w mojej aktywności. kiedy sprawdzam plik activity_main.xml, tam jest utworzony komponent, ale nie "android: id" Nie mogę ręcznie dodać id, ponieważ nie ma identyfikatora dla tego układu w R.java. jak to rozwiązać?Ustawienie android: id dla komponentu układu liniowego

Odpowiedz

6

Jeśli dodasz android: id = "@ + id/YOUR_ID" do swojego XML, twoje IDE (zakładam, że zaćmienie) przekompiluje R.java, i powinieneś być w stanie użyć R.id.YOUR_ID w twoja aktywność.

+0

oh mann. Nie zdawałem sobie z tego sprawy. dzięki –

1

Nie trzeba używać R.id do ustawiania identyfikatora programowo. Można użyć dowolną liczbę dodatnią dla ID:

myNewLayout.setId(newLayoutIndex); 

Według View dokumentacji

Identyfikator nie musi być unikalna w hierarchii w tym widoku. Identyfikator powinien być liczbą dodatnią.

+0

Zgadzam się, ale jeśli zdefiniujesz widok w xml (wspomina on activity_main.xml), lepiej go tam ustawić. Warto również zauważyć, że programowanie identyfikatora programowo ma potencjał tworzenia duplikatów, więc naprawdę musi to przemyśleć, zanim to zrobi. – Flynn81

+0

Jeśli chcesz użyć tylko jednego widoku - agrred. Ale co, jeśli programowo trzeba tworzyć i pracować z wieloma widokami? – Dimmerg

Powiązane problemy