Проблема здесь:
linearview = inflater.inflate(R.layout.intro, null);
Вам необходимо передать родительский макет, чтобы его можно было правильно измерить.Я понимаю, что вы не хотите, чтобы представление было присоединено к макету, но вы можете использовать родительский макет только для измерения, используя эту другую версию метода, передавая false в attachToRoot.
public View inflate (int resource, ViewGroup root, boolean attachToRoot)
Изофициальная документация по параметрам:
root : Необязательное представление, чтобы быть родителем сгенерированной иерархии (если attachToRoot имеет значение true), или просто объект, который предоставляет наборзначений LayoutParams для корня возвращаемой иерархии (если attachToRoot имеет значение false.)
attachToRoot : должна ли завышенная иерархия быть присоединена к корневому параметру?Если false, root используется только для создания правильного подкласса LayoutParams для корневого представления в XML.
Если вы сомневаетесь, вы всегда можете передать содержимое приложения в качестве родительского макета:
findViewById(android.R.id.content);