Android Dokumentacja mówi , że nie ma dwóch rozmiarach dla widzenia zmierzonych wymiarów i wymiarów rysunkowych . Mierzony wymiar to ten obliczony w trakcie pomiaru ( metoda onMeasure ), podczas gdy wymiary rysunku to rzeczywisty rozmiar na ekranie. W szczególności dokumentacja mówi, że:
Wartości te mogą, ale nie muszą, różnić się od zmierzonej szerokości i wysokości.
Tak więc moje pytanie brzmi: co może sprawić, że wymiar rysunku będzie różny od wymiaru mierzonego? Jeśli metoda onMeasure (int, int) spełnia wymagania dotyczące układu (podane jako parametry widthMeasureSpec i heightMeasureSpec , w jaki sposób zestaw SDK może zdecydować, że widok powinien mieć inny rozmiar rysunku?
Ponadto, w jaki sposób / gdzie w kodzie źródłowym Androida zmierzona szerokość / wysokość jest używana do obliczenia szerokości / wysokości rysunku? Próbowałem zajrzeć do kodu źródłowego View , ale nie mogę dowiedzieć się, w jaki sposób zmierzona szerokość / wysokość jest używana do obliczenia ostatecznej szerokości / wysokości. Może ma to coś wspólnego z wyściółką, ale nie jestem pewien.