Ответ mbaird работает отлично. Просто имейте в виду, что в Android есть ошибка (по крайней мере, 2.1), что, если вы установите радиус каждого отдельного угла равным 0, все углы будут равны 0 (по крайней мере, в случае с единицами "dp"; попробуйте это с любыми другими единицами).
Мне нужна была форма, где верхние углы были закруглены, а нижние углы были квадратными. Я добился этого, установив углы, которые я хотел, чтобы они были квадратными, чтобы значение было немного больше 0: 0,1dp. Он по-прежнему отображается как квадратные углы, но не заставляет другие углы иметь радиус 0.