转--Android如何在java代码中设置margin

http://www.2cto.com/kf/201207/140111.html

红黑联盟:

习惯了直接在xml里设置margin(距离上下左右都是10dip),如:

<ImageView android:layout_margin="10dip" android:src="@drawable/image" />

只是有些情况下,需要在java代码里来写。

API中,android.view.ViewGroup.MarginLayoutParams有个方法setMargins(left, top, right, bottom)。

可是View本身没有setMargin方法,怎么办呢?

看见API上,其直接的子类有:

FrameLayout.LayoutParams, LinearLayout.LayoutParams and RelativeLayout.LayoutParams。

我们我们可以这样写:

ImageView imageView = = new ImageView(getContext());

LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, 1);  // , 1是可选写的

lp.setMargins(10, 20, 30, 40);

imageView.setLayoutParams(lp);

时间: 2024-10-31 11:58:22

转--Android如何在java代码中设置margin的相关文章

Android如何在java代码中设置margin

习惯了直接在xml里设置margin(距离上下左右都是10dip),如: <ImageView android:layout_margin="10dip" android:src="@drawable/image" /> 只是有些情况下,需要在java代码里来写. API中,android.view.ViewGroup.MarginLayoutParams有个方法setMargins(left, top, right, bottom).可是View本身没

Android 如何在Java代码中手动设置控件的marginleft

1.定义LayoutParams LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);//定义一个LayoutParams 2.在LayoutParams中设置marginLeft layoutParams.setMargins(20,0,0,0);//4个参数

在java代码中设置margin

我们平常可以直接在xml里设置margin,如: <ImageView android:layout_margin="5dip" android:src="@drawable/image" /> 但是有些情况下,需要在java代码里来写,可是View本身没有setMargin方法,怎么办呢? 通过查阅android api,我们发现android.view.ViewGroup.MarginLayoutParams有个方法setMargins(left,

【安卓】在java代码中设置drawableLeft时如何给定合适尺寸?

textView.setCompoundDrawables(drawable, null, null, null);时看不到图片,是因为需要手动给定drawable对应的尺寸,即用drawable.setBounds. 如果该drawable为图片,可直接drawable.setBounds(0,0,drawable.getIntrinsicWidth(),drawable.getIntrinsicHeight());. 即直接给定图片自身尺寸,此时效果和在xml中给定一样. [安卓]在java

如何在java代码中调用一个web项目jsp或者servlet

有时候需要调用一个web项目的jsp或者servlet,但是执行内部的代码,并不是打开jsp,例如需要在一段java代码中清除一个web项目中的缓存,那么可以把清除缓存的代码放在该web项目的一个servlet中,只需要执行如下代码: URL url = new URL("http://192.168.2.123:8080/sace/ClearCache"); url.openStream(); openStream() 执行一次相当于一次URL请求,其中url.openStream(

在java代码中设置TextView的字体大小,单位设为sp

要实现的效果如标题. 在dimen.xml文件中设置了<dimen name="text_size">18sp</dimen> 开始的时候,通过sizeTv.setTextSize(getResource().getDimension(R.dimen.text_size))进行设置. 此时使用as的同学会发现,as提示的getDimension返回的值即为18sp.看着挺正常的. 但是跑出来的实际效果,会比在布局文件中直接设置18sp的字体来的大!! 暂时没去弄

android如何在代码中设置margin

1.首先要看下你要设置的这个组件的父容器是什么.比如我的是FrameLayout里面包含的一个组件.假如叫bottomLayout那么就是: FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lp.setMargins(0,100,0,0); bottomLayout.setLay

java代码中获取进程process id(转)

另一方面,线程ID=进程ID+内部线程对象ID并不成立,    参考: blog.csdn.net/heyetina/article/details/6633901     如何在java代码中获取进程process id, 实现方法如下所示:    参考: rednaxelafx.iteye.com/blog/716918 http://www.cnblogs.com/mumuxinfei/p/3678854.html

android 在代码中设置布局居中layout_gravity,layout_margin的方法

在代码中设置布局居中,翻看api可以知道view中有setGravity,setPadding,但是没有直接的setLayoutGravity,setMargin等方法.下面将在代码中实现类似布局中layout_gravity,layout_margin的方法. 可以通过设置view里面的 LayoutParams 设置,而这个LayoutParams是根据该view在不同的GroupView而不同的. 1.代码中设置layout_gravity LinearLayout layoutTop=(