2 jonskeet JonSkeet 于 2013.03.19 16:38 提问

表格行中的 Relative layout 布局

我在表格行中设置了相对布局,当运行下面的代码时出现 Logcat:错误,如何处理这个问题?

 <TableLayout
       xmlns:android="http://schemas.android.com/apk/res/android"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:background="#e3e1e1">
           <TableRow
           android:layout_width="fill_parent"
           android:layout_height="fill_parent">
                <RelativeLayout
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content">
                    <ProgressBar
                        android:id="@+id/tPr"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content" 
                        android:layout_centerInParent="true"/>
                   <GridView
                       android:id="@+id/tApps"
                       android:layout_width="wrap_content"
                       android:layout_height="258dp"
                       android:background="#e3e1e1"
                       android:gravity="center"
                       android:horizontalSpacing="2dp"
                       android:numColumns="3"
                       android:verticalSpacing="2dp"
                       android:visibility="gone">
                   </GridView>
               </RelativeLayout>
       </TableRow>
   </TableLayout>

Logcat:

02-20 17:34:34.261: E/AndroidRuntime(1125): FATAL EXCEPTION: main
02-20 17:34:34.261: E/AndroidRuntime(1125): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.coverflow/com.example.coverflow.CoverFlowExample}: java.lang.ClassCastException: android.widget.ProgressBar
02-20 17:34:34.261: E/AndroidRuntime(1125):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at android.os.Handler.dispatchMessage(Handler.java:99)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at android.os.Looper.loop(Looper.java:123)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at android.app.ActivityThread.main(ActivityThread.java:4627)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at java.lang.reflect.Method.invokeNative(Native Method)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at java.lang.reflect.Method.invoke(Method.java:521)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
02-20 17:34:34.261: E/AndroidRuntime(1125):     at dalvik.system.NativeStart.main(Native Method)
02-20 17:34:34.261: E/AndroidRuntime(1125): Caused by: java.lang.ClassCastException: android.widget.ProgressBar
02-20 17:34:34.261: E/AndroidRuntime(1125):     at com.example.coverflow.CoverFlowExample.onCreate(CoverFlowExample.java:41)

Line 41 是: top = (GridView)findViewById(R.id.tApps);

3个回答

nana4ever
nana4ever   2013.03.25 14:17
已采纳

以前我也遇见过这个错误,由于不同的 View,在有 GridView 的地方,会扰乱一个 ProgressBar。应该清除你的项目。
Project-->Clean...

rabbitinhere
rabbitinhere   2013.03.20 08:15

ProgressBar bar=(ProgressBar)FindViewById(R.id.tPr);
检查代码这里,有类型转换异常

xiaodi88061671
xiaodi88061671   2013.03.19 19:48

貌似是你那个进度条的问题

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!