def frame=(value)
      selected.each do |view|
        RubyMotionQuery::Rect.update_view_frame(view, value)
      end
    end
def frame=(value)
      selected.each do |view|
        RubyMotionQuery::Rect.update_view_frame(view, value)
      end
    end
Same as layout:
   rmq(my_view).layout(l: 10, t: 20, w: 100, h: 150)

 Always applied in this order, regardless of the hash order:
   grid
   l, t, w, h
   prev, next
   from_right, from_bottom
   right, bottom
   left and right applied together (will change width)
   top and bottom applied together (will change height)
   centered
   padding

 @example
 rmq(my_view).frame = :full
 rmq(my_view).frame = {l: 10, t: 20, w: 100, h: 150}
 rmq(my_view).frame = {t: 20, h: 150, l: 10, w: 100}
 rmq(my_view).frame = {l: 10, t: 20}
 rmq(my_view).frame = {h: 20}
 rmq(my_view).frame = {l: :prev, t: 20, w: 100, h: 150}
 rmq(my_view).frame = {l: 10, below_prev: 10, w: prev, h: 150}
 rmq(my_view).frame = {left: 10, top: 20, width: 100, height: 150}
 rmq(my_view).frame = {l: 10, t: 10, fr: 10, fb: 10}
 rmq(my_view).frame = {width: 50, height: 20, centered: :both}
 rmq(my_view).frame = "a1:b5"
 rmq(my_view, my_other_view).frame = {grid: "b2", w: 100, h: 200}
 rmq(my_view, my_other_view).frame = {g: "b2", w: 100, h: 200}

 @example with padding
 rmq(my_view).frame = {grid: "b2:d14", padding: 5}
 rmq(my_view).frame = {grid: "b2:d14", padding: {l: 5, t: 0, r: 5, b:0}}