问题描述
- 表格行中的 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);
解决方案
以前我也遇见过这个错误,由于不同的 View,在有 GridView 的地方,会扰乱一个 ProgressBar。应该清除你的项目。
Project-->Clean...
解决方案二:
ProgressBar bar=(ProgressBar)FindViewById(R.id.tPr);
检查代码这里,有类型转换异常
解决方案三:
貌似是你那个进度条的问题
时间: 2024-11-05 06:06:05