0

主屏幕仅包含搜索,我希望背景图像成为我的徽标。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/image"
tools:context=".MainActivity" >

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:inputType="text"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_marginBottom="178dp"
    android:layout_marginLeft="40dp"
    android:ems="10" />

<SearchView
    android:id="@+id/searchView1"
    android:layout_width="300dp"
    android:layout_height="wrap_content"
    android:layout_alignTop="@+id/editText1" >

</SearchView>

我需要显示完整尺寸的图像,此代码以平铺格式显示我的徽标的许多副本。

4

6 回答 6

3
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="fitXY"
        android:src="@drawable/image" />
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </RelativeLayout>
</RelativeLayout>

除了使用android:scaleType="fitXY"你也可以使用android:scaleType="centerCrop". 有关更多信息,请阅读Android 比例类型

于 2013-09-16T06:55:52.007 回答
1

您需要使用 0.9 补丁图像来拉伸并使其完美屏幕适配,而无需拉伸瓷砖。从draw9patch创建9个补丁图像或者网上也有很多工具,只需在google上写你就会得到它,并制作android:scaleType =“fitXY”。

于 2013-09-16T06:58:40.550 回答
1

您的问题可能是您要用作拉伸背景的图像不是 9patch。9patchdrawer 包含在 Android SDK 中(但您也可以使用任何图像编辑器)这里重要的是 1px 黑线告诉 android 哪些部分用于拉伸(左侧和底部线)以及哪些部分用于保留内容。

然后将图像保存为 .9.png(android 会自动将其识别为可拉伸图像)

这里链接如何绘制 9-patch http://developer.android.com/tools/help/draw9patch.html

于 2013-09-16T07:01:36.883 回答
1

你应该删除它;

android:background="@drawable/image"

并将其添加到RelativeLayout中;

<ImageView
    android:layout_width="wrap_parent"
    android:layout_height="wrap_parent"
    android:layout_centerInParent="true"
    android:src="@drawable/image" />
于 2013-09-16T07:03:31.313 回答
0

从您的代码中删除这些行

android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"

并尝试您将在屏幕上获得全尺寸图像!

于 2013-09-16T07:11:49.243 回答
0

您需要 9-patch 图像将单个图像拉伸为 android 布局中的背景。图像扩展名为 .9.png。您使用 9-patchdrawer 制作这种类型的图像,该图像存储在android-sdk-windows\tools\draw9patch.bat文件夹中。

我认为它应该对你有用。

于 2013-09-16T06:53:58.620 回答