Android 如何根据设置文字大小动态计算TextView长度、动态设置Relativelayout布局

Android 如何根据设置文字大小动态计算TextView长度、动态设置Relativelayout布局

1、动态设置TextView的width

    如果在xml中使用TextView,并且设置了textSize属性,若想在Java代码中动态的设置TextView的长度,

而不是在xml直接写死TextView的Width属性,可以通过TextView的getPaint()获得TextPaint对象,通过这

个TextPaint对象我们就可以获取到当前TextView设置的text的size, 这时如果想控制TextView中放置的text

的字数,就可以通过重新设置TextView的width属性来实现。

例如:

int textSize = (int)pushNewsText.getPaint().getTextSize();  //获得当前textView的text size大小


2、Java代码中动态添加子view到RelativeLayout布局中:
LayoutParams childParams = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

ImageView firstView = new ImageView(context);

firstView.setId(zhangView.getId() + 1);

childParams .addRule(RelativeLayout.CENTER_VERTICAL);

childParams .addRule(RelativeLayout.LEFT_OF, targetView.getId()); //设置firstView位于targetView的左侧

childParams .rightMargin = 10;

firstView.setLayoutParams(childParams );

parentView.addView(firstView); //添加到父View中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值