Исходный код Android для ProgressBar.java не имеет смысла - PullRequest
2 голосов
/ 07 декабря 2011

Я просматриваю исходный код ProgressBar.java из Android SDK. В строке 191 android.widget.ProgressBar указано:

 mMinHeight = a.getDimensionPixelSize(R.styleable.ProgressBar_minHeight, mMinHeight));

Почему он использует mMinHeight в списке параметров в то же время , как при инициализации ?? Может кто-то пролить свет на это? Полный исходный код можно найти здесь: grepcode .

Ответы [ 2 ]

4 голосов
/ 07 декабря 2011

См. В строке 171, где она вызывает initProgressBar?Этот метод инициализирует mMinHeight значением 24. Затем вызов getDimensionPixelSize использует его в качестве значения по умолчанию.

1 голос
/ 07 декабря 2011

Второй параметр - это просто значение по умолчанию, которое должно быть возвращено, если getDimensionPixelSize не может найти запрошенное значение.Обычно (если это немного странно) передается переменная, которую вы пытаетесь установить в качестве значения по умолчанию.Фактически этот код говорит: «установите это значение, если оно у вас есть, или просто оставьте переменную такой, какая она есть, если у вас ее нет».

...