点击回调后的新意图

时间:2016-04-21 23:10:38

标签: android listview android-intent onclick

我有一个列表视图,当它点击某个选项时,我希望它创建一个新的意图。像一个菜单项。这是我第一次使用列表视图,所以我可能只是错过了正确的方法,但有一个简单的解决方法吗?

private void registerClickCallback() {
    ListView list = (ListView) findViewById(R.id.mainlist);
    list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, View viewClicked, int position, long id) {
        TextView textView = (TextView) viewClicked;
        Toast.makeText(main.this, position, Toast.LENGTH_SHORT).show();
        if(textView.getText().toString() == "my Profile"){
            Intent intent = new Intent(this.getApplicationContext(), myProfile.class);
            startActivity(intent);
        }
    }
});
  

无法解析方法'getapplicationcontext'

2 个答案:

答案 0 :(得分:2)

您不能使用this.getApplicationContext(),因为您在new AdapterView.OnItemClickListener()内,this没有这种方法。

您应该创建一个包含应用程序上下文的类字段并使用它,或者使用@codeMagic建议的viewClicked.getContext()

此外,正如您在评论中可能已阅读过的那样,您应该使用.equals进行字符串比较。 ==运算符是不够的。

答案 1 :(得分:0)

尝试 -

Intent intent = new Intent(MainActivity.this, myProfile.class);
startActivity(intent);

MainActivity是您实施onItemClick()的活动。 您应该用活动名称替换它。