列表视图适配器不想设置文本

listview adapter doesnt want to set text

好的,我正在尝试使用适配器从数组中进行简单的列表视图填充,所以我有:

public class 主要Activity 扩展 Activity {

String[] dish = {"soup", "rice", "grecha", "potato"};

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

    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
    setContentView(R.layout.lunch);
    ListView lunchLV = (ListView)findViewById(R.id.lunchLV);
    cafeAdapter ca = new cafeAdapter();
    lunchLV.setAdapter(ca);

}


public class cafeAdapter extends BaseAdapter {

    @Override
    public int getCount() {
        return dish.length;
    }

    @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 = getLayoutInflater().inflate(R.layout.list, null);
        TextView title = (TextView) findViewById(R.id.title);
        title.setText(dish[i]);
        return view;
    }
}

}

我还有 list.xml 个文件和 lunch.xml 个文件

出于一些奇怪的原因title.setText(dish[i]);产生错误并使我的程序崩溃。 我的 xml 文件中有 ID 为“标题”的元素,但无论如何 java.lang.NullPointerException:尝试在空 object 引用上调用虚拟方法 'void android.widget.TextView.setText(java.lang.CharSequence)'。

你知道我做错了什么吗?

你应该使用

TextView title = (TextView) view.findViewById(R.id.title);

改为:

 TextView title = (TextView) findViewById(R.id.title);