使用github存储库时android.content.res.Resources android.content.Context.getResources()错误

时间:2017-10-07 22:27:51

标签: android

我正在使用https://github.com/BlacKCaT27/CurrencyEditText在我的应用程序中输入货币,我正在使用此代码:

 CurrencyEditText cet = new CurrencyEditText(this, null);

这是logcat:

                                                                       Process: com.dharquissandas.budget, PID: 17620
                                                                       java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.dharquissandas.budget/com.dharquissandas.budget.add_expense}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
                                                                           at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2819)
                                                                           at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2988)
                                                                           at android.app.ActivityThread.-wrap14(ActivityThread.java)
                                                                           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1631)
                                                                           at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                           at android.os.Looper.loop(Looper.java:154)
                                                                           at android.app.ActivityThread.main(ActivityThread.java:6682)
                                                                           at java.lang.reflect.Method.invoke(Native Method)
                                                                           at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
                                                                           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)
                                                                        Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
                                                                           at android.content.ContextWrapper.getResources(ContextWrapper.java:86)
                                                                           at android.view.ContextThemeWrapper.getResourcesInternal(ContextThemeWrapper.java:127)
                                                                           at android.view.ContextThemeWrapper.getResources(ContextThemeWrapper.java:121)
                                                                           at android.support.v7.app.AppCompatActivity.getResources(AppCompatActivity.java:542)
                                                                           at android.view.View.<init>(View.java:4306)
                                                                           at android.view.View.<init>(View.java:4454)
                                                                           at android.widget.TextView.<init>(TextView.java:995)
                                                                           at android.widget.EditText.<init>(EditText.java:79)
                                                                           at android.widget.EditText.<init>(EditText.java:75)
                                                                           at android.widget.EditText.<init>(EditText.java:71)
                                                                           at com.blackcat.currencyedittext.CurrencyEditText.<init>(CurrencyEditText.java:33)
                                                                           at com.dharquissandas.budget.add_expense.<init>(add_expense.java:29)
                                                                           at java.lang.Class.newInstance(Native Method)
                                                                           at android.app.Instrumentation.newActivity(Instrumentation.java:1086)
                                                                           at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2809)
                                                                           at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2988) 
                                                                           at android.app.ActivityThread.-wrap14(ActivityThread.java) 
                                                                           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1631) 
                                                                           at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                           at android.os.Looper.loop(Looper.java:154) 
                                                                           at android.app.ActivityThread.main(ActivityThread.java:6682) 
                                                                           at java.lang.reflect.Method.invoke(Native Method) 
                                                                           at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520) 
                                                                           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410) 

我做错了什么我不知道,我是一个相当新的android编程可以有人帮助我。我应该把什么放在代码的属性部分?

这是我的代码:https://pastebin.com/57mTUMWX

1 个答案:

答案 0 :(得分:0)

您不应该在代码中创建视图元素。 将CurrencyText的视图添加到XML中。

然后你确保它有@ + id / myName并通过

找到它
CurrencyText myText = findViewById(R.id.myName);