问题
In my application, I have ListView
which is set by my CustomAdapter (i.e. ArrayAdapter). CustomAdapter has ViewHolder implemented in it which has references to all the views in my CustomList.
Now my question is how can I access the views in my CustomList (like EditText in below code) as the class hierarchy is like
public class BaseActivityClass{
...
class CustomAdapter{
...
public class ViewHolder{
EditText et;
...
}
}
}
from my activity BaseActivityClass?
回答1:
You can give your View
a unique id (View.setId()
) or tag (View.setTag()
) in your getView()
method and then use findViewById()
or findViewByTag()
to use them
回答2:
In your Custom adapter
public View getView(int position,View convertView,ViewGroup parent){
LayoutInflater inflater=getLayoutInflater();
View row=inflater.inflate("R.layout.yourcustomlistviewlayout ", parent, false);
EditText et=(EditText)row.findViewById(R.id.youredittext);
}
this way you can control your custom adapters views
来源:https://stackoverflow.com/questions/9373951/android-how-to-access-views-from-my-custom-list-if-i-use-a-customadapter