bug*_*oid 3 android listview list android-layout
我的ArrayAdapter显示无法解析适配器.请让我知道语法有什么问题.
@Override
public void onRequestSuccess(List<Order> Items) {
Toast.makeText(HomeActivity.this, "Success", Toast.LENGTH_SHORT).show();
List<Order> list = new ArrayList<Order>();
ListView listView = (ListView) findViewById(R.id.listview);
ListAdapter<Order> adapter = new ListAdapter<String>(this, android.R.layout.simple_list_item_1, list);
listView.setAdapter(adapter);
}
Run Code Online (Sandbox Code Playgroud)
MY Order类看起来像这样.
public class Order {
public String createdOn;
public String id;
public String lastModifiedOn;
public String trackingNumber;
public String tripId;
public OrderEntry orderEntry;
public String tripOrderStatusValue;
public String notificationStatus;
public String remark;
public String createdBy;
public String orderId;
public String deliveryReasonCode;
public Boolean isTripStarted;
public Boolean isTripCompleted;
public Boolean isOutScanned;
public String shipmentType;
public String deliveryTime;
Run Code Online (Sandbox Code Playgroud)
}
我的ListAdapter看起来像这样.
公共类ListAdapter扩展ArrayAdapter {
public ListAdapter(Context context, int textViewResourceId) {
super(context, textViewResourceId);
// TODO Auto-generated constructor stub
}
private List<Order> items;
public ListAdapter(Context context, int resource, List<Order> items) {
super(context, resource, items);
this.items = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi;
vi = LayoutInflater.from(getContext());
v = vi.inflate(R.layout.list_row_myschedule, null);
}
Order p = items.get(position);
if (p != null) {
TextView tt = (TextView) v.findViewById(R.id.textview1);
TextView tt1 = (TextView) v.findViewById(R.id.textview2);
TextView tt3 = (TextView) v.findViewById(R.id.textview3);
if (tt != null) {
tt.setText(p.orderStatusValue);
}
if (tt1 != null) {
tt1.setText(p.reasonCode);
}
if (tt3 != null) {
tt3.setText(p.trackingNumber);
}
}
return v;
}
Run Code Online (Sandbox Code Playgroud)
}
泛型必须在声明/初始化中保持一致
更改
ArrayAdapter<Order> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list);
Run Code Online (Sandbox Code Playgroud)
同
ArrayAdapter<Order> adapter = new ArrayAdapter<Order>(this, android.R.layout.simple_list_item_1, list);
Run Code Online (Sandbox Code Playgroud)
此外,您还要确保this引用活动上下文
| 归档时间: |
|
| 查看次数: |
21115 次 |
| 最近记录: |