2017-07-31 70 views
-2

我按照從官方安卓網站的指示 創建我的第一個Android應用程序。問題 - 當我點擊按鈕來「增加或減少」數量時,應用程序崩潰。應用程序崩潰,當我點擊按鈕,我做了增量或減量的數量

logcat的

W/ResourceType: No package identifier when getting value for resource number 0x00000001 
D/AndroidRuntime: Shutting down VM 
E/AndroidRuntime: FATAL EXCEPTION: main 
       Process: com.example.yash.myapplication, PID: 29603 
       java.lang.IllegalStateException: Could not execute method for android:onClick 
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:293) 
        at android.view.View.performClick(View.java:5207) 
        at android.view.View$PerformClick.run(View.java:21168) 
        at android.os.Handler.handleCallback(Handler.java:746) 
        at android.os.Handler.dispatchMessage(Handler.java:95) 
        at android.os.Looper.loop(Looper.java:148) 
        at android.app.ActivityThread.main(ActivityThread.java:5443) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 
       Caused by: java.lang.reflect.InvocationTargetException 
        at java.lang.reflect.Method.invoke(Native Method) 
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288) 
        at android.view.View.performClick(View.java:5207)  
        at android.view.View$PerformClick.run(View.java:21168)  
        at android.os.Handler.handleCallback(Handler.java:746)  
        at android.os.Handler.dispatchMessage(Handler.java:95)  
        at android.os.Looper.loop(Looper.java:148)  
        at android.app.ActivityThread.main(ActivityThread.java:5443)  
        at java.lang.reflect.Method.invoke(Native Method)  
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728)  
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)  
       Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x1 
        at android.content.res.Resources.getText(Resources.java:312) 
        at android.widget.TextView.setText(TextView.java:4427) 
        at com.example.yash.myapplication.MainActivity.display(MainActivity.java:57) 
        at com.example.yash.myapplication.MainActivity.IncrementQuantity(MainActivity.java:21) 
        at java.lang.reflect.Method.invoke(Native Method)  
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288)  
        at android.view.View.performClick(View.java:5207)  
        at android.view.View$PerformClick.run(View.java:21168)  
        at android.os.Handler.handleCallback(Handler.java:746)  
        at android.os.Handler.dispatchMessage(Handler.java:95)  
        at android.os.Looper.loop(Looper.java:148)  
        at android.app.ActivityThread.main(ActivityThread.java:5443)  
        at java.lang.reflect.Method.invoke(Native Method)  
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728)  
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)  
I/Process: Sending signal. PID: 29603 SIG: 9 

任何一個可以說爲什麼會這樣???

+0

MainActivity.java'package com.example.yash.myapplication; import android.os.Build; import android.os.Bundle; import android.support.annotation.RequiresApi; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.CheckBox; import android.widget.TextView; 公共類MainActivity擴展AppCompatActivity {int}數量= 0; @Override protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } – Yash1451

+0

public void IncrementQuantity(View view){ quantity = quantity + 1;顯示(數量); } public void DecrementQuantity(View view){ quantity = quantity-1;顯示(數量); } – Yash1451

+2

把源代碼放在你的問題中,這樣你就可以閱讀它。 – Axel

回答

0

您試圖使用不存在或未正確鍵入的ID訪問資源。

內,您的顯示功能:

產生的原因:android.content.res.Resources $ NotFoundException:在android.content.res.Resources.getText字符串 資源編號爲0x1 (Resources.java :312) at com.example.yash.myapplication.MainActivity com.example.yash.myapplication.MainActivity.display(MainActivity.java:57) android.widget.TextView.setText(TextView.java:4427) .IncrementQuantity(MainActivity.java:21)

當您爲TextView創建句柄時,您可能使用了錯誤的ID。 TextView textView=(TextView)findViewById(R.id.quantity_textView);

確保quantity_textView存在。如果您知道該ID是正確的,請確保在您使用的佈局文件中android:id="@+id/quantity_textView"

請確保您將代碼複製到問題中以使其可讀。

+0

**在android.widget.TextView.setText ** ... findViewById不是問題 –

+0

哈哈是的,你是對的。我的回答是模糊的 –

+0

現在要添加正確答案已經太遲了,我想!哎呦 –

相關問題