如图,因为业务需求,在展示时间的时候,TextView 的长度是不定的,但是距离右边距的距离是确定的,在网上也没有找到关于TextView右对齐的资料。
附上简单的解决方案
layout = new FrameLayout(this);
//注意:这里要设置为WRAP_CONTENT
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT, Gravity.CENTER_VERTICAL|Gravity.RIGHT);
TextView textView = new TextView(this);
textView.setBackgroundColor(Color.GRAY);
textView.setText("我是测试txt");
params.rightMargin = 20;
layout.addView(textView,params);
FrameLayout.LayoutParams paramss = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT, Gravity.CENTER_VERTICAL|Gravity.RIGHT);
TextView textView2 = new TextView(this);
textView2.setBackgroundColor(Color.GRAY);
textView2.setText("你好");
paramss.rightMargin =20;
paramss.topMargin = 100;
layout.addView(textView2,paramss);
与此对应的界面效果
根据以上的方式,完美解决这个问题