Java libgdx-创建一个ninepatch

Java libgdx-创建一个ninepatch,java,android,libgdx,nine-patch,Java,Android,Libgdx,Nine Patch,我在看报纸 我的形象 输出: 我只得到了优势。。 (忽略文本) 我该怎么办?将此图片用作指南。我在你的问题上用了你的形象 您使用的是“角”纹理的全宽,因此没有像素可以穿过按钮的边缘或“中间”。“九块补丁”应该有九块补丁。您已将纹理分成四个部分(四个角),没有为其他五个部分留下纹理数据。尝试: toast_patch = new NinePatch(texture, 7, 7, 7, 7); (或沿一个轴的总和不等于20的任何值。第一个参数是左边缘像素的数量,第二个参数是右边缘像素的数量,

我在看报纸

我的形象

输出:

我只得到了优势。。 (忽略文本)
我该怎么办?

将此图片用作指南。我在你的问题上用了你的形象


您使用的是“角”纹理的全宽,因此没有像素可以穿过按钮的边缘或“中间”。“九块补丁”应该有九块补丁。您已将纹理分成四个部分(四个角),没有为其他五个部分留下纹理数据。尝试:

toast_patch = new NinePatch(texture, 7, 7, 7, 7);
(或沿一个轴的总和不等于20的任何值。第一个参数是左边缘像素的数量,第二个参数是右边缘像素的数量,隐含地说,任何剩余的像素都用于“中间”部分。类似地,用于顶部和底部。)


在使用9patch时,能否添加该图像的照片?或者是一张你在9patch上的照片。@GreenFox那只是一个纹理,里面没有9个补丁。我想你应该用一张9个补丁的图像。这容易多了。只是一个建议。看我的答案。你的原始纹理有多大?20x20?@P.T.yes。我也尝试过使用4 16 4 16作为参数。你的意思是用4 18 4 18更改参数?我知道这个工具,兄弟,但是如何使用libgdx添加九个补丁?
toast_patch = new NinePatch(texture, 7, 7, 7, 7);
   graySkin = new Skin()
   grayAtlas = new TextureAtlas(Gdx.files.internal("ui/gray.pack"));
   grayAtlas.createPatch("patch");
   graySkin.addRegions(grayAtlas);
   grayButtonStyle = new TextButton.TextButtonStyle();
   grayButtonStyle.font = fontB44;
   grayButtonStyle.up = graySkin.getDrawable("patch");

    //gray.pack
    gray.9.png
    format: RGBA8888
    filter: Nearest,Nearest
    repeat: none
    patch
      rotate: false
      xy: 1, 1
      size: 100, 100
      split: 17, 17, 19, 19
      orig: 100, 100
      offset: 0, 0
      index: -1