dip stands for density independent pixel, this means 2 screens with the same size but different density will treat that value the same, however 2 screens of different size (large vs normal) will treat the value differently.
your 5 inch phone may be reported as large and your 3.5 inch phone as normal causing the issue but I'm not sure.
also in your realative layout I'd recommend using match_parent for the height, you usually will not use set widths for viewGroups.