2012-03-13 69 views
1

好吧,我宣佈我的main.xml如下的Android添加文本視圖

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="fill_parent" 
android:layout_gravity="center_horizontal" > 

<RelativeLayout 
    android:id="@+id/AdMob" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentRight="true" > 
</RelativeLayout> 

<ScrollView 
    android:id="@+id/scrollview1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_below="@id/AdMob" > 

    <TableLayout 
     android:id="@+id/tablelayout1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" > 

     <TableRow 
      android:id="@+id/tableRow0" 
      android:layout_height="wrap_content" 
      android:background="@drawable/banner" /> 

     <TableRow 
      android:id="@+id/tableRow1" 
      android:layout_height="wrap_content" > 

      <TextView 
       android:id="@+id/start_message" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:gravity="center" 
       android:textSize="15sp" /> 

     </TableRow> 

     <TableRow 
      android:id="@+id/tableRow2" 
      android:layout_height="wrap_content" > 

      <Button 
       android:id="@+id/start" 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:text="Start Now" > 
      </Button> 
     </TableRow> 
    </TableLayout> 
</ScrollView> 

</RelativeLayout> 

,我的主要活動是

package com.michaelpeerman.demotivational_posters; 

import com.michaelpeerman.demotivational_posters.R; 

import android.app.Activity; 
import android.os.Bundle; 
import android.text.Html; 
import android.widget.TextView; 

public class MainActivity extends Activity { 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    TextView start_message = (TextView) findViewById(R.id.start_message); 
    start_message.setText(Html.fromHtml("Thank you for downloading \"Demotivational Posters\" \n Click start below to start. \n To advance to the next picture click the \"Next\" button. \n If you see an image you would like to download click the \"Download\" button. \n If you enjoy this app please leave a rating.")); 
} 
} 

當我去編譯我的程序也力自動關閉。該logcat的輸出是

03-13 01:59:50.240: E/AndroidRuntime(14336): FATAL EXCEPTION: main 
03-13 01:59:50.240: E/AndroidRuntime(14336): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.michaelpeerman.demotivational_posters/com.michaelpeerman.demotivational_posters.MainActivity}: java.lang.ClassCastException: android.widget.TableRow cannot be cast to android.widget.TextView 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.ActivityThread.access$600(ActivityThread.java:123) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.os.Handler.dispatchMessage(Handler.java:99) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.os.Looper.loop(Looper.java:137) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.ActivityThread.main(ActivityThread.java:4424) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at java.lang.reflect.Method.invokeNative(Native Method) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at java.lang.reflect.Method.invoke(Method.java:511) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at dalvik.system.NativeStart.main(Native Method) 
03-13 01:59:50.240: E/AndroidRuntime(14336): Caused by: java.lang.ClassCastException: android.widget.TableRow cannot be cast to android.widget.TextView 
03-13 01:59:50.240: E/AndroidRuntime(14336): at com.michaelpeerman.demotivational_posters.MainActivity.onCreate(MainActivity.java:16) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.Activity.performCreate(Activity.java:4465) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) 
03-13 01:59:50.240: E/AndroidRuntime(14336): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920) 
03-13 01:59:50.240: E/AndroidRuntime(14336): ... 11 more 

我想不通這是什麼意思,我的鑄造到的TableRow TextView的

+0

此行android:layout_below =「@ id/AdMob」> – 2012-03-13 06:15:14

+0

那條線呢?它只是在相對視圖內部的相對視圖下面放置滾動視圖,這是什麼錯誤? – mpeerman 2012-03-13 06:16:36

+0

我試了你在這裏粘貼的代碼..它工作正常..我正在假設你是你有一個名稱衝突... e.x。當你給兩個不同的小部件或視圖相同的ID ..檢查你xml一次重複ID – Nav 2012-03-13 06:29:15

回答

1

您需要清洗並再次重建項目。如果這不起作用,請關閉您的項目並再次打開並刷新項目並運行。我試着用你給定的代碼。它是在我的情況下工作。

+0

謝謝。它再次工作。我現在要記住這一點。 – mpeerman 2012-03-13 06:28:24