android - 单击回调后的新 Intent

标签 android listview android-intent onclick

我有一个 ListView ,当它点击某个选项时,我希望它创建一个新的 Intent 。就像一个菜单项。这是我第一次使用 ListView ,所以我可能只是错过了执行此操作的正确方法,但是有没有简单的解决方法?

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);
        }
    }
});

cannot resolve method 'getapplicationcontext'

最佳答案

你不能使用 this.getApplicationContext() 因为你在 new AdapterView.OnItemClickListener() 里面,this没有那个方法。

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

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

关于android - 单击回调后的新 Intent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36781989/

相关文章:

android - 找不到使用 action.DIAL 处理 Intent 的 Activity

java - 保存到服务器后如何在 ImageView 中设置位图

android - 从 .gradle 和 .idea 中删除所有内容是否安全?

android - 如何在 ListView 中添加顶部项目?

java - 带有自定义 ListView 的 Android 对话框

android - 如何在ListView中显示二维数组?

Android打开XLSX文件

java - 如何将数据加载到 FragmentActivity 中以供嵌套 fragment 使用?

java - 设置 onClickListener 时出现 NullPointerException

android - 使用 FLAG_ACTIVITY_CLEAR_TOP 的 Activity 之间的动画转换