gpt4 book ai didi

android - 将像素转换为 sp

转载 作者:IT王子 更新时间:2023-10-28 23:40:47 25 4
gpt4 key购买 nike

我需要 sp 单位中的 TextView 的当前 TextSize

getTextSize()pixels 为单位返回大小。那么有没有办法将像素转换为sp

最佳答案

使用这个

public static float pixelsToSp(Context context, float px) {
float scaledDensity = context.getResources().getDisplayMetrics().scaledDensity;
return px/scaledDensity;
}

如果您想测试此方法是否正确,请使用此代码段

XML

<TextView
android:id="@+id/txtHelloWorld"
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"/>

<TextView
android:id="@+id/txtHelloWorld2"
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>

Java

View rootView = inflater.inflate(R.layout.fragment_main, container, false);
TextView helloWorldTextView = (TextView) rootView.findViewById(R.id.txtHelloWorld);
TextView helloWorldTextView2 = (TextView) rootView.findViewById(R.id.txtHelloWorld2);
helloWorldTextView2.setTextSize(pixelsToSp(getActivity(), helloWorldTextView.getTextSize()));

两个TextView的字体大小应该相同。

关于android - 将像素转换为 sp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6263250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com