GIVEN
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".InboxActivity" >
<!-- refresh button -->
<Button
android:id="@+id/button_refresh_inbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:onClick="refreshInbox"
android:text="@string/refresh_inbox" />
<LinearLayout
android:id="@+id/inbox_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/button_refresh_inbox" >
<ProgressBar
android:id="@+id/inbox_prog_bar"
style="@android:style/Widget.ProgressBar.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<TextView
android:id="@+id/empty_inbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/inbox_container"
android:textIsSelectable="false" />
</RelativeLayout>
RESULT :
当我运行应用程序时,我收到错误
E/AndroidRuntime(930): java.lang.ClassCastException: android.widget.ProgressBar
cannot be cast to android.widget.LinearLayout
有谁知道如何解决这个问题?
目的:
获取收件箱加载时显示的进度条;然后让收件箱内容填充线性布局。
背景:
一切都很好。我只是认为在加载收件箱时有一个进度条而不是空白屏幕会更好。添加进度条会导致错误。 (我真的想在布局文件中指定进度条,而不是以编程方式指定)。
答案 0 :(得分:9)
刷新和项目&gt;清理你的项目。
这与自动生成R引用时发生的一些混乱有关,当清理它时将创建一个具有正确id引用的新引用。
答案 1 :(得分:1)
为什么在不是基类时会转换为LinearLayout?
java.lang.Object
↳ android.view.View
↳ android.widget.ProgressBar