java - RelativeLayout 和 EditText 错误

标签 java android android-edittext android-relativelayout

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

  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"
>

最佳答案

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

希望对您有所帮助。

关于java - RelativeLayout 和 EditText 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6182002/

相关文章:

java - 授权 header 中不属于用户的 token 的 HTTP 状态代码

android - 不允许设置设备所有者,因为设备上已经有多个用户

android - 将 sqlite 查询打印到 logCat

android - 混合 Android 小部件新旧主题

android - 使 editText 可以键入但文本在 Android 中不会更改?

java - 是否可以检测到焦点丢失在 jSpinner 的按钮上

java - Spring安全登录实现

java - 使 JLabel html 内容从右到左

java - 如何避免 DB4o 数据库中的重复对象

java - AlertDialog 的编辑文本中的 SharedPreferences