ng-show/ng-if doesn't update dom height immediately
I don't know Ionic well enough to say why it updates so slow, but you should be able to solve it either by activating native scrolling with the overflow-scroll
attribute:
<ion-content ng-controller="controller" overflow-scroll="true">
Or by injecting $ionicScrollDelegate
in your controller and calling resize
manually:
$scope.toggle = function() {
$scope.test.show_detail = !$scope.test.show_detail;
$ionicScrollDelegate.resize();
};