2
private void occupiedcheck(Vector2 positionv, Texture2D positiont)
   {
       int xpos=(((int)positionv.X+100)/150);
       int ypos=(((int)positionv.Y+110)/150);
       for (int j = 0; j < 4; j++)
       {
           if (piecexarray[j] == xpos && pieceyarray[j] == ypos)
           {

           }
           else
           {
               positiont = Content.Load<Texture2D>("Graphics/Highlighter");
               break;
           }
       }
   }

上面你可以看到我为 C# 游戏编写的一个函数,我希望它在函数的“else”部分被激活时将传递给它的纹理(Texture2D 位置)更改为“Graphics/Highlighter”。目前它不起作用,我怎样才能得到它,以便我可以将现有的 Texture2D 传递给函数并通过函数中的“Content.Load”方法动态更改它。

4

1 回答 1

0

您可以在方法中使用ref方法参数关键字,以便“当控制权传递回调用方法时,对方法中的参数所做的任何更改都将反映在该变量中”:

private void occupiedcheck(Vector2 positionv, ref Texture2D positiont)
{
    // ...
}
于 2013-01-26T04:59:15.237 回答