[英]Android cannot be resolved or is not a field
好吧,所以在你去开始说明之前,去看看,因为你的标题与这里提出的许多问题相符。 在那种情况下,你是对的,但是......我在这些问题上尝试的每件事都没有帮助我。
所以我实际上正在尝试为Android设备(Still Learning)构建一个RssFeed应用程序。 请注意,我的问题出现在MainActivity中。 我的所有类,xmls和其他内容都已正确编码,没有任何问题或错误。 人们说你应该摆脱包含“android.r”的导入,我已经查看并且没有找到包含所述引用的任何导入。
我的MainActivity代码:
package com.ascendapps.licknriff;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import com.ascendapps.licknriff.R;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
RssReader rssReader = new RssReader("http://www.licknriff.com/feed/");
ListView Items = (ListView)findViewById(R.id.listView1);
// create a list adapter
ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(this.android.R.layout.simple_list_item_1, RssReader.getItems());
// --
Items.setAdapter(adapter);
// --
Items.setOnItemClickListener(new ListListener(RssReader.getItems(), this)); }catch (Exception e){
Log.e("SimpleRssReader", e.getMessage());
}
}
}
改变这个:
ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(this.android.R.layout.simple_list_item_1, RssReader.getItems());
对此:
ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(this, android.R.layout.simple_list_item_1, RssReader.getItems());
this
应该作为ArrayAdapter类的构造函数中的上下文传递。
更换
ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(this.android.R.layout.simple_list_item_1, RssReader.getItems());
同
ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(this, android.R.layout.simple_list_item_1, RssReader.getItems());
android
是Android R
类的命名空间。 它不属于您的活动类。
第一个参数是Context
类型,因此activity是一个合适的参数,因为它继承自Context
。
你有一个句号,但你需要一个逗号,在this
之后 -
// ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(
// this.android.R.layout.simple_list_item_1, RssReader.getItems());
ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(
this, android.R.layout.simple_list_item_1, RssReader.getItems());
我认为你有拼写错误。 编写代码时,只需键入即可.
(点)而不是','(逗号)。 只需更换.
用,
之后this
就像下面,
ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(this, android.R.layout.simple_list_item_1, RssReader.getItems());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.