Java android-在显示布局之前运行代码
我的应用程序上的一个项目是一个选项,它会导致另一项活动。好的,我可以将此选项发送到其他活动,但我必须阅读该选项,然后根据此信息从布局中隐藏一些内容 我已将其添加到onCreate方法中,但没有成功:Java android-在显示布局之前运行代码,java,android,eclipse,Java,Android,Eclipse,我的应用程序上的一个项目是一个选项,它会导致另一项活动。好的,我可以将此选项发送到其他活动,但我必须阅读该选项,然后根据此信息从布局中隐藏一些内容 我已将其添加到onCreate方法中,但没有成功: Bundle extras = getIntent().getExtras(); String type = extras.getString("objects"); if(type == "animals"){ ImageView fieldSwamp = (ImageVi
Bundle extras = getIntent().getExtras();
String type = extras.getString("objects");
if(type == "animals"){
ImageView fieldSwamp = (ImageView) findViewById(R.id.btnSwamp);
((LinearLayout)fieldSwamp.getParent()).removeView(fieldSwamp);
ImageView fieldGrass = (ImageView) findViewById(R.id.btnGrass);
((LinearLayout)fieldGrass.getParent()).removeView(fieldGrass);
}
然后我尝试了“onLocationChanged”方法,但也没有成功。我不确定问题是在代码本身,还是在我放的地方。有人能帮忙吗
提前谢谢 试试看
ImageView fieldSwamp = (ImageView) findViewById(R.id.btnSwamp);
fieldSwamp.setVisibility(View.GONE);
另外,如果(type.equals(type)){尝试此方法,您应该使用,因为.equalsIgnoreCase更适合比较字符串,并且它将忽略字母大小写
if("animals".equalsIgnoreCase(type)){
ImageView fieldSwamp = (ImageView) findViewById(R.id.btnSwamp);
((LinearLayout)fieldSwamp.getParent()).removeView(fieldSwamp);
ImageView fieldGrass = (ImageView) findViewById(R.id.btnGrass);
((LinearLayout)fieldGrass.getParent()).removeView(fieldGrass);
} else {
Log.e("type","didn't remove views.");
}
请定义“不成功”。您有什么问题,例如错误、预期结果和实际结果之间的差异等?“虽然==在大多数情况下对字符串有效”。这仅在比较对象本身时有效。您应该建议使用.equals()
除非他们想比较这两个对象是否相等。而且,动物。相等(类型)
更安全,因为它可以防止NPE
是的。你完全正确。谢谢你在这一点上纠正我。是的。这应该有效,因为此时意图数据已经存在。