2012-03-20 8 views
0

私は与えられた課題に対してカスタムリストビューを作成しています。私はベースアダプタを使用してカスタムリストビューを作成しました。 私は新しいアクティビティを開始するためにボタンをクリックしてビューを表示します。しかし、実行時にエラーが発生しています。 BUTTONはリストビューの一部ではないことを覚えておいてください。私はそれが繰り返されないことを意味します。リストビューを含むレイアウトの一番上に一度だけ配置されます。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.classmanifestファイルを追加しましたか?エラーログとは何ですか?

0

v.getContext()mainActivity2.thisに置き換えることができます。

+0

申し訳ありませんが、レビュー中に間違ったボタンを押す必要があります。 –

1

むしろより新しいテント(v.getContext、Cart.class)、試してみてください。

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

AndroidManifest.xmlの確認についてのdmytrodanylykの提案も参照してください。 – 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)マニフェストファイルに「カート」のアクティビティを登録していない可能性があります。

関連する問題