java - 如何为动态创建的 TextView 设置点击功能?

标签 java android

好的,所以我想动态创建一个 TextView ,然后在单击该 TextView 后我去运行一个函数。这是我的代码

 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data){
        super.onActivityResult(requestCode, resultCode, data);
        Bundle bundle = data.getExtras();
        contacts.add(bundle);
        String fname = bundle.getString("fname");
        LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
        LinearLayout layout = (LinearLayout) findViewById(R.id.contactList);

        TextView textView = new TextView(this);
        textView.setLayoutParams(params);
        textView.setText(fname);
        textView.setId(idCounter);
        textView.setOnClickListener(showDetails());
        layout.addView(textView);

    }

这是我想调用的函数

public void showDetails(View view){
        //create intent
        //get id of textview
        //get bundle object for that textview
        //send bundle object to new activity
        //start new activity

    }

如何让 TextView 在单击 TextView 时调用 showDetails?

最佳答案

您必须将 View.OnClickListener 实例传递给 setOnClickListener:

View.OnClickListener listener = view -> {
    showDetails();
};
textView.setOnClickListener(listener); 

关于java - 如何为动态创建的 TextView 设置点击功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55132308/

相关文章:

Java Socket 服务器端无法读取 play 框架应用程序中传入的文本行

java - IPv6 被编码在请求参数中

java - 我错过了什么? NumberFormatException 错误

java - 如何将变量的值从jsf的bean页面(即bean.java)移动到另一个java类?

java - 为什么遍历 ArrayList<String> 与常规数组相同?

android - 当我从 Eclipse 运行我的应用程序时出现异常

android - 如何在 Android 通知中添加按钮

android - 为什么 Android Studio 不断切换 `languageLevel` ?

java - 根据列表项的位置替换 fragment

android - 无法在 vlc 上播放 android h264 编码的视频