Java eclipse android sdk不会在更改后更新代码 问题:
似乎没有任何错误,没有任何错误信息,但即使是最简单的示例,代码中的更改也不再生效。例如:Java eclipse android sdk不会在更改后更新代码 问题:,java,android,eclipse,Java,Android,Eclipse,似乎没有任何错误,没有任何错误信息,但即使是最简单的示例,代码中的更改也不再生效。例如: public void onRadioButtonClicked(View view) { // Is the button now checked? boolean checked = ((RadioButton) view).isChecked(); switch(view.getId()) { case R.id.rdo_todo:
public void onRadioButtonClicked(View view) {
// Is the button now checked?
boolean checked = ((RadioButton) view).isChecked();
switch(view.getId()) {
case R.id.rdo_todo:
if (checked){
Log.e("actedit", "rdo click22");
}
break;
case R.id.rdo_reminder:
if (checked){
TimePickerDialog_doofin.newInstance(0, 10, true)
.show(getFragmentManager(), "tpddf");
}
break;
}
}
添加一些日志记录程序:
public void onRadioButtonClicked(View view) {
// Is the button now checked?
boolean checked = ((RadioButton) view).isChecked();
Log.e("actedit", "rdo click???");
switch(view.getId()) {
case R.id.rdo_todo:
if (checked){
Log.e("actedit", "rdo click22");
}
break;
case R.id.rdo_reminder:
if (checked){
TimePickerDialog_doofin.newInstance(0, 10, true)
.show(getFragmentManager(), "tpddf");
Log.e("actedit", "rdo click rm");
}
break;
}
}
当我单击单选按钮时,记录器不会显示。代码中的其他更改也不会在设备中生效
我试过但没有效果
我在磁盘中查看源文件,它确实发生了更改。从设备中删除apk并在调试模式下重新安装apk,问题仍然存在。
清洁工程
删除。在项目的bin文件夹中
删除.metadate文件并重新导入项目,仍然没有用
我的看法
eclipse必须有地方隐藏/存储旧代码,但它在哪里??
通过此链接:
如果这些都不起作用,那么我相信文件系统中可能存在某种锁
但是我已经重新启动了好几次,并使用vim查看源代码是否发生了实际更改
额外信息
我在EclipseJuno中使用android sdk
原因
以前,安卓SDK在电脑中有3个版本:4.2.2、4.4.2、4.4w,我主要使用4.4.2。
昨天我删除了4.4.2 sdk,开始使用4.4w sdk,之后问题就出现了
最奇怪的是:我删除了.metadata和项目自己的bin文件夹中的每个文件,但当我运行应用程序时,它仍然会给我来自旧代码的结果!
更新
我启动了一个新项目,代码正常,没有问题。
因此,我将旧项目的bin和src文件夹复制到新项目中,希望问题能够得到解决,但问题仍然存在……您是否尝试刷新整个项目,然后再进行清理 在eclipse中: 项目->清理->清理所有项目
然后,再次运行你的应用程序。你的函数
onRadioButtonClick
被调用了吗?
您可以通过调试来确认这一点
如果您在onRadioButtonClicked
内有断点,请单击单选按钮,调试程序不会停止-您是否已将onRadioButtonClicked函数分配给您的收音机(在布局xml文件中或在代码中)
有两个选项需要添加侦听器
从xml布局文件设置单选按钮侦听器
android:onClick=“onRadioButtonClicked”
在您的RadioButton
标签中
<RadioButton android:id="@+id/radio_pirates"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/pirates"
android:onClick="onRadioButtonClicked"/>
你的项目有Ant/Maven/Gradle构建吗? 如果是,那么
是的,它被调用了。当我单击它时,我刚刚得到了旧的调试信息。您确定已选中“自动生成”吗?此外,如果删除.metadata,您将无法再打开Eclipse项目,因此这毫无意义。是的,它已被选中,并且工作区可以以某种方式打开
RadioGroup radioGroup = (RadioGroup) findViewById(R.id.yourRadioGroup);
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
public void onCheckedChanged(RadioGroup group, int checkedId) {
// checkedId is the RadioButton selected
}
});