我开发了一个显示ShinobiCharts DonutChart的应用程序。在甜甜圈内部,我附上了一个视图,在Galaxy Tab a和Nexus 9中显示正确,但在Nexus 7中显示太小。问题是这个视图的背景图像(我附上了一张图像来显示问题)。。。所以我试着改变图像背景的大小,但这并没有导致图像的显示方式。。。有人能告诉我为什么?
这里的视图布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_gravity="center|center_vertical|center_horizontal"
android:src="@drawable/cerchio_centro_chartpie" />
<TextView
android:id="@+id/centro_line1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="33dp"
android:text="TOTALE"
android:textColor="@color/title_gray"
android:textSize="18sp"
android:textStyle="bold" />
<TextView
android:id="@+id/centro_line2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/centro_line1"
android:layout_centerHorizontal="true"
android:layout_below="@+id/centro_line1"
android:layout_marginTop="5dp"
android:text="TextView"
android:textSize="16sp"
android:textStyle="bold" />
</RelativeLayout>
结果是:
甜甜圈失败
甜甜圈失败2,将边框添加到包含视图
shinobicharts Android库中的顶级对象本质上扩展了View或Fragment类。因此,它们不应该影响它们所放置的图像的缩放方式。
根据您的图像,我假设您在图表上使用了透明背景,并将图表放置在包含图像的布局顶部。我注意到Nexus 7具有hdpi密度,而tab a具有mdpi密度。因此,在适当的可绘制文件夹中正确复制和缩放所需的图像是很重要的。我建议您确认您正在正确缩放图像-这里是一个很好的指导位置:
http://developer.android.com/guide/practices/screens_support.html
具体参考标题为"替代提款"的章节。
了解android为哪个设备选择的图像的一个好技巧是,最初为每个密度使用不同的图像(但缩放正确并位于适当的可绘制文件夹中)。
再一次,我不认为这是由shinobicharts库引起的问题。
免责声明:我为shinobicontrols工作。