首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >onItemClick,意图,startActivity错误

onItemClick,意图,startActivity错误
EN

Stack Overflow用户
提问于 2011-05-16 11:37:08
回答 2查看 8.4K关注 0票数 3

我的代码:

代码语言:javascript
复制
package elf.app;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import elf.app.entity.ELFList;
import elf.app.entity.Entry;
import elf.app.test.FakeComm;

// TODO Kunna skicka att något är färdigt (ett rum är städat).

public class RoomListActivity extends ListActivity {
private ELFList eList;
//  private FakeComm fakecomm;
private Bundle extras;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    this.extras = getIntent().getExtras();
    eList = new ELFList();

//      fakecomm = new FakeComm();
//      eList.add(fakecomm.getData());

    String[] strArr = {"asd","sdf","dfg"};
    eList.add(strArr);

    String[] str = eList.returnNames();


    setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, str));

    ListView lv = getListView();
    lv.setTextFilterEnabled(true);

    lv.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

            Entry e = eList.getEntry(position);
            String roominfo = e.toString();


            Intent intent = new Intent(this, RoomInfoActivity.class);
            intent.putExtra("entry",roominfo);
            this.startActivity(intent);

                // old stuff
            // String message;
            // message = eList.getEntryInfo(position);
            // Toast.makeText(getApplicationContext(),
            // message, Toast.LENGTH_SHORT).show();
        }
    });
}

}

我在以下几行都有错误:

代码语言:javascript
复制
Intent intent = new Intent(this, RoomInfoActivity.class);

代码语言:javascript
复制
this.startActivity(intent);

我不太清楚为什么会出现这些错误,这些错误在编辑器中的确切输出是:

构造函数意图(新的undefined"

  • "The (){},类)为方法startActivity(Intent),未为新AdapterView.OnItemClickListener(){}"类型定义

我是一个Android新手,所以请考虑到这一点,但是我已经学习Java大约一年了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-05-16 11:38:42

修复

代码语言:javascript
复制
Intent intent = new Intent(this, RoomInfoActivity.class);

代码语言:javascript
复制
Intent intent = new Intent(RoomListActivity.this, RoomInfoActivity.class);

这个错误是因为this引用了OnClickListener。如果您引用活动的this,问题就解决了。第二个错误是同样错误的引用。只需删除this,startActivity()方法也将在封闭类中进行搜索。

票数 9
EN

Stack Overflow用户

发布于 2011-05-16 11:40:18

尝尝这个

代码语言:javascript
复制
Intent intent = new Intent(RoomListActivity.this, RoomInfoActivity.class);
intent.putExtra("entry",roominfo);
RoomListActivity.this.startActivity(intent);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6016793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档