2013-01-04 17 views
9

Jeśli używam następujący wiersz w układzie XML:ustawić tło jako NULL

android:background="@null" 
  1. jest to bezpieczne?
  2. Czy jest skuteczny z punktu widzenia wydajności? Lub lepiej jest ustawić bacground układu lub komponentu z rzeczywistego kodu jako wartość null?
+0

Dlaczego chcesz ustawić 'android: background =" @ null "'? Jeśli nie chcesz zastosować tła, nie musisz dodawać tej właściwości, tak myślę. – GrIsHu

+0

Oglądałem samouczek Google I/O i usłyszałem, że interfejs będzie bardziej wydajny, jeśli usuniesz tło. –

Odpowiedz

9
  1. android:background="@null" jest całkowicie bezpieczny. Jeśli chcesz ustawić tło w oparciu o logikę w kodzie, zdecydowanie możesz z tego skorzystać; a jeśli nie ustawisz tła w kodzie, pozostanie ono takie samo i nigdy nie spowoduje żadnych problemów.

  2. Z punktu widzenia wydajności, należy załadować tło za pomocą XML zamiast programowo, ponieważ układ będzie ładowany tylko jeden raz z pliku XML. Jeśli ustawisz kod w oparciu o swoją logikę, może on zostać załadowany więcej niż jeden raz. Jednak w obu przypadkach wydajność jest prawie taka sama, a nie duża różnica. Powinieneś zdecydować, które podejście zastosować z logicznego punktu widzenia (jeśli nigdy nie zmienisz tła, skorzystaj z podejścia XML). Chodzi o to, użyj obrazu o odpowiednim rozmiarze jako tła. To naprawdę zmieni wydajność. Duże obrazy zajmą więcej czasu, aby załadować w obu podejściach.

2

Myślę, że ponieważ nie trzeba szukać tego widoku po stronie kodowej, będzie to miało wpływ na wydajność. i nie sądzę, że to nie jest bezpieczne.

1

Jeśli tło nie jest potrzebne, nie ma potrzeby podawania go w xml. Przynajmniej będzie to jeden mniej analizowania elementu XML.