GridView не предназначен для этого. Возможно, вам удастся получить Wrap , чтобы сделать то, что вы хотите, хотя из вашего примера это может быть не совсем так (по горизонтали он определенно не будет, поскольку он упорядочивает элементы в строки; по вертикали это может работать для вас или может не зависеть от того, что именно вы делаете).
Если у вас когда-нибудь будут только два столбца, вы можете просто получить строку, содержащую два столбца, и обязательно поместить элементы в нужные столбцы.
Или более сложным, но, вероятно, лучшим ответом было бы написать логику для упорядочивания элементов таким способом самостоятельно - см. CustomMultiChildLayout .
РЕДАКТИРОВАТЬ: есть также пакет, который может работать для вас. Он не может выполнять произвольные размеры, и вам нужно заранее знать размеры элементов, но вы можете указать элементы, чтобы они занимали несколько строк или столбцов сетки. Смотрите здесь .
Обратите внимание, что если у вас много элементов, вы, вероятно, захотите что-то сделать с CustomScrollView , но на самом деле это не входит в рамки этого ответа.