普通网友 2016-03-13 14:40 采纳率: 100%
浏览 1400

安卓,baseadapter,报错,求指教

logcat如下:
图片说明

content_main:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent"
    android:layout_height="match_parent"

    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:showIn="@layout/activity_main" tools:context=".MainActivity">

    <ListView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/listview"/>
</LinearLayout>

listview的布局:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent" android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/textview1"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/textview2"/>

</LinearLayout>

baseadapter的代码:

 public class MyAdapter extends BaseAdapter
{
    Context context;
    String[] tx1;
    String[] tx2;
    MyAdapter(Context context,String[] tx1,String[] tx2)
    {
        this.context=context;
        this.tx1=tx1;
        this.tx2=tx2;
    }
    @Override
    public int getCount()
    {
        return tx1.length;
    }
    @Override
    public Object getItem(int position)
    {
        return tx1[position];
    }
    @Override
    public long getItemId(int position)
    {
        return 0;
    }

    @Override
    public View getView(int position,View v,ViewGroup viewGroup)
    {
        View view;
        ViewHolder viewHolder;
        if(v == null) {
            view = LayoutInflater.from(context).inflate(R.layout.listview, viewGroup);
            ;

            TextView t1 = (TextView) view.findViewById(R.id.textview1);
            TextView t2 = (TextView) view.findViewById((R.id.textview2));

            t1.setText(tx1[position]);
            t2.setText(tx2[position]);

            viewHolder=new ViewHolder(t1,t2);
            view.setTag(viewHolder);
        }
        else
        {
            view=v;
            viewHolder=(ViewHolder)view.getTag();
        }

        return v;
    }

    class ViewHolder
    {
        public TextView t1;
        public TextView t2;
        ViewHolder(TextView t1,TextView t2)
        {
            this.t1=t1;
            this.t2=t2;
        }
    }

}

mainactivity中与listview有关的也就是:

ListView listView;
    String[] str1={"这是1","这是2","这是3","这是4","这是5"};
    String[] str2={"this is 1","this is 2","this is 3","this is 4","this is 5"};
 listView=(ListView)super.findViewById(R.id.listview);
        MyAdapter myAdapter=new MyAdapter(this,str1,str2);
        listView.setAdapter(myAdapter);

求指教,怎么解决?

  • 写回答

4条回答

  • spring_ws 2016-03-13 15:20
    关注

    settext放到return上面去,

    评论

报告相同问题?

悬赏问题

  • ¥15 gwas 分析-数据质控之过滤稀有突变中出现的问题
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案