android 如何动态设置margin,Android 动态设置margin
android的view中有setPadding,但是没有直接的setMargin方法。如果要在代码中设置该怎么做呢?
可以通过设置view里面的LayoutParams
设置,而这个LayoutParams是根据该view在不同的GroupView而不同的。
布局文件如下:
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
android:id="@+id/ceshi_ly"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/darker_gray" >
android:id="@+id/ceshi_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/holo_green_dark"
android:text="测试动态设置margin" />
代码如下:
package com.android.testdemo;
import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView ceshiTv = (TextView) findViewById(R.id.ceshi_tv);
LinearLayout.LayoutParams lp = (LayoutParams) ceshiTv.getLayoutParams();
lp.setMargins(30, 50, 22, 10);
ceshiTv.setLayoutParams(lp);
}
}效果如下:
当然也可以把其封装成方法,如下:
public static void setMargins (View v, int l, int t, int r, int b) {
if (v.getLayoutParams() instanceof ViewGroup.MarginLayoutParams) {
ViewGroup.MarginLayoutParams p = (ViewGroup.MarginLayoutParams) v.getLayoutParams();
p.setMargins(l, t, r, b);
v.requestLayout();
}
}
原文:http://blog.csdn.net/u014649598/article/details/45580461
android 如何动态设置margin,Android 动态设置margin相关推荐
- android 动态设置margin,android 代码中设置margin
场景:Android怎么在java代码中设置margin Android如何在java代码中设置margin 原创帖,转发请注明出处:http://thierry-xing.iteye.com/blo ...
- Android 动态创建控件并设置控件的大小之Android屏幕适配攻略(五)
Android 屏幕适配攻略(五)动态创建控件并设置控件的大小 题记 -- 执剑天涯,从你的点滴积累开始,所及之处,必精益求精,即是折腾每一天. 重要消息 flutter中网络请求dio使用分析 视频 ...
- android 动态改变语言,android动态设置app当前运行语言的方法
android开发中有时候碰到切换语言的需求,这时候需要通过代码动态改变当前运行语言. package com.example.androidtest; import java.util.Locale ...
- android系统设置动态壁纸,安卓教程:设置GIF动图为手机壁纸
不禁是一把泪,连设置GIF动态图为壁纸都可以做成教程了,小编你是有多缺文章素材啊?嗯,即便如此,在Android平台上,可是有很多同学为图动不动的问题而苦恼.所以,这篇教程就出来了. 前言:实现GIF ...
- android4.1动态壁纸,Android 4.1 设置默认开机动态壁纸
需要修改的文件为: 找到SourceCode/framework/base/core/res/res/values/config.xml中的: @null 包名/动态壁纸服务名 比如将默认壁纸更改为& ...
- Android RadioGroup动态加入RadioButton,动态设置选中和未选中的颜色及设置默认选中
此篇文章主要实现功能:RadioGroup控件根据服务端返回的数据动态添加RadioButton 关于RadioButton动态设置背景颜色和字体颜色,踩过好多坑,接下来我总结一下遇到的所有问题及解决 ...
- Android TextView 是否有省略号,动态获取和设置行数
目录 前言 一.TextView设置最大行与省略号 二.检查文本是否省略 三.实战 前言 最近在做一个效果,就是当文本显示超出2行时,文本末尾出现...(省略号),并且显示一个[展开]的按钮.点击时[ ...
- android动态设置src,Android 代码里设置ImageView的src和background
设置ImageView的src: image.setImageDrawable(getResources().getDrawable(R.drawable.blackk)); String path= ...
- android 动态改变文字,android – 如何动态设置文本到TextView?
我想在活动开始时显示连接的ssid和ip地址.它包含一个图像视图(用于标题,因为我没有使用操作栏)和4个文本视图(ssid标签,ssid值,ipaddr标签和ipaddr值) 我已经测试了获取ssid ...
最新文章
- 通信 / HTTP Host 请求头的作用
- verilog学习记(verilog翻译成c)
- MapReduce之Job工具类开发
- JanusGraph详解
- spfa算法(c++)
- App测试流程及测试点
- 机器学习算法(三十):强化学习(Reinforcement Learning)
- mysql拼接单引号_sql语句的拼接单引号和双引号的问题
- 阿里高P谈技术人如何高速成长?
- VBA 程序加密破解
- 使用 SASS 混合器 和@media 适应分辨率变化
- 通常在计算机中连接硬盘驱动器的接口为,解决方案:如何在Win10系统中向计算机添加硬盘驱动器...
- 微信浏览器内打开App Store链接,并跳转到App指定安装页面
- 浏览器的三个精度Bug
- 基于opencv实现人脸检测
- RK3399 Android7.1修改安兔兔等第三方软件读到的内核版本信息
- centos中nginx使用
- 户外便携式储能电源测试标准与方法
- 某人写了n封信,同时写了n个信封,然后将信任意装入信封,试编程求出每封信都装错的情况有多少种?
- 年产40万吨甲醇制乙烯MTO工艺设计
热门文章
- .net 4.5部署到docker容器
- Quartz.Net分布式任务管理平台
- IIS中的 Asp.Net Core 和 dotnet watch
- 推荐一份基于Docker的DevOps实战培训教程
- 老司机实战Windows Server Docker:3 单节点Windows Docker服务器简单运维(上)
- Redis集群~StackExchange.redis连接Twemproxy代理服务器
- 企业数字化转型的加速引擎 — 2019年中国数字中台行业研究报告
- SQL Server 编写自动增长的字符串型主键
- 子窗体菜单合并到父窗体菜单的解决办法
- C和指针之字符操作(<ctype.h>)