我尝试通过Facebook API连接Facebook,我按照这个例子:https://github.com/facebook/facebook-android-sdk/tree/master/examples/simple
一切都还可以,但是当我尝试编辑一些代码时,我的意思是我希望在登录成功后显示对话框发布消息,如下所示:
public void onAuthSucceed() {
mText.setText("You have logged in! ");
//This is the code to call the post message dialog.
mFacebook.dialog(Example.this, "feed",new SampleDialogListener());
}
Run Code Online (Sandbox Code Playgroud)
我在logcat中收到此错误:
03-02 13:32:08.629: E/AndroidRuntime(14991): android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@405180f8 is not valid; is your activity running?
03-02 13:32:08.629: E/AndroidRuntime(14991): at android.view.ViewRoot.setView(ViewRoot.java:532)
03-02 13:32:08.629: E/AndroidRuntime(14991): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
03-02 13:32:08.629: E/AndroidRuntime(14991): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
03-02 13:32:08.629: E/AndroidRuntime(14991): at android.view.Window$LocalWindowManager.addView(Window.java:424)
03-02 13:32:08.629: E/AndroidRuntime(14991): at android.app.Dialog.show(Dialog.java:241)
03-02 13:32:08.629: E/AndroidRuntime(14991): at com.facebook.android.Facebook.dialog(Facebook.java:780)
03-02 13:32:08.629: …Run Code Online (Sandbox Code Playgroud) 写不好
if (b == false) //...
while (b != true) //...
Run Code Online (Sandbox Code Playgroud)
是不是总是更好,而不是写:
if (!b) //...
while (!b) //...
Run Code Online (Sandbox Code Playgroud)
据推测,性能没有差异(或者存在?),但是如何衡量两者之间的显性,简洁性,清晰度,可读性等?
为了限制主观性,我还要感谢来自权威编码风格指南的任何引用,这些引用始终是优选的,或者在何时使用.
注意:变量名称b仅用作示例,ala foo和bar.