public final void setTop (int top) Sets the top position of this view relative to its parent. This method is meant to be called by the layout system and should not generally be called otherwise, because the property may be changed at any time by the layout.

api 文档上说不应该直接执行这个方法,所以setTop即使在api 11以上也是不合理的。这时应该使用setTranslationX、setTranslationY,也即setX、setY。

那么为了兼容api 11以下而采用的办法是用改变margin的方式来达到改变位置的目的,涉及到三个方法getLayoutParams、setMarigns、setLayoutParams

LayoutParams olp=(LayoutParams) box.getLayoutParams(); olp.setMargins(olp2.leftMargin, 0, olp2.rightMargin, olp2.bottomMargin); box.setLayoutParams(olp);


 

更多相关文章

  1. Rk3399 android7.1 camera 分析
  2. Android中dp和px之间进行转换
  3. Android(安卓)各种音量的获取和设置
  4. Android的Bitmap类中常用方法
  5. 关于android Http访问,上传,用了三个方法
  6. android 键盘关闭/显示
  7. Android动态改变TextView字体颜色
  8. 浅谈Java中Collections.sort对List排序的两种方法
  9. Python list sort方法的具体使用

随机推荐

  1. Android 开源项目及其学习
  2. Android(安卓)Studio | Eclipse快捷键
  3. android 笔记 --- wifi应用
  4. WebView android sdk 25加载“file:///..
  5. Android EditText 自带清除按钮 的一种解
  6. Android AlertDialog菜单三
  7. Android(安卓)动态创建Tab
  8. android 对SD卡文件的I/O操作
  9. Android 实现夜间模式
  10. Android Bitmap zoomIn/zoomOut/rotate