relativelayout 和 edittext 错误

发布于 2024-11-10 17:08:00 字数 3215 浏览 0 评论 0原文

我正在尝试将广告添加到我的应用程序中,但出现了这个奇怪的错误,我只是不知道如何获得它。这是错误

  05-30 20:02:48.889: ERROR/AndroidRuntime(3420): FATAL EXCEPTION: main
05-30 20:02:48.889: ERROR/AndroidRuntime(3420): java.lang.RuntimeException: Unable to start activity ComponentInfo{coderaustin.com/coderaustin.com.Main}: java.lang.ClassCastException: android.widget.EditText
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.os.Looper.loop(Looper.java:123)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.main(ActivityThread.java:4627)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at java.lang.reflect.Method.invokeNative(Native Method)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at java.lang.reflect.Method.invoke(Method.java:521)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at dalvik.system.NativeStart.main(Native Method)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420): Caused by: java.lang.ClassCastException: android.widget.EditText
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at coderaustin.com.Main.onCreate(Main.java:79)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     ... 11 more

,正如您所看到的,它以某种方式从这段代码中获取 EditText 的实例,

 AdView adView = new AdView(this, AdSize.BANNER, "my pub code");
    View view = findViewById(R.id.RelLayout);
    if(view instanceof RelativeLayout) {
        Log.e("It's layout", "fixed");
    } else {
        Log.e("NOOOO", "Instance of: " + view.getClass().getName());

    }
   **RelativeLayout layout = (RelativeLayout) findViewById(R.id.RelLayout);**
   layout.addView(adView);

   adView.setGravity(Gravity.BOTTOM);
    // Add the adView to it

    // Initiate a generic request to load it with an ad
    adView.loadAd(new AdRequest());

也许这是显而易见的事情,我只是没有注意到它,我只是不知道我哪里出错了。感谢您的所有帮助。

编辑:以防万一您想查看我的布局,这里是

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/RelLayout"
>

I am trying to add ads into my app, and I get this weird error that I just can't see how I am possibly getting it. Here is the error

  05-30 20:02:48.889: ERROR/AndroidRuntime(3420): FATAL EXCEPTION: main
05-30 20:02:48.889: ERROR/AndroidRuntime(3420): java.lang.RuntimeException: Unable to start activity ComponentInfo{coderaustin.com/coderaustin.com.Main}: java.lang.ClassCastException: android.widget.EditText
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.os.Looper.loop(Looper.java:123)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.main(ActivityThread.java:4627)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at java.lang.reflect.Method.invokeNative(Native Method)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at java.lang.reflect.Method.invoke(Method.java:521)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at dalvik.system.NativeStart.main(Native Method)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420): Caused by: java.lang.ClassCastException: android.widget.EditText
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at coderaustin.com.Main.onCreate(Main.java:79)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
05-30 20:02:48.889: ERROR/AndroidRuntime(3420):     ... 11 more

As you can see, it's somehow getting an instance of EditText out of this code

 AdView adView = new AdView(this, AdSize.BANNER, "my pub code");
    View view = findViewById(R.id.RelLayout);
    if(view instanceof RelativeLayout) {
        Log.e("It's layout", "fixed");
    } else {
        Log.e("NOOOO", "Instance of: " + view.getClass().getName());

    }
   **RelativeLayout layout = (RelativeLayout) findViewById(R.id.RelLayout);**
   layout.addView(adView);

   adView.setGravity(Gravity.BOTTOM);
    // Add the adView to it

    // Initiate a generic request to load it with an ad
    adView.loadAd(new AdRequest());

Maybe it's something obvious and I am just oblivious to it, I just don't see where I'm going wrong. Thanks for all help.

Edit: Just incase you wanted to see my layout, here it is

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/RelLayout"
>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

影子的影子 2024-11-17 17:08:00

我唯一能想到的是您的项目属性(包括 ID)需要修复。当您向项目添加新 ID/其他属性时,它们有时会不同步。在 Eclipse 中,您可以右键单击该项目并选择 Android >修复项目属性。如果这不起作用,我有时不得不删除所有 .class 文件(包括 R.class)并重新编译。

希望有帮助。

The only thing I can think of is that your project properties (which includes IDs) need fixing. They get out of sync sometimes when you add new IDs/other properties to the project. In eclipse you can right click on the project and select Android > Fix Project Properties. If that doesn't work I have sometimes had to delete all of my .class files (including R.class) and re-compile.

Hope that helps.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文