我有问题。 在具有较小ppi(每英寸像素数)的屏幕上,字体和图标看起来很暗淡且像素化。在右侧的第二个屏幕上,有另一个应用程序,但是在同一设备上,一切正常(当然,稍微增加了左侧以对齐字体大小,因此像素化比实际要多一些,但仍然)。屏幕上的Samsung Galaxy Tab SM-T531
我使用 xamarin.android 。
<FrameLayout xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
card_view:cardElevation="0.5dp"
card_view:cardMaxElevation="0.5dp"
card_view:cardUseCompatPadding="true"
card_view:cardCornerRadius="0dp"
android:minWidth="25px"
android:minHeight="25px">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="1dp">
<ImageView
android:layout_width="45dp"
android:layout_height="45dp"
android:adjustViewBounds="true"
android:id="@+id/imageView"
/>
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginTop="25dp"
android:layout_marginLeft="-15dp"
android:layout_toRightOf="@+id/imageView"
android:id="@+id/sensorImageView"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#333333"
android:textSize="21dp"
android:text="Caption"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/imageView"
android:id="@+id/nameTextView"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#333333"
android:textSize="10dp"
android:text="Description"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/imageView"
android:layout_below="@+id/nameTextView"
android:id="@+id/descTextView"
/>
<ImageView
android:layout_width="21.5dp"
android:layout_height="21.5dp"
android:layout_alignParentRight="true"
android:layout_marginTop="3dp"
android:layout_marginRight="85dp"
android:id="@+id/stateImageView"
/>
<TextView
android:layout_width="60dp"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#333333"
android:textSize="20dp"
android:layout_marginRight="30dp"
android:layout_alignParentRight="true"
android:text="-13.07"
android:textAlignment="textEnd"
android:id="@+id/mainValueTextView"
/>
<TextView
android:layout_width="27dp"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#333333"
android:textSize="10dp"
android:text="ob/m"
android:layout_alignParentRight="true"
android:id="@+id/mainValueSymbolTextView"
/>
<TextView
android:layout_width="60dp"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#333333"
android:textSize="10dp"
android:text="1`23123"
android:textAlignment="textEnd"
android:layout_alignParentRight="true"
android:layout_marginTop="1dp"
android:layout_marginRight="30dp"
android:layout_below="@+id/mainValueTextView"
android:id="@+id/addValueTextView"
/>
<TextView
android:layout_width="27dp"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#333333"
android:textSize="10dp"
android:text="квт/ч"
android:textAlignment="textStart"
android:layout_alignParentRight="true"
android:layout_marginTop="1dp"
android:layout_below="@+id/mainValueTextView"
android:id="@+id/addValueSymbolTextView"
/>
</RelativeLayout>
</android.support.v7.widget.CardView>
有人可以帮助我吗? 谢谢。
答案 0 :(得分:0)
与比例无关的像素-就像dp单位一样,但是它也通过用户的字体大小首选项进行缩放。建议您在指定字体大小时使用本机,以便针对屏幕密度和用户的喜好进行调整。
在sp中使用文本大小,而不是dp
这意味着使用android:textSize="21sp"
代替android:textSize="21dp"
等
**比例独立像素= sp
**密度独立像素= dp
阅读here了解更多详细信息