`

android解决背景图片平铺拉伸问题

阅读更多
最近开发时遇到一个问题:
使用一条图片(1200x128)平铺作为背景,测试机型是魅族mx4,平铺代码如下:
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/detail_note_paper_line_middle"
    android:tileModeY="repeat">
</bitmap>

选择有两个:
1.直接在布局设置background
2.帧布局套用ImageView(等下有说明)
问题来了,1方法设置之后图片拉伸了!!!卧槽,然后就去查吧,怎么使background图片不拉伸,以下是各博客你抄我我抄你的解决办法:



看得我一脸懵逼,这样设置就没法实现平铺了呀!
好,换个方法,我记得ImageView的src设置图片是保持长宽的,然而...长宽比是保持了,尼玛repeat效果没了,看着孤零零的那一条图片我两脸懵逼...
思路陷入死胡同...

想了好久,不对啊,图片尺寸那么大,怎么可能还会拉伸呢???突然我反应过来as的drawable只有一个!!
ok,意识到这点就好办了.



图中drawable-xxhdpi是我新建的,把图片放进去就ok了(别放mipmap里面,mipmap里一般只放应用图标)
  • 大小: 47.1 KB
  • 大小: 85.8 KB
分享到:
评论

相关推荐

    高仿android-QQ空间下拉背景图拉伸回弹效果

    本项目主要探讨如何实现“高仿Android-QQ空间下拉背景图拉伸回弹效果”,这是一个自定义ListView控件的实例,旨在模拟QQ空间主页面下拉时背景图片的动态变化,即图片随着手指滑动而拉伸,松手后又会回弹到原始状态。...

    按钮重绘,背景拉伸

    开发者通常会为对话框设定一个统一的背景图片,然后使其在对话框的整个区域内平铺或拉伸。这涉及到对话框类的自定义以及背景图片的处理逻辑。 在实际开发中,例如在Android中,可以使用` NinePatch`图像,这种特殊...

    Android实现平铺图片效果

    - 当使用代码动态设置平铺图片时,确保已正确处理兼容性问题,因为不同的Android版本可能会有不同的API来设置背景。 - 考虑到性能,尽量减少对Bitmap的操作,因为Bitmap操作可能会消耗大量内存。 - 如果图片资源...

    ddvi给工具栏添上背景图片p_com_021311e3c7df45.zip

    3. **布局调整**:根据工具栏上的按钮和其他元素,调整图片的布局和位置,可能需要处理图片的拉伸、平铺或居中等问题。 4. **适应性**:确保图片在不同设备和屏幕尺寸上能正确显示,可能需要进行响应式设计或者使用...

    android图片圆角处理

    1. 创建一个`BitmapShader`对象,传入`Bitmap`和`Shader.TileMode`,设置图片的平铺方式,通常使用`CLAMP`模式以防止图片拉伸。 2. 创建一个`Paint`对象,并将`BitmapShader`设置为其着色器。 3. 创建一个`RectF`...

    Android UI remoteControl

    使用9-patch图片和百分比布局可以有效解决这些问题。同时,对于API版本的兼容,可以使用Support Library或AndroidX库中的组件和方法,确保应用能在较低版本的Android系统上运行。 最后,测试和调试是关键步骤。可以...

    Android切图注意事项

    2. **9-Patch 图片**:对于需要拉伸或平铺的图片,应使用9-Patch格式。9-Patch是一种特殊的PNG图片,通过在图像边缘添加标记来指示哪些部分可以拉伸,哪些部分保持不变。这样可以确保图片在不同尺寸的屏幕上保持正确...

    Android XML attribute

    ### Android XML Attribute详解 在Android开发中,XML文件扮演着非常重要的角色,特别是在定义界面布局、样式、动画等方面。为了帮助开发者更好地理解Android中的各种XML属性及其用途,本文将详细介绍部分核心XML...

    Imageview实现适屏显示,裁剪图片。

    在Android开发中,ImageView是用于显示图像的常见组件,它支持多种显示模式,如缩放、平铺等。本文将详细讲解如何利用ImageView实现适屏显示,并探讨如何裁剪图片并将其显示出来。 首先,我们要了解适屏显示的概念...

    桌面背景,桌面背景桌面背景

    4. **自定义设置**:操作系统通常允许用户自定义桌面背景,包括选择图片、调整大小、设置平铺、居中、拉伸或填充等选项。例如,Windows系统中的“个性化”设置允许用户轻松更改这些选项。 5. **主题与情感**:桌面...

    Android Drawable 全部 xml 元素和属性用法

    - 使用Nine-Patch图片(.9.png)为位图Drawable定义拉伸区域,保持内容的清晰度。 - 尽量减少Drawable的大小和复杂性,以降低应用启动时间和内存占用。 - 使用Theme中的Drawable资源替代布局文件中的硬编码资源,...

    Android自定义转盘抽奖轮盘demo

    对于图片背景,可以使用`BitmapShader`来处理位图的平铺和拉伸,使其适配转盘大小。而自定义奖品字体大小和图标则需要通过`Paint`对象的`getTextSize()`和`setBitmap()`方法来实现,图标可以是本地资源或者网络加载...

    PngButton-在BUTTON上使用PNG图片

    总的来说,`PngButton`的概念是为了提升Android应用的UI质量,通过合理利用PNG图片的特性以及Android提供的各种绘图工具,我们可以创建出更具吸引力且用户体验良好的按钮组件。无论是通过XML布局还是代码实现,都...

    android画图总结.pdf

    - **BitmapDrawable**: 该类封装了一个`Bitmap`对象,并支持平铺、拉伸或对齐等功能。 - 可以通过文件路径、输入流、XML膨胀或`Bitmap`对象创建`BitmapDrawable`。 - 在XML文件中可以使用`&lt;bitmap&gt;`元素定义。 **...

    android 画图 bitmap drawable canvas paint

    此外,BitmapDrawable是Drawable的一个子类,专门用来包裹Bitmap并支持平铺、拉伸和对齐等操作。它可以从XML布局文件中通过元素定义,或者通过BitmapDrawable(Bitmap bitmap)等方式实例化。当需要在Canvas上绘制...

    Android画图(以画图为例说明如何使用SDK)

    通过`android.content.res.Resources`类可以方便地访问应用内的各种资源,如图片、字符串等。`Resources`类提供了一系列的方法来帮助开发者获取这些资源: - `int getColor(int id)`:根据资源ID获取颜色值。 - `...

    Android画图学习.pdf

    - `BitmapDrawable`:包装一个位图,并支持平铺、拉伸或对齐等功能。 - `ShapeDrawable`:用于绘制形状。 - `GradientDrawable`:用于绘制渐变效果。 - `VectorDrawable`:用于矢量图形。 **2. BitmapDrawable*...

    设置桌面壁纸

    如果壁纸大小超过屏幕,可能需要实现平铺、拉伸或居中等填充模式,以满足不同用户的需求。 最后,为了优化内存管理和性能,开发者应当关注图片资源的加载和释放。使用内存缓存和磁盘缓存策略可以减少重复加载,避免...

    Android 图片Bitmap的剪切的示例代码

    此外,Android还提供了`android.graphics.BitmapShader`类,可以将Bitmap应用于画笔的着色器,实现复杂的图像效果,如平铺、拉伸等。配合`Paint`类的`setShader()`方法,可以进一步增强图片的视觉表现。 总之,...

Global site tag (gtag.js) - Google Analytics