2012-03-20 2 views
0

Я работаю над Custom ListView для присваиваемого мне задания. Я разработал пользовательский список с помощью базового адаптера. У меня есть кнопка в представлении, нажав на которую я хочу начать новую деятельность. Но я получаю ошибку во время выполнения. Обратите внимание, что BUTTON не является частью списка, я имею в виду, что он не повторяется. Он помещается только один раз в верхней части макета с включенным Listview.В событии Onclick, пытающемся изменить активность

public class mainActivity2 extends Activity { 

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

    ArrayList<ItemInfo> items = GetSearchResults(); 
    final ListView lv1 = (ListView) findViewById(R.id.mylistview); 
    if(lv1==null){ 

     Log.d("error","ListView is null"); 
    } 

    lv1.setAdapter(new itemBaseAdapter(this, items)); 
    final Button btnShowCart = (Button) findViewById(R.id.shCart); 
    btnShowCart.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
       Intent myIntent = new Intent(v.getContext(), Cart.class); 
       startActivity(myIntent);   

     } 
    }); 


} 

private ArrayList<ItemInfo> GetSearchResults() { 

    ArrayList<ItemInfo> items=new ArrayList<ItemInfo>(); 
    items.add(new ItemInfo("pizza",R.drawable.icon,15)); 
    items.add(new ItemInfo("chicken",R.drawable.icon,10)); 
    items.add(new ItemInfo("slice",R.drawable.icon,12)); 
    items.add(new ItemInfo("hoha",R.drawable.icon,20)); 

    return items; 
} 

}

StartActivity (myIntent) является линией я получаю сообщение об ошибке во время выполнения. Вот код к нему, я буду благодарен, если кто-то пролил свет на проблему.

+0

Попробуйте это намерение myIntent = новое намерение (mainActivity2.this, Cart.class); – Nitin

+3

какая ошибка вы получаете? – ingsaurabh

ответ

4

Вы добавили Cart.class в формат «manifest»? Что такое журнал ошибок?

0

Вы можете просто заменить v.getContext() на mainActivity2.this.

+0

Прошу прощения, должно быть, во время проверки набрала неправильную кнопку. –

1

Вместо нового Intent (v.getContext, Cart.class), попробуйте:

Intent myIntent = new Intent(this, Cart.class); 
+0

См. Также предложение dmytrodanylyk о проверке AndroidManifest.xml. – Sparky

0

Во-первых, проверьте, является ли ваша вторая деятельность была добавлена ​​в файл Manifest.xml. И, после кода с этим кодом -

Intent i = new Intent(mainActivity2.this, Cart.class); 
startActivity(i); 

Возможно, это вам поможет.

1

1) Возможно, проблема лежит в методе v.getContext(). Попробуйте следующее:

Intent intent = new Intent(mainActivity2.this, Cart.class); 
startActivity(intent); 

2) Возможно, вы не зарегистрировали активность «Корзина» в файле манифеста.

Смежные вопросы