Убедитесь, что у вас есть ссылка на ваш TextView в xml.
Подключите его (используя findViewById()
) только внутри onCreate()
из Activity
, и вы можете передать его в Adapter
(т. Е. Создать поле класса и метод получения метода установки), если Adapter
является отдельным класс.
и не делайте этого внутри getView()
Адаптера, удалите эту строку.
final TextView tv = (TextView)convertView.findViewById(R.id.tvCount);
вы передадите свой TextView
из Activity
в Adapter
, используя метод получения конструктора или установщика, сохраните ссылку, используя переменную уровня класса Adapter's
и то, что вы будете делать внутри onClick()
из Button
is:
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
count++;
yourClassLevelTextView.setText(String.valueOf(count));
}});
EDIT:
как вы передадите TextView в Adapter
public class YourAdapter extends BlahBlahBlah
{
private TextView yourClassLevelTextView;
public void setTextView(TextView textViewFromActivity)
{
this.yourClassLevelTextView = textViewFromActivity;
}
}
и в Activity
сделать что-то вроде этого:
YourAdapter adapter = new YourAdapter(blah, blah, blah);
adapter.setTextView(yourTextViewInActivity);
listView.setAdapter(adapter);