Q: Запуск Activity из адаптера Написал такой адаптер 
public class TAdapter extends ArrayAdapter<Trenirovka> {

private LayoutInflater inflater;
private int layout;
private ArrayList<Trenirovka> trenirovkaList;
MainActivity m = new MainActivity();

public TAdapter(Context context, int resource, ArrayList<Trenirovka> trenirovka) {
    super(context, resource, trenirovka);

    this.trenirovkaList = trenirovka;
    this.layout = resource;
    this.inflater = LayoutInflater.from(context);
}

public View getView(int position, View convertView, ViewGroup parent) {

    final ViewHolder viewHolder;
    if (convertView == null) {
        convertView = inflater.inflate(this.layout, parent, false);
        viewHolder = new ViewHolder(convertView);
        convertView.setTag(viewHolder);
    } else {
        viewHolder = (ViewHolder) convertView.getTag();
    }
    final Trenirovka trenirovka = trenirovkaList.get(position);

    viewHolder.nameView.setText("Id:"+trenirovka.getID() + " Name: " + trenirovka.getName());
    viewHolder.parView.setText(formatValue(trenirovka.getPar_one(), trenirovka.getPar_two(), trenirovka.getPar_three(), trenirovka.getPar_fore()));


    viewHolder.loadbutton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent bf = new Intent();
            bf.putExtra("id", trenirovka.getID());
            bf.putExtra("name", trenirovka.getName());
            bf.putExtra("par1", trenirovka.getPar_one());
            bf.putExtra("par2", trenirovka.getPar_two());
            bf.putExtra("par3", trenirovka.getPar_three());
            bf.putExtra("par4", trenirovka.getPar_fore());


            Intent a = new Intent(TAdapter.this.getContext(), AcLoad.class);
            new Activity().startActivity(a);
        }
    });

    viewHolder.addButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
        }
    });

    return convertView;
}

private String formatValue(int par_one, int par_two, int par_three, int par_ofore) {
    return String.valueOf(par_one) + ", " + String.valueOf(par_two) + ", " + String.valueOf(par_three) + ", " + String.valueOf(par_ofore);
}

private class ViewHolder {
    final Button addButton, loadbutton;
    final TextView nameView, parView;

    ViewHolder(View view) {
        addButton = (Button) view.findViewById(R.id.addButton);
        loadbutton = (Button) view.findViewById(R.id.loadbutton);
        nameView = (TextView) view.findViewById(R.id.nameView);
        parView = (TextView) view.findViewById(R.id.parView);

    }
}

Но при нажатии на кнопку данный код вызывает ошибку а именно последняя сточка с запуском активности , подскажите пожалуйста что не так 
viewHolder.loadbutton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent bf = new Intent();
        bf.putExtra("id", trenirovka.getID());
        bf.putExtra("name", trenirovka.getName());
        bf.putExtra("par1", trenirovka.getPar_one());
        bf.putExtra("par2", trenirovka.getPar_two());
        bf.putExtra("par3", trenirovka.getPar_three());
        bf.putExtra("par4", trenirovka.getPar_fore());


        Intent a = new Intent(TAdapter.this.getContext(), AcLoad.class);
        new Activity().startActivity(a);
    }
});

Вот такая ошибка TAdapter$1.onClick(TAdapter.java:65)

A: Cтартовать активити надо так же из-под контекста. К примеру
Intent a = new Intent(TAdapter.this.getContext(), AcLoad.class);
viewHolder.loadbutton.getContext().startActivity(a);

Вот это не код ошибки, а только место падения
TAdapter$1.onClick(TAdapter.java:65)

