Android 无法在listview中使用基本适配器

Android 无法在listview中使用基本适配器,android,listview,baseadapter,Android,Listview,Baseadapter,我已经尝试过很多教程,试图为listview使用基本适配器,但我无法让它们正常工作。我哪里出了问题 main活动: public class MainActivity extends Activity { ListView listView; int[] resIds = new int[] {R.drawable.apple,R.drawable.banana,R.drawable.orange,R.drawable.watermelon}; String[] bal

我已经尝试过很多教程,试图为listview使用基本适配器,但我无法让它们正常工作。我哪里出了问题

main活动:

public class MainActivity extends Activity {

    ListView listView;
    int[] resIds = new int[] {R.drawable.apple,R.drawable.banana,R.drawable.orange,R.drawable.watermelon};
    String[] balls = new String[] {"apple","banana","orange","watermelon"};
    String[] engNames = {"1","2","3","4"};


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        listView = (ListView) findViewById(R.id.listView);

        MyAdapter adapter = new MyAdapter(this);

        listView.setAdapter(adapter);
        Toast.makeText(this,this.toString(),Toast.LENGTH_LONG).show();



    }

    public class MyAdapter extends BaseAdapter {

        Context context;
        LayoutInflater myInflater;

        public MyAdapter(Context C){
            context = C;
            myInflater = LayoutInflater.from(this.context);
        }

        @Override
        public int getCount() {
            return 0;
        }

        @Override
        public Object getItem(int i) {
            return null;
        }

        @Override
        public long getItemId(int i) {
            return 0;
        }

        @Override
        public View getView(int i, View view, ViewGroup viewGroup) {

            view = myInflater.inflate(R.layout.activity_my_layout,viewGroup,false);

            ImageView imgLogo = (ImageView) view.findViewById(R.id.imgLogo);
            TextView txtName = (TextView) view.findViewById(R.id.txtName);
            TextView txtendName = (TextView) view.findViewById(R.id.txtendName);

            imgLogo.setImageResource(resIds[i]);
            txtName.setText(balls[i]);
            txtendName.setText(engNames[i]);

            Toast.makeText(MainActivity.this,"Test",Toast.LENGTH_SHORT).show();

            return view;
        }
    }

}

您必须正确地覆盖getCount和getItem

@Override
public int getCount() {
    return balls.length; //your data list length
}

@Override
public Object getItem(int i) {
    return balls[i]; //data list item
}

getCount()
应该与您拥有的项目数量相匹配,因此将其更改为4或使用任何数组中的大小。谢谢!是的,它能工作!:)非常感谢你!我现在可以做了!