LayoutParams使用示例

简介: MainActivity如下: package cc.c;import android.app.Activity;import android.

MainActivity如下:

package cc.c;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout.LayoutParams;
/**
 * Demo描述:
 * LayoutParams使用示例
 * 利用getLayoutParams()和setLayoutParams()获取和设置控件的布局
 */
public class MainActivity extends Activity {
	private Button mFirstButton;
	private Button mSecondButton;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        init();
    }
    private void init(){
    	mFirstButton=(Button) findViewById(R.id.firstButton);
    	mSecondButton=(Button) findViewById(R.id.secondButton);
    	mFirstButton.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				//1 获取到LayoutParams
				LayoutParams layoutParams= (LayoutParams) mSecondButton.getLayoutParams();
				//2 修改LayoutParams
				layoutParams.width=300;
				layoutParams.height=100;
				layoutParams.leftMargin=150;
				layoutParams.topMargin=300;
				//3 重新设置LayoutParams
				mSecondButton.setLayoutParams(layoutParams);
			}
		});
    	
    }
}

main.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
 <Button
        android:id="@+id/firstButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="firstButton" />
    
   <Button
        android:id="@+id/secondButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dip"
        android:text="secondButton" />
   

</LinearLayout>


相关文章
|
5月前
|
JavaScript 前端开发 API
URLSearchParams
【6月更文挑战第4天】
31 1
|
6月前
|
存储 Android开发
Android 高版本 packageManager.getPackageArchiveInfo 总是返回null
Android 高版本 packageManager.getPackageArchiveInfo 总是返回null
248 1
|
Android开发
Android 中Uri.parse()的作用
Android 中Uri.parse()的作用
192 0
|
机器学习/深度学习 存储 PyTorch
params.data.clone()是什么意思?params是模型的参数
在深度学习中,模型的参数通常是由多个张量组成的。这些张量存储了模型在训练过程中学到的权重和偏置等参数。 params.data 是一个张量,其中包含了模型的参数数据。clone() 是 PyTorch 中的一个方法,它用于创建一个与当前张量具有相同数据但不同内存地址的新张量。 因此,params.data.clone() 的意思是创建一个与 params.data 张量具有相同数据但不同内存地址的新张量。通常,这个方法被用来复制模型参数,以便在优化器中使用。
250 0
|
XML Android开发 数据格式
View默认的LayoutParams是何时生成的,默认值是什么。layout_width和layout_height属性在哪里生效
View默认的LayoutParams是何时生成的,默认值是什么。layout_width和layout_height属性在哪里生效
|
数据安全/隐私保护
WindowManager.LayoutParams Flag 含义
WindowManager.LayoutParams Flag 含义
240 0
|
机器学习/深度学习 数据建模 vr&ar
为什么都是ViewGroup的LayoutParams,也会报cannot be cast to android.view.ViewGroup$MarginLayoutParams?
为什么都是ViewGroup的LayoutParams,也会报cannot be cast to android.view.ViewGroup$MarginLayoutParams?
373 0
自定义参数passback_params-参数解读系列
passback_params:公用回传参数,如果请求时传递了该参数,则返回给商户时会回传该参数。支付宝只会在异步通知时将该参数原样返回。 本参数必须进行UrlEncode之后才可以发送给支付宝 1.
2216 12