Android的ListView中自定义ArrayAdapter
-
19-09-2019 - |
题
嗨,大家好我是看着这个代码,但我努力理解super关键字做什么。
我知道它会调用超类的构造函数,但在这个例子中有没有出现是一个超类,所以我很困惑。
于是就有了customArray
构造函数,然后调用其超不过什么?
public class customArray extends ArrayAdapter<String> {
int resource;
public customArray(Context cont, int _resource, List<String> items) {
super(cont, _resource, items);
resource = _resource;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
RelativeLayout rl;
String prod = getItem(position);
if (convertView == null) {
rl = new RelativeLayout(getContext());
LayoutInflater vi = (LayoutInflater) getContext().getSystemService(
Context.LAYOUT_INFLATER_SERVICE);
vi.inflate(resource, rl, true);
} else {
rl = (RelativeLayout) convertView;
}
TextView t1 = (TextView) rl.findViewById(R.id.text12);
t1.setText(prod);
final Button b1 = (Button) rl.findViewById(R.id.widget29);
b1.setText("efwrf");
if (position == 2) {
b1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(this.class,Alarm.class);
startActivity(i);
// Alarm al = new Alarm(); //
b1.setText("alarm set");
}
});
}
解决方案
你确定它不是ArrayAdapter?看到这里的构造函数: http://developer.android.com/reference/android /widget/ArrayAdapter.html
不隶属于 StackOverflow