2012-10-09 73 views
0

我得到的無法啓動活動ComponentInfo例外:java.nullpointer例外,我檢查了我的整個代碼隨處可見,但我不能夠解決錯誤無法啓動活動ComponentInfo:java的空指針異常

這是我的代碼

public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.store_denomination); 
    actionbar=getSupportActionBar(); 
    actionbar.setDisplayShowHomeEnabled(false); 
    actionbar.setDisplayShowTitleEnabled(false); 
    actionbar.setDisplayShowCustomEnabled(true); 
    actionbar1 = LayoutInflater.from(this).inflate(R.layout.action_custom, null); 

    spin1 = (Spinner)findViewById(R.id.spin); 
    ProgressDialog progress = new ProgressDialog(this); 
    progress.setMessage("Loading......"); 
    new MyClass(progress).execute(); 

    String urlvalue = ((MyApplication) getApplicationContext()).url; 
    new DownloadImageTask().execute(urlvalue); 




    youpaytxt = (TextView)findViewById(R.id.youpaytextview); 
    //name = (TextView)findViewById(R.id.nametextview); 
    description = (TextView)findViewById(R.id.descriptiontextview); 
    btncheckout = (Button)findViewById(R.id.checkoutbutton); 
    edt = (EditText)findViewById(R.id.editText1); 
    thumb_image = (ImageView)findViewById(R.id.imageView1); 
    contshopping = (Button)findViewById(R.id.continueshoppingbutton); 
    pg = (ProgressBar)findViewById(R.id.progressBar1); 
    nametextview = (TextView)findViewById(R.id.nametextview); 
    description = (TextView)findViewById(R.id.descriptiontextview); 
    btnterms = (Button)findViewById(R.id.termsbutton); 
    //termstxt=(TextView)findViewById(R.id.trmstxtview); 
    //termstxt.setVisibility(termstxt.GONE); 
    //termstxt.setTypeface(arial_font); 

    description.setTypeface(arial_font); 
    name = ((MyApplication) getApplicationContext()).nameofbrand; 
    nametextview.setText(name); 
    Typeface.createFromAsset(getAssets(), "fonts/arial.ttf"); 
    quant = String.valueOf(1); 
    btn=(ImageButton)findViewById(R.id.cartbutton); 
    if(!(((MyApplication)getApplicationContext()).cartproductsname).isEmpty()) 
    { 
    btn.setOnClickListener(new OnClickListener() {   //error is coming here from logcat 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 
     Intent first=new  Intent(Detailsofproduct.this,CommentListActivity.class); 
     startActivity(first); 
     } 
    }); 
    } 

這是我的logcat

10-09 13:01:01.951: E/AndroidRuntime(2135): FATAL EXCEPTION: main 
10-09 13:01:01.951: E/AndroidRuntime(2135): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.androidhive.xmlparsing/com.androidhive.xmlparsing.Detailsofproduct}: java.lang.NullPointerException 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.os.Handler.dispatchMessage(Handler.java:99) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.os.Looper.loop(Looper.java:123) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.app.ActivityThread.main(ActivityThread.java:3683) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at java.lang.reflect.Method.invokeNative(Native Method) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at java.lang.reflect.Method.invoke(Method.java:507) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at dalvik.system.NativeStart.main(Native Method) 
10-09 13:01:01.951: E/AndroidRuntime(2135): Caused by: java.lang.NullPointerException 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at com.androidhive.xmlparsing.Detailsofproduct.onCreate(Detailsofproduct.java:209) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) 
10-09 13:01:01.951: E/AndroidRuntime(2135):  ... 11 more 

爲什麼我得到的錯誤。任何幫助?

+0

您確定您的store_denomination.xml中有一個帶有id cartbutton的ImageButton嗎? –

+0

我已將我的圖像按鈕放在我的自定義視圖中的操作欄 – JavaGuy

+0

你能告訴我你是第209行嗎? –

回答

3

改變這一狀況,

btn=(ImageButton)findViewById(R.id.cartbutton); 

btn=(ImageButton)actionbar1.findViewById(R.id.cartbutton); 

也許引用從那裏起源應該做的伎倆視圖。

因爲通常當您撥打findViewbyId()時,android僅從setContentView中使用的xml中搜索元素,因爲您正在使用操作欄視圖,這應該有所幫助。

+1

+1我認爲這是因爲 –

+0

@Andro Selva雅它工作非常感謝 – JavaGuy

+0

@KalpeshLakhani感謝您的支持:)。很高興這是有益的抹布。 –