Android 从webservice填充列表视图
当我试图显示使用json与wcf Web服务通信时从服务器收到的数据列表时,代码中出现了一个错误 我收到来自webservice的响应,数据也被添加到列表中,但我不知道为什么会出现此错误。请指导我解决此错误 以下是logcat输出:Android 从webservice填充列表视图,android,web-services,android-listview,listview-adapter,Android,Web Services,Android Listview,Listview Adapter,当我试图显示使用json与wcf Web服务通信时从服务器收到的数据列表时,代码中出现了一个错误 我收到来自webservice的响应,数据也被添加到列表中,但我不知道为什么会出现此错误。请指导我解决此错误 以下是logcat输出: 11-08 13:57:29.668: ERROR/AndroidRuntime(1386): Uncaught handler: thread main exiting due to uncaught exception 11-08 13:57:29.678:
11-08 13:57:29.668: ERROR/AndroidRuntime(1386): Uncaught handler: thread main exiting due to uncaught exception
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.AdapterView.addView(AdapterView.java:461)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.ecommerce.balajeebazaar.CategoryListAdapter.getView(CategoryListAdapter.java:64)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.AbsListView.obtainView(AbsListView.java:1273)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.widget.ListView.measureHeightOfChildren(ListView.java:1147)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.ListView.onMeasure(ListView.java:1060)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:888)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureVertical(LinearLayout.java:350)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.onMeasure(LinearLayout.java:278)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureVertical(LinearLayout.java:464)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.onMeasure(LinearLayout.java:278)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewRoot.performTraversals(ViewRoot.java:747)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewRoot.handleMessage(ViewRoot.java:1613)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.os.Handler.dispatchMessage(Handler.java:99)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.os.Looper.loop(Looper.java:123)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.app.ActivityThread.main(ActivityThread.java:4203)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at java.lang.reflect.Method.invokeNative(Native Method)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at java.lang.reflect.Method.invoke(Method.java:521)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at dalvik.system.NativeStart.main(Native Method)
CategoryArray = CW.CategoryWebservice("http://www.balajeebazaar.com/RestServiceImpl.svc/categorydetails");
for(int i = 0;i<=CategoryArray.length()-1;i++){
try {
Log.v("Categories :- ", CategoryArray.getString(i)+"");
String[] val = new String[3];
val = CategoryArray.getString(i).split(",");
Log.v("val[0] : ", val[0]);
Log.v("val[1] :", val[1]);
CategoryList.add(i, val[0]+" "+val[1]);
val = null;
Log.v("CATEGORY LIST", CategoryList.get(i).toString());
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//CategoryList.size();
adapter = new CategoryListAdapter(CategoryActivity.this, CategoryList);
public class CategoryListAdapter extends BaseAdapter {
private Activity activity;
// private String[] data;
private ArrayList<String> CategoryList = new ArrayList<String>();
private static LayoutInflater inflater = null;
// public ImageLoader imageLoader;
public CategoryListAdapter(Activity a, ArrayList<String> categorylist) {
activity = a;
// data = d;
inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
CategoryList = categorylist;
// imageLoader=new ImageLoader(activity.getApplicationContext());
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return CategoryList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public static class ViewHolder {
public TextView text;
public ImageView image;
}
public class CategoryListAdapter extends BaseAdapter {
private Activity activity;
// private String[] data;
private ArrayList<String> CategoryList = new ArrayList<String>();
public CategoryListAdapter(Activity a, ArrayList<String> categorylist) {
activity = a;
CategoryList = categorylist;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return CategoryList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public static class ViewHolder {
public TextView text;
public ImageView image;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View vi;
ViewHolder holder;
if (convertView == null) {
LayoutInflater inflater =getLayoutInflater();
vi = inflater.inflate(R.layout.item, parent);
holder = new ViewHolder();
holder.text = (TextView) vi.findViewById(R.id.text);
holder.image = (ImageView) vi.findViewById(R.id.image);
vi.setTag(holder);
} else{
vi = convertView;
holder = (ViewHolder) vi.getTag();
}
String texttoappend = CategoryList.get(position);
Log.v("texttoappend", texttoappend);
holder.text.setText(CategoryList.get(position).toString());
holder.image.setTag(R.drawable.go_arrow);
// imageLoader.DisplayImage(data[position], activity, holder.image);
return vi;
}
}
我的java文件的代码是:
11-08 13:57:29.668: ERROR/AndroidRuntime(1386): Uncaught handler: thread main exiting due to uncaught exception
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.AdapterView.addView(AdapterView.java:461)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.ecommerce.balajeebazaar.CategoryListAdapter.getView(CategoryListAdapter.java:64)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.AbsListView.obtainView(AbsListView.java:1273)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.widget.ListView.measureHeightOfChildren(ListView.java:1147)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.ListView.onMeasure(ListView.java:1060)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:888)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureVertical(LinearLayout.java:350)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.onMeasure(LinearLayout.java:278)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureVertical(LinearLayout.java:464)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.onMeasure(LinearLayout.java:278)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewRoot.performTraversals(ViewRoot.java:747)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewRoot.handleMessage(ViewRoot.java:1613)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.os.Handler.dispatchMessage(Handler.java:99)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.os.Looper.loop(Looper.java:123)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.app.ActivityThread.main(ActivityThread.java:4203)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at java.lang.reflect.Method.invokeNative(Native Method)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at java.lang.reflect.Method.invoke(Method.java:521)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at dalvik.system.NativeStart.main(Native Method)
CategoryArray = CW.CategoryWebservice("http://www.balajeebazaar.com/RestServiceImpl.svc/categorydetails");
for(int i = 0;i<=CategoryArray.length()-1;i++){
try {
Log.v("Categories :- ", CategoryArray.getString(i)+"");
String[] val = new String[3];
val = CategoryArray.getString(i).split(",");
Log.v("val[0] : ", val[0]);
Log.v("val[1] :", val[1]);
CategoryList.add(i, val[0]+" "+val[1]);
val = null;
Log.v("CATEGORY LIST", CategoryList.get(i).toString());
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//CategoryList.size();
adapter = new CategoryListAdapter(CategoryActivity.this, CategoryList);
public class CategoryListAdapter extends BaseAdapter {
private Activity activity;
// private String[] data;
private ArrayList<String> CategoryList = new ArrayList<String>();
private static LayoutInflater inflater = null;
// public ImageLoader imageLoader;
public CategoryListAdapter(Activity a, ArrayList<String> categorylist) {
activity = a;
// data = d;
inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
CategoryList = categorylist;
// imageLoader=new ImageLoader(activity.getApplicationContext());
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return CategoryList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public static class ViewHolder {
public TextView text;
public ImageView image;
}
public class CategoryListAdapter extends BaseAdapter {
private Activity activity;
// private String[] data;
private ArrayList<String> CategoryList = new ArrayList<String>();
public CategoryListAdapter(Activity a, ArrayList<String> categorylist) {
activity = a;
CategoryList = categorylist;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return CategoryList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public static class ViewHolder {
public TextView text;
public ImageView image;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View vi;
ViewHolder holder;
if (convertView == null) {
LayoutInflater inflater =getLayoutInflater();
vi = inflater.inflate(R.layout.item, parent);
holder = new ViewHolder();
holder.text = (TextView) vi.findViewById(R.id.text);
holder.image = (ImageView) vi.findViewById(R.id.image);
vi.setTag(holder);
} else{
vi = convertView;
holder = (ViewHolder) vi.getTag();
}
String texttoappend = CategoryList.get(position);
Log.v("texttoappend", texttoappend);
holder.text.setText(CategoryList.get(position).toString());
holder.image.setTag(R.drawable.go_arrow);
// imageLoader.DisplayImage(data[position], activity, holder.image);
return vi;
}
}
我将getView函数编辑为ablove(请参见我的代码编辑)
这比每个人回复都有效请尝试下面的代码
runOnUiThread(new Runnable()
{
@Override
public void run()
{
adapter = new CategoryListAdapter(CategoryActivity.this, CategoryList);
}
});
请尝试在您的网站上更换此CategoryListAdapter,并告诉我发生了什么 编辑:
11-08 13:57:29.668: ERROR/AndroidRuntime(1386): Uncaught handler: thread main exiting due to uncaught exception
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.AdapterView.addView(AdapterView.java:461)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.ecommerce.balajeebazaar.CategoryListAdapter.getView(CategoryListAdapter.java:64)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.AbsListView.obtainView(AbsListView.java:1273)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.widget.ListView.measureHeightOfChildren(ListView.java:1147)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.ListView.onMeasure(ListView.java:1060)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:888)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureVertical(LinearLayout.java:350)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.onMeasure(LinearLayout.java:278)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.measureVertical(LinearLayout.java:464)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.LinearLayout.onMeasure(LinearLayout.java:278)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2989)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.view.View.measure(View.java:7703)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewRoot.performTraversals(ViewRoot.java:747)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.view.ViewRoot.handleMessage(ViewRoot.java:1613)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386):
at android.os.Handler.dispatchMessage(Handler.java:99)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.os.Looper.loop(Looper.java:123)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at android.app.ActivityThread.main(ActivityThread.java:4203)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at java.lang.reflect.Method.invokeNative(Native Method)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at java.lang.reflect.Method.invoke(Method.java:521)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
11-08 13:57:29.678: ERROR/AndroidRuntime(1386): at dalvik.system.NativeStart.main(Native Method)
CategoryArray = CW.CategoryWebservice("http://www.balajeebazaar.com/RestServiceImpl.svc/categorydetails");
for(int i = 0;i<=CategoryArray.length()-1;i++){
try {
Log.v("Categories :- ", CategoryArray.getString(i)+"");
String[] val = new String[3];
val = CategoryArray.getString(i).split(",");
Log.v("val[0] : ", val[0]);
Log.v("val[1] :", val[1]);
CategoryList.add(i, val[0]+" "+val[1]);
val = null;
Log.v("CATEGORY LIST", CategoryList.get(i).toString());
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//CategoryList.size();
adapter = new CategoryListAdapter(CategoryActivity.this, CategoryList);
public class CategoryListAdapter extends BaseAdapter {
private Activity activity;
// private String[] data;
private ArrayList<String> CategoryList = new ArrayList<String>();
private static LayoutInflater inflater = null;
// public ImageLoader imageLoader;
public CategoryListAdapter(Activity a, ArrayList<String> categorylist) {
activity = a;
// data = d;
inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
CategoryList = categorylist;
// imageLoader=new ImageLoader(activity.getApplicationContext());
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return CategoryList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public static class ViewHolder {
public TextView text;
public ImageView image;
}
public class CategoryListAdapter extends BaseAdapter {
private Activity activity;
// private String[] data;
private ArrayList<String> CategoryList = new ArrayList<String>();
public CategoryListAdapter(Activity a, ArrayList<String> categorylist) {
activity = a;
CategoryList = categorylist;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return CategoryList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public static class ViewHolder {
public TextView text;
public ImageView image;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View vi;
ViewHolder holder;
if (convertView == null) {
LayoutInflater inflater =getLayoutInflater();
vi = inflater.inflate(R.layout.item, parent);
holder = new ViewHolder();
holder.text = (TextView) vi.findViewById(R.id.text);
holder.image = (ImageView) vi.findViewById(R.id.image);
vi.setTag(holder);
} else{
vi = convertView;
holder = (ViewHolder) vi.getTag();
}
String texttoappend = CategoryList.get(position);
Log.v("texttoappend", texttoappend);
holder.text.setText(CategoryList.get(position).toString());
holder.image.setTag(R.drawable.go_arrow);
// imageLoader.DisplayImage(data[position], activity, holder.image);
return vi;
}
}
公共类CategoryListAdapter扩展了BaseAdapter{
私人活动;
//私有字符串[]数据;
私有ArrayList CategoryList=新ArrayList();
公共类别列表适配器(活动a,ArrayList类别列表){
活动=a;
类别列表=类别列表;
}
@凌驾
public int getCount(){
//TODO自动生成的方法存根
返回CategoryList.size();
}
@凌驾
公共对象getItem(int位置){
//TODO自动生成的方法存根
返回位置;
}
@凌驾
公共长getItemId(int位置){
//TODO自动生成的方法存根
返回位置;
}
公共静态类视图持有者{
公共文本查看文本;
公众形象;
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
//TODO自动生成的方法存根
视图六;
视窗座;
if(convertView==null){
LayoutInflater充气机=getLayoutInflater();
vi=充气机。充气(R.布局.项目,父项);
holder=新的ViewHolder();
holder.text=(TextView)vi.findViewById(R.id.text);
holder.image=(ImageView)vi.findViewById(R.id.image);
vi.setTag(支架);
}否则{
vi=转换视图;
holder=(ViewHolder)vi.getTag();
}
String texttoappend=CategoryList.get(位置);
Log.v(“texttoappend”,texttoappend);
holder.text.setText(CategoryList.get(position.toString());
holder.image.setTag(可拉深的右箭头);
//imageLoader.DisplayImage(数据[位置]、活动、持有者.image);
返回vi;
}
}
感谢您的回复,但我对该行适配器=new CategoryListAdapter(CategoryActivity.this,CategoryList)没有问题;我的adapter Classis中的getview()函数有问题,我知道,但是您是否尝试过我提供的代码,并且getview仅在您设置adapter时才被调用,因此问题的根源在该行查看我编辑的答案,您可以查看我编辑的adapter类,并让我知道发生了什么。