标签: flags

枚举 - 所有选项的价值

有没有办法在枚举中添加"所有值"选项而不必在每次将新值添加到枚举时更改其值?

[Flags] 
public enum SomeEnum
{
    SomeValue =  1,
    SomeValue2 = 1 << 1,
    SomeValue3 = 1 << 2,
    SomeValue4 = 1 << 3,
    All = ?
}
Run Code Online (Sandbox Code Playgroud)

更新:

结束从long继承并使用long.MaxValuefor All选项.

c# enums flags bit-manipulation

23
推荐指数
3
解决办法
9215
查看次数

意图开始活动 - 但不要带到前面

描述:

  • 活动A可见(或在后台)
  • 意图被一个有价值的额外广播接收,然后将附加内容传递给将用于启动活动A的新Intent I2.
  • 结果:如果活动在后台,请不要将活动带到前面.

码:

Intent I2= new Intent(context, MyActivity.class); 
I2.putExtra(..
I2.setFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); // | Intent.FLAG_ACTIVITY_NEW_TASK); 
context.startActivity(I2);
Run Code Online (Sandbox Code Playgroud)

注意:我没有添加"android:taskAffinity"来表示..我认为你应该知道

flags android android-intent

23
推荐指数
3
解决办法
2万
查看次数

如何防止枚举值的按位OR组合?

我知道你可以FlagsAttribute用来指示编译器使用位域进行枚举.

有没有办法指定枚举值不能与按位OR组合?

例:

enum OnlyOneOption
{
   Option1,
   Option2,
   ...
}
Run Code Online (Sandbox Code Playgroud)

在这个例子中,没有什么能阻止开发人员写作OnlyOneOption.Option1 | OnlyOneOption.Option2.如果可能的话,我想在编译时禁止它.

c# enums flags

23
推荐指数
2
解决办法
1572
查看次数

在Android Window上获取活动标志

是否有可能以编程方式获取Window上当前处于活动状态的标志?

我们可以启用标志:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
Run Code Online (Sandbox Code Playgroud)

api是否提供了获取当前活动标志列表的方法?谢谢

flags android window-managers window

22
推荐指数
1
解决办法
8174
查看次数

Android:如果从Recent Task启动应用程序,则Activity正在使用旧意图

我正在实施GCM.我的应用程序有两个活动,比如说AB.我正在使用此代码B从NotificationBar 启动:

long when = System.currentTimeMillis();
NotificationManager notificationManager =
    (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
String title = context.getString(R.string.app_name);        
Notification notification = new Notification(R.drawable.app_notification_icon, "De Centrale", when);//message
Intent notificationIntent = new Intent(context, B.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); //|Intent.FLAG_ACTIVITY_REORDER_TO_FRONT
PendingIntent intent = PendingIntent.getActivity(context, 0, notificationIntent, PendingIntent.FLAG_CANCEL_CURRENT);
notification.setLatestEventInfo(context, title, msg, intent);
notification.flags |= Notification.FLAG_AUTO_CANCEL;
notificationManager.notify(0, notification);
Run Code Online (Sandbox Code Playgroud)

NotificationBar打开活动B,意图,说"B-通知意向",然后我打开活动AB使用后退按钮,然后重新启动我BA有一个新的intent(说"BA-意图").我使用下面的代码:

intent = new Intent(this, B.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);              
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

然后我获得新数据B(即B刷新的屏幕).但是,如果我按下主页按钮,然后我从最近的应用程序启动应用程序,那么我会 …

notifications flags android android-intent

21
推荐指数
1
解决办法
3266
查看次数

Android:Intent Flag用于销毁活动并启动新活动

所以我有一个登录活动这个活动膨胀一个login.xml布局,其中有一个USER_NAME和PASSWORD EditText Views,当我输入用户名和密码并单击登录按钮时,我开始一个新的活动.

新的Activity有一个Logout按钮,它基本上只是启动上一个Activity,如下所示:

    Intent loginIntent = new Intent(getActivity(), Login.class);
    loginIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    getActivity().startActivity(loginIntent);
Run Code Online (Sandbox Code Playgroud)

根据Android Documentation,该标志执行以下操作:

http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP

如果已设置,并且正在启动的活动已在当前任务中运行,则不会启动该活动的新实例,而是将关闭其上的所有其他活动,并将此Intent传递给(现在开启) top)旧活动作为新的意图.

问题是,在我注销后,用户名和密码仍然出现在EditText视图中,是否有一个破坏Login活动的Flag并且只是启动一个新的或者是否有办法在我注销时重置字段?哪种方法更好?

flags android android-intent android-activity

20
推荐指数
2
解决办法
5万
查看次数

Autotools:如何设置全局编译标志

我有一个项目有几个源目录:

src/A
   /B
   /C
Run Code Online (Sandbox Code Playgroud)

在每个中,Makefile.am包含

AM_CXXFLAGS = -fPIC -Wall -Wextra
Run Code Online (Sandbox Code Playgroud)

如何避免在每个源文件夹中重复此操作?

我试图修改src/Makefile.am和configure.in,但没有成功.我以为我可以使用AC_PROG_CXX全局设置编译标志但是找不到关于如何使用这些宏的文档(你有指向这样的文档的指针吗?).

提前致谢

c++ flags automake autoconf autotools

19
推荐指数
1
解决办法
2万
查看次数

g ++ -D标志有什么作用?

我正在看一个CFLAGS -

CFLAGS=-g -w -D LINUX -O3 -fpermissive
Run Code Online (Sandbox Code Playgroud)

在Makefile中.-D标志有什么作用?我在手册页上看到了

-D name
    Predefine name as a macro, with definition 1. 
Run Code Online (Sandbox Code Playgroud)

但我不知道如何解释.我的解释是......它使LINUX成为一个宏,并且在linux环境中只做-03和-fpermissive.是对的吗?如果没有,那又怎样?谢谢你的帮助

linux flags compilation g++

19
推荐指数
1
解决办法
2万
查看次数

C#Flags vs FlagsAttribute

使用Flags和FlagsAttribute与枚举有什么区别?

c# enums flags

18
推荐指数
1
解决办法
3249
查看次数

为什么INC和DEC指令*不影响进位标志(CF)?

为什么x86指令INC(递增)和DEC(递减)不影响CFFLAGSREGISTER中的(进位标志)?

x86 assembly flags increment decrement

18
推荐指数
2
解决办法
1万
查看次数