0

ソース イメージが実行時に割り当てられるUIイメージがあります。これらの画像はさまざまなサイズになるため、画像全体が表示されるように、レイアウト要素の境界に合わせて拡大縮小する必要があります。

私はこれに対して多くのアプローチを試みましたが、これを機能させることができないようです。これを達成する方法について誰か私にいくつかの指針を教えてください。

よろしくお願いします

注意: レイアウトはLayout Groupコンポーネントを介して制御されます。これは、 Aspect Ratio FitterContent Sizerなどの他の潜在的に有用なレイアウト コンポーネントと四角形を制御するために競合します(この問題の文書化された解決策で言及されているように)。

public
function ContextImgImp() {

  Debug.Log("Context Img Located at: " + texLocation);

  var wwwDirectory = "file://" + texLocation; //this will probably need to change for other OS (PC = file:/ [I think?]) - **REVISE**
  Debug.Log("Tex located at: " + wwwDirectory);

  newImgTex = new Texture2D(512, 512, TextureFormat.DXT1, false);

  while (true) {

    var www: WWW = new WWW(wwwDirectory);

    yield www;

    Debug.Log("Done Downloading Texture");
    www.LoadImageIntoTexture(newImgTex);

    if (www.isDone) {
      break; //if done downloading image break loop
    }
  }

  var imgSprite = contImg.sprite;
  var imgRect = imgSprite.rect;
  var imgPivot = imgRectTrans.pivot;
  var pixelScale = 100;
  Debug.Log("Pixel Scale:" + pixelScale);

  newImgSprite = Sprite.Create(newImgTex, imgRect, imgPivot, pixelScale);
  contImg.sprite = newImgSprite;

  //imgRectTrans.rect.size = Vector2(130,130);
  //contImg.sprite.rect.size = Vector2(130,130);
  //contImg.type = Image.Type.Simple;

  //***HERE***	
  if (assetFromFile) {
    ImgNameSplit(); //only execute namesplit if from file
  }
}

4

1 に答える 1

1

「SetNativeSize」関数がありますが、レイアウト コンポーネントを使用している場合、このサイズは次の更新ループでオーバーライドされます。

于 2016-01-18T12:29:58.243 に答える