由于是乙方,客户众多,写死的布局显然是不方便快速迭代版本了,所以我就基本改成了动态布局数值的展示, 所以安卓这边有些数值的排版实现上下列我全改成存储带出 动态布局。
 数值要对齐,就研究了下存储过程也好实现。
ALTER FUNCTION Fun_HtmlLeftAlign
(@data VARCHAR(200),@keepLen INT ,@placeholder VARCHAR(20)=' '
)
RETURNS VARCHAR(200)
AS
BEGIN
DECLARE @minLen INT =LEN(@data);
IF @keepLen<@minLen
SET @keepLen=@minLen;SET @data=@data+'ZZZZZZZZZZZZZZZZZZZZ';
SET @data=LEFT(@data,@keepLen);
SET @data=REPLACE(@data,'Z',@placeholder);
SET @data=@dataRETURN @dataEND
GO 这样就实现了左对齐 保持 每个数值的长度 在一定的范围,由于业务上基本长度不会超过10所以我这次改的是10.
SET @info='<b>名称:</b>'+ISNULL(@X1,'')+'<b><br/>编号:</b>'+dbo.Fun_HtmlLeftAlign(CAST(@X0 AS VARCHAR(100)),10,' ')
SET @info=@info+'<b>姓名:</b>'+ISNULL(@X,'')+'<b><br/>性别:</b>'+dbo.Fun_HtmlLeftAlign(CAST(@X2 AS VARCHAR(100)),10,' ') 结果发现 我吧站位符改为0的时候是对齐的,不是0的时候差了一点点,
 1750043007665.png 
 而数字能对齐
 1750043028368.png 
 这个我经过研究刚开始以为是全角 半角 啥的导致,结果发现都不对,最后发现是安卓这边字体导致
<TextViewandroid:id="@+id/tv_information"android:layout_width="wrap_content"android:layout_height="wrap_content"android:fontFamily="monospace"android:text=""android:textIsSelectable="true"android:textSize="13sp" /> 加上android:fontFamily="monospace"就可以实现字母数字 等比宽度了。
最后成功实现
 image.png 
 版权声明:
本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。
我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com
