我在我的问题附近添加了一个选项卡更改监听器编辑代码,一旦我完成了对 R.id.edit_details_button
的调用不再解决。我认为我添加的全部代码是
import android.content.res.Resources;
...
import android.widget.ImageView;
...
import android.widget.TabHost.OnTabChangeListener;
...
tabHost.setOnTabChangedListener(new OnTabChangeListener(){
@Override
public void onTabChanged(String tabId) {
if("image".equals(tabId)) {
File file = getApplicationContext().getFileStreamPath("/sdcard/" + mPrefs.getInt("id", 0) + ".jpg");
if(file.exists()) {
ImageView imageView = (ImageView)findViewById(R.id.imageView);
imageView.setImageURI(Uri.fromFile(file));
} else {
ImageView image = (ImageView) findViewById(R.id.imageView);
Resources res = getResources();
image.setImageDrawable(res.getDrawable(R.drawable.ic_launcher));
}
}
}});
...
我按 Ctrl+Z,直到它取消了我的更改并修复了错误。我的重做队列没有撤消队列那么长,所以我不得不再次进行更改,之后我关闭了 Eclipse,希望它能解决问题。
在我的 strings.xml 中我有 <string name="edit_details_button">Edit details</string>
,但我注意到在我的 R.java 文件中有一个定义了 edit_menu_button 的字段,就像我在上一个项目中那样。“修复项目属性”没有修复它。
我尝试手动将 R.java 字段编辑为我需要的值,但在手动编辑后它恢复了。我尝试删除 R.java,但它用错误的文件名重新生成了它。
最佳答案
不要手动编辑R.java
或删除它 - 它可能会导致问题,而且正如您发现的那样,它通常不会解决任何问题。
您是否尝试过“项目 -> 清理...”?这将删除所有自动生成的文件并重新生成它们并重新构建项目。
另外,检查你所有的代码文件,看看是否有 import android.R
条目或实际上任何显式 import
对于任何 R
类(class)。如果发现任何问题,请将其删除,然后“清理”
关于android - R.id.field 不再被识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8720899/