博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android开发 --代码布局
阅读量:5347 次
发布时间:2019-06-15

本文共 2309 字,大约阅读时间需要 7 分钟。

Android开发 --代码布局

 

 

在线性布局LinearLayout里加入view比较简单,因为属性比较少,布局简单

示例,加入一个TextView

LinearLayout layout = (LinearLayout)findViewById(R.id.layout);TextView tv = new TextView(this);tv.setText("hello,world");LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);layout.addView(tv,lp);

在相对布局中RelativeLayout中加入view,属性较多 

示例,加入TextView和Button,让TextView居中,并且设置Button在TextView的下方

RelativeLayout layout;TextView tv = new TextView(this);tv.setText("hello,world");Button btn = new Button(this);btn.setText("button");tv.setId(0x011);btn.setId(0x012);LayoutParams tvLp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);LayoutParams btnLp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);//添加布局规则,居中于父类tvLp.addRule(RelativeLayout.CENTER_IN_PARENT,RelativeLayout.TRUE);//添加布局规则,在tv的下方btnLp.addRule(RelativeLayout.BELOW, tv.getId());layout.addView(tv,tvLp);layout.addView(btn,btnLp);

 public void addRule(int verb, int anchor) 方法就是给view设定布局规则,verb是规则属性,就是中的各种属性值,anchor是依靠的view的id或者比如上面的RelativeLayout.CENTER_IN_PARENT的时候就是设置true或false

 


 

package com.example.android_activity; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.LinearLayout; import android.widget.Toast; public class MainActivity extends Activity {
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); //动态加载布局文件 setContentView(R.layout.activity_main); //使用代码动态为当前界面添加一个Button Button button=new Button(this); button.setText("代码布局"); //设置位置 LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT); button.setLayoutParams(params);      //给按钮设置单击事件 button.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View view) {
Toast.makeText(MainActivity.this,"代码布局",Toast.LENGTH_LONG).show(); } }); //获取activity_main容器,将上面的按钮加入到该容器中 LinearLayout root=(LinearLayout) findViewById(R.id.activity_main); root.addView(button); } }

转载于:https://www.cnblogs.com/zn615/p/8144308.html

你可能感兴趣的文章
协程的优点(Python)
查看>>
Python Thrift 简单示例
查看>>
MongoDB优化
查看>>
第06篇 MEF部件的生命周期(PartCreationPolicy)
查看>>
Django 基础 web框架本质
查看>>
25 python socket网络编程
查看>>
sprint
查看>>
tensorflow的gpu版本错误
查看>>
Codefroces432 div2 A,B,C
查看>>
android开发里跳过的坑——图片文件上传失败
查看>>
Java 数据库简单操作类
查看>>
IO字节流
查看>>
这样学Linux基本命令,事半功倍
查看>>
2 Modals of necessity
查看>>
sqlite错误 Abort due to constraint violation column id is not unique id没开启自动增长
查看>>
要想使用线程 想去方法 应该传入object 传参
查看>>
[网络流24题]飞行员配对方案问题
查看>>
【练习】创建密码复杂度验证
查看>>
具有浏览器检测功能的登录页面模板
查看>>
Couchbase的bug引起的缓存服务器CPU占用高
查看>>