我必须在我的应用程序的主屏幕上显示7个图标。为此,我已使用图像视图在网格视图上排列图标以显示图像。在模拟器上它看起来绝对精细但图像缩小看起来模糊,当我在LG Optimus p350上部署应用程序时,请帮我如何清楚地显示实际尺寸的图像:
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:columnWidth="61dp"
android:numColumns="3" android:verticalSpacing="10dp"
android:horizontalSpacing="10dp" android:stretchMode="spacingWidthUniform"
android:gravity="center" android:layout_gravity="center" />
图标大小为61 * 80
<supports-screens android:smallScreens="true"
android:normalScreens="true" android:largeScreens="true"
android:anyDensity="true"/>
请参阅图像和代码在模拟器上输出显示如下。我想在设备上显示输出也具有此清晰度。请指导
看第二个屏幕截图(在qvga模拟器上模糊),请指导我如何纠正它..
答案 0 :(得分:2)
图像对我来说并不模糊。由于更高的屏幕分辨率,它们只是更小。但文字看起来确实很模糊。
所以我建议使用 ImageView 和 TextView 的组合。分隔文字和图像。文本将适当缩放。 您还可以为不同的分辨率提供多个图像集。
修改强> 您可以创建类似于此的网格项布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:gravity="bottom"
android:layout_width="wrap_content"
android:layout_gravity="bottom">
<ImageView android:id="@+id/thumbnailImage"
android:layout_height="70dp"
android:layout_width="fill_parent"
android:gravity="center_horizontal" />
<TextView android:id="@+id/thumnailTitle" android:text="TextView"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="fill_parent"
android:gravity="center_horizontal|bottom" />
</LinearLayout>
创建一个扩展BaseAdapter类的自定义网格适配器:
public class MyGridAdapter extends BaseAdapter
{...}
将适配器与网格相关联:
adapter = new MyGridAdapter();
GridView gridView = (GridView) findViewById(R.id.gridView);
gridView.setAdapter(adapter);
然后,只需使用getView适配器方法将项填充到网格中:
public View getView(int position, View convertView, ViewGroup parent)
{
// assuming the grid item layout is named "grid_item"
View view = inflater.inflate(R.layout.grid_item, null);
TextView text = (TextView) view.findViewById(R.id.thumnailTitle);
text.setText("Test");
ImageView thumbnail = (ImageView) view.findViewById(R.id.thumbnailImage);
...
答案 1 :(得分:0)
您是否提供多种解决方案资源?请仔细阅读有关Supporting Multiple Screens。
的文章我不认为图像缩小,它们看起来更小,因为您的手机的密度或分辨率高于您测试的模拟器。