我在呼叫按钮上设置了一个监听器,起初我只是想确保监听器正在工作,所以我在其中放置了一条日志声明。但出于某种神秘的原因,当我点击它时,它拒绝打印!所以也许呼叫按钮是空的,我想,并添加了一个else语句...但它没有打印任何if或else语句!它会打印前后的语句,但完全忽略if-else结构中的所有内容。下面的代码:为什么logcat忽略标记为“PHONE”的日志语句?
ImageButton call = (ImageButton) v.findViewById(R.id.callButton);
Log.d("MEETINGS", "ABOUT TO WORK W/ CALL");
Log.e("MEETINGS", "" + (call != null));
if (call != null) {
Log.d("PHONE", "setting stuff on call...");
call.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Log.d("PHONE", "on call : " + phone);
}
});
} else {
System.out.println("why is this messed up");
Log.d("PHONE", "call button was null!");
}
System.out.println("what the heck is going on");
至少15分钟试图解开的Java怎么可能只决定了二者如果和其他人,我试着给日志语句不同的标签来跳过谜后。
和尤里卡!这就是诀窍!我把“PHONE”改成了“BLAH”,突然间世界变得有意义了!好奇,我把它改成了“电话”,它拒绝再次打印。
道德故事:从未在logcat中使用标签“phone”或“PHONE”!
有人可以向我解释如何和/或为什么logcat忽略标记为“PHONE”的消息?
感谢您分享您的建议。 – anticafe 2012-01-28 23:14:18