我经常看 API 说 android api,你可以在参数之间添加一个管道来组合它们。说 *CENTER_VERTICAL|CENTER_HORIZONTAL*。这是怎么做的?谁能给我看一个例子,我可以将多个参数传递给如上链接的函数?我如何阅读它们?
亲切的问候
竖线实际上是按位或,因此该方法仅在参数是“标志”或位字段时才有效。
例如
private static final int FLAG1 = 0x01;
private static final int FLAG2 = 0x02;
callFunc(FLAG1|FLAG2); // (passes 0x03)
如果 args 只是“任何旧的 int”,它可能不会像你想的那样:
例如
callFunc(0x03|0x01); // passes 0x03 - so the 0x01 does nothing.
    这就像我想要的。找到了答案,所以我想我会回答我自己的问题。
   public static final int a=1
   public static final int b=2;
   public static final int c=4;
   public static final int d=8;
    myfunction(a|b);
    myfunction(int x)
    {
       if((a&x)==a)
       {
          //Do whatever a stands for, and so on.
       }
      if((b&x)==b)
      { 
      }
      if((c&X)==c)
      {
      }
      if(d&x))==d)
      {
      }
    }
}