android动态添加控件,怎样指定位置?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android动态添加控件,怎样指定位置?相关的知识,希望对你有一定的参考价值。
RelativeLayout insertLayout = (RelativeLayout)view1.findViewById(R.id.screen);//screen是一个RelativeLayout 布局的id
ImageView imgApple2 = new ImageView(MainActivity.this);
imgApple2.setBackgroundColor(Color.parseColor("#ffb6b4"));
insertLayout.addView(imgApple2,100,100);
我的添加代码?怎样设置ImageView 位置呢?
RelativeLayout.LayoutParams s = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT);
s.addRule(RelativeLayout.CENTER_IN_PARENT, -1);
//添加位置信息 -1表示相对于父控件的位置 ,如果要相对某个平级控件则参数是该控件的ID
s.setMargins(10, 10, 10, 10);//设置左,上,右,下,的距离
上面的定义好了之后可以用了:
imgApple2.setLayoutParams(s);
insertLayout.addView(imgApple2,100,100); 参考技术B 相对布局是不能指定具体位置,只有绝对布局才许。追问
应该可以指定相对位置吧
参考技术C insertLayout.addview(你自己view,LayoutPamss);addview 有5种重载方法 你可以自己去看看具体怎么用。 参考技术D 用LayoutParams:
RelativeLayout insertLayout = (RelativeLayout)view1.findViewById(R.id.screen);//screen是一个RelativeLayout 布局的id
ImageView imgApple2 = new ImageView(MainActivity.this);
imgApple2.setBackgroundColor(Color.parseColor("#ffb6b4"));
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(100, 100);
layoutParams.topMargin=8;
layoutParams.leftMargin=8;
layoutParams.rightMargin=8;
layoutParams.bottomMargin=8;
insertLayout.addView(imgApple2,layoutParams);本回答被提问者采纳
以上是关于android动态添加控件,怎样指定位置?的主要内容,如果未能解决你的问题,请参考以下文章