gpt4 book ai didi

java - 如何在listView适配器内的onclicklistener中获取textView文本

转载 作者:太空宇宙 更新时间:2023-11-03 11:57:13 25 4
gpt4 key购买 nike

我有一个 ListView ,其中包含 imageView、TextView 和两个按钮

我想要的是当我点击 ListView 中第三项的按钮时,当我点击与 TextView 位于同一位置的按钮时,我想获取 TextView 中的文本。 . 如何在 onclicklistener 的 getView() 内的 ListView 适配器中执行此操作?

这是我的 SimpleArrayAdapter.java

   public class MySimpleArrayAdapter extends ArrayAdapter<String> {
private final Context context;
private final String[] values;

public MySimpleArrayAdapter(Context context, String[] values) {
super(context, R.layout.my_listview, values);
this.context = context;
this.values = values;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.my_listview, parent, false);
Button d=(Button) rowView.findViewById(R.id.d);
Button a=(Button) rowView.findViewById(R.id.a);
TextView textView = (TextView) rowView.findViewById(R.id.label);
ImageView imageView = (ImageView) rowView.findViewById(R.id.icon);
textView.setText(values[position]);

// Change the icon for Windows and iPhone
String s = values[position];
if (s.startsWith("Windows7") || s.startsWith("iPhone")
|| s.startsWith("Solaris")) {
imageView.setImageResource(R.drawable.no);
} else {
imageView.setImageResource(R.drawable.ok);
}

d.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View view) {
// here where i want to get the current textview text


Log.d(null, "");
/*Intent intent = new Intent(context, MainActivity2.class);
context.startActivity(intent);*/

}
});

a.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View view) {
Log.d(null, "aaaaaaaaaaaaaaaaa");

}
});


return rowView;
}
}

最佳答案

在按钮onClick中简单地做

String txt = textView.getText().toString();

即将您的代码重写为

 d.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View view) {
// here where i want to get the current textview text
String txt = textView.getText().toString(); // add here


Log.d(null, "");
/*Intent intent = new Intent(context, MainActivity2.class);
context.startActivity(intent);*/

}
});

并使 textviewfinal 即更改

 TextView textView = (TextView) rowView.findViewById(R.id.label);

final TextView textView = (TextView) rowView.findViewById(R.id.label);

关于java - 如何在listView适配器内的onclicklistener中获取textView文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26038771/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com