问题标签 [nine-patch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
422 浏览

android - 为什么 9-patch 在壁纸上不起作用?

我有一个 250x208 的小图像(尺寸从 960x800 减小)并用它制作了 9.png。通过将其设置为墙纸图像,wallpaperManager.setResource(R.drawable.my_wallpaper);但它仍然被错误地拉​​伸,就像这不是 9-patch 图像一样。

为什么 9-patch 作为壁纸的尺寸不正确?

当您有一个必须将某些图像设置为墙纸的应用程序时,您会怎么做?

提前致谢

0 投票
1 回答
465 浏览

android - 图像渲染九个补丁

我有一个带有自定义布局的列表视图。在布局中,我显示了一系列评论。问题是当评论太长时,我设置为背景的图像会被拉伸。

我知道我可能会使用九个补丁,但问题是它真的有用吗?如果没有,我有什么选择?

有人可以推荐最好的处理方法。

图像发生了什么

在此处输入图像描述

<TextView android:id="@+id/txtCommentBody" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:textColor="@color/black" android:paddingTop="25dip" android:paddingLeft="5dip" android:paddingRight="5dip" android:layout_marginTop="10dip" android:background="@drawable/comment_bg"> </TextView>

0 投票
3 回答
975 浏览

android - 自定义视图组上的九个补丁

我制作了一个九补丁和一个自定义视图组,然后我将该视图组的背景设置为九补丁。

问题是:九个补丁忽略了“内容区域”的设置。

那么:如何在自定义视图中正确使用九补丁?

或者:

我如何从九个补丁中获取内容区域,以便可以在 OnMeasure 和 OnLayout 数学上使用它?

0 投票
1 回答
1158 浏览

android - 自定义 ProgressBar 不会更新。(AsyncTask + 9patch)

首先感谢您阅读本文。我无法通过 AsyncTask 内部类从自定义 ProgressBar 更新进度。我使用 9patch 作为背景和进度可绘制对象。它只是不更新​​。它保持在那里,就像它在最大值中一样,我正在使用 onProgressUpdate() 来调用 invalidate() 并更新 UI 线程。

这就是它现在的样子,它变得可见并且只是呆在那里全部填满:http: //imageshack.us/photo/my-images/651/mobicashprogressbar.png/

  • 进度条应该仅在用户结束表单后可见。
  • 还有另一个内部 AsyncTask 处理与 Web 服务连接的发送 SMS 按钮。

代码如下:

这是 XML:

这是我称之为的一个地方

帮助?:D

更新:

对于测试目的,我将 OTP_TIMEOUT 设置为 50000,对代码进行了以下更改并删除了 9patch 可绘制属性,因此它将使用本机可绘制栏。但是,它可以工作,当我使用图像来自定义栏时,它似乎正在发生同样的老问题。它是静态的,像以前一样被填满。

0 投票
1 回答
1135 浏览

android - 九个补丁图像不可拉伸尺寸对以它为背景的组件填充的影响

我有一个小部件,当我使用颜色作为背景时,当我使用 android:layout_alignParentTop="true" 时,里面的所有组件都有一个 0 填充(其他方面也是如此)。

但是,当我使用 9 个补丁图像作为父级的背景时,当我将它们与父级对齐时,它的填充似乎等于 9 个补丁图像的不可拉伸大小。

这是正常的吗?

0 投票
4 回答
4312 浏览

android - Android:可以使用 9 补丁来绘制按钮吗?(见图)

样品按钮

如果我想将图像用作按钮背景,我该怎么做?9补丁?还是固定图像(ldip/mdip/hdip)?

谢谢!

编辑:

感谢两位回复,我知道draw9patch这个工具,但是我不知道如何定义垂直区域,这样就不会破坏渐变?谢谢!

0 投票
1 回答
1053 浏览

android - Android Fragments API doesn't show background 9patch image correctly

I'm porting an existing android app to honeycomb and the fragments API and compatibility library. I'm using the same layout, but I'm loading it into a fragment. The background is a 9patch image, but it now only covers the top left quarter of the screen. The rest of the background is white. If I change the background to a hex color, it covers the entire screen. This has never happened before switching to fragments and the layout did not change. I'm somewhat new to Android and very new to fragments, so I'm not sure if I'm missing something. The problem appears to be related to the 9patch image, but I don't know enough about Android to say that with certainty.

My layout looks like this:

0 投票
1 回答
1910 浏览

c++ - Sdl 1.3:如何使用简单的 scale-9-grid 来调整图像大小?

我们有这样的图像:

在此处输入图像描述

我们有 4 个坐标 top:10, bottom:10, left:10, right:10 我们已经调整到像 newWidth:100, newHeight:35 这样的值 我们有一些SDL_Rect Sprite是从一些SDL_Surface *button如何在 Sprite 上执行这样的调整大小转换生成的?

那么如何在 SDL 中实现 9-slice 缩放呢?

0 投票
0 回答
472 浏览

android - NinePatchDrawable 设置为 ListView 项背景时的问题

我有一个ListView使用ListAdapter. 作为单个项目的布局,我定义了一个 XML。

然后,我在我的代码中设置了一些 NinePatchDrawable,并动态地将它们作为LinearLayout我的单项 XML 的背景弹出。

奇怪的是,在 Activity 开幕式上,它看起来很好,而且按计划拉伸。但在此之后它由于某种原因“重置”,所以它现在没有正确的图像页脚。滚动列表时,它会不时随机地变得正常(拉伸)或不正常(不拉伸)。

我已经检查了我的可绘制对象是好的 *.9.png 等等。

这里有什么问题,因为它在模拟器和设备上的工作方式相同?

更新:

这是我有问题的 LinearLayout 的 XML 部分:

0 投票
2 回答
4497 浏览

android - Android:编译 9-patch 文件以在可绘制文件夹之外使用?

我需要从可绘制文件夹之外加载 9-patch 文件。例如,这样我的应用程序就可以从服务器下载新皮肤。我发现在制作 .apk 时会编译存储在可绘制文件夹中的 9-patch 图像。从 assets 文件夹中读取的完全相同的文件没有 9-patch 块。因此,制作 .apk 的行为是在 drawable 文件夹中编译源 9-patch 文件,而不是在 assets 目录中。

如何自己编译一个 9-patch 文件,以便我可以将它安装在 assets 目录中?是否有(批处理)工具可以将源代码转换为带有 9-patch 块的编译版本?如果可能的话,我真的非常喜欢不必使用 Eclipse/Ant 来构建一个 .apk,然后将其拆开以提取已编译的 9-patch 文件。

现在我只想能够从资产目录中读取(例如,每个皮肤都有一个子目录)以保持简单。下一步是编译源图像以添加到 9-patch 块中。之后我会担心即时下载到 /data 文件夹——如果我不能编译 9-patch 文件,那么添加服务器端的工作就没有什么意义了。