смотрите inflate разворачивает ваш view из xml, далее вы навешиваете, всё необходимое и возвращаете корневой view системе с уже всем вам необходимым, если вам нужно работать с дочерними view где-то дальше по ходу работы класса, то имеет смысл вынести эти view в поля класса и засеттить эти поля (как показано в примере), если в классе работать с ними вы не планируете то можно и не выносить в отдельные поля. Главное понимать разницу
v.findViewbyId(R.id.<ид_кнопки_в_хмл>) <- тут вы получите инстанс кнопки, например, который реально был создан на экране системой из вашей xml разметки
OpenButtonProfile() <- тут вы создали новый инстанс кнопки, который никуда не добавлен и вообще просто будет болтаться непонятно где-то в куче
ну и конечно return, его всегда в конец =)