Textview无法转换为android.widget.listview

时间:2014-08-24 15:31:30

标签: java android android-layout android-activity parse-platform

我相信有文本视图,但不能在下面的代码中强制转换为listview错误: 本质上,我试图将Parse中的信息填充到文本字段中。我相信这是代码中有问题的部分。

这里抛出“textview无法转换为android.widget.listview”

public void done(List<ParseUser> userlistactivityname, ParseException e) {
    if (e == null) {
        for (int i = 0; i < userlistactivityname.size(); i++) {
             mUserActivityNameRetrieved = (TextView) getActivity().findViewById(R.id.userlistactivityname);
            mUserActivityNameRetrieved.setText(userlistactivityname.get(i).get("ActivityName").toString());
        }

    } else {
        //else..
    }
} 

以下是XML代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/blue_bac3"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:layout_alignParentRight="true"
        android:layout_alignTop="@+id/profilePictureresult"
        android:layout_marginTop="16dp"
        android:alpha="0.7"
        android:src="@drawable/left_right" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:layout_alignParentLeft="true"
        android:layout_alignTop="@+id/imageView2"
        android:alpha="0.7"
        android:src="@drawable/left_arrow2" />

    <TextView
        android:id="@+id/userlistactivityname"
        android:layout_width="220dp"
        android:layout_height="50dp"
        android:cacheColorHint="@android:color/transparent"
        android:layout_below="@+id/textView1"
        android:layout_toLeftOf="@+id/imageView2"
        android:divider="@null" >
    </TextView>

    <ListView
        android:id="@+id/userlistheadline"
        android:layout_width="280dp"
        android:layout_height="90dp"
        android:layout_below="@+id/userlistname"
        android:layout_centerHorizontal="true"
        android:cacheColorHint="@android:color/transparent"
        android:divider="@null"
        android:textAlignment="center" >
    </ListView>

    <com.parse.ParseImageView
        android:id="@+id/profilePictureresult"
        android:layout_width="132dp"
        android:layout_height="120dp"
        android:layout_below="@+id/userlistheadline"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="8dp"
        android:alpha="1"
        android:background="@drawable/border_image"
        android:cropToPadding="true"
        android:padding="3dp"
        android:scaleType="centerCrop" />

    <ListView
        android:id="@+id/userlistage"
        android:layout_width="80dp"
        android:layout_height="50dp"
        android:layout_below="@+id/profilePictureresult"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="9dp"
        android:divider="@null" >
    </ListView>

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/userlistage"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="7dp"
        android:text="Activity Name"
        android:textColor="#d2f2a2"
        android:textSize="23sp"
        android:textStyle="bold" />

    <Button
        android:id="@+id/btnMatchConfirm"
        android:layout_width="100dp"
        android:layout_height="50dp"
        android:layout_below="@+id/userlistactivityname"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="9dp"
        android:alpha="0.7"
        android:background="#ADD8E6"
        android:text="Confirm"
        android:textColor="#000000"
        android:textSize="22sp"
        android:typeface="serif" />

    <TextView
        android:id="@+id/userlistname"
        android:layout_width="250dp"
        android:layout_height="50dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="17dp"
        android:cacheColorHint="@android:color/transparent"
        android:clickable="false"
        android:divider="@null"
        android:drawSelectorOnTop="false"
        android:fadingEdge="vertical|none"
        android:fastScrollAlwaysVisible="false"
        android:fastScrollEnabled="false"
        android:focusable="false"
        android:focusableInTouchMode="false"
        android:listSelector="@android:color/transparent"
        android:scrollbarAlwaysDrawVerticalTrack="false"
        android:scrollbars="vertical|none"
        android:scrollingCache="false"
        android:smoothScrollbar="false"
        android:textAlignment="gravity" >
    </TextView>

提前致谢。

2 个答案:

答案 0 :(得分:0)

您多次使用ID“userlistactivityname”,例如你定义一个textview并给它id id userlistactivityname,但是后来你也有一个id为“userlistactivityname”的按钮

<TextView
    android:id="@+id/userlistactivityname"
    ...
    android:divider="@null" >
</TextView>

<Button
    android:id="@+id/btnMatchConfirm"
    android:layout_width="100dp"
    android:layout_height="50dp"
    android:layout_below="@+id/userlistactivityname"
    ...
    android:typeface="serif" />

也许您甚至将另一个小部件定义为“userlistactivityname”。 搜索“userlistactivityname”的所有布局,并确保id是唯一的!

答案 1 :(得分:0)

当您希望视图低于/高于/离开另一个视图时,使用代码引用该视图

@id/view_id

如果要向Android R文件添加新ID,请使用代码

@+id/new_view_id

如果您始终使用@ + id /,则可以在R文件中创建问题。尝试更改代码中的所有引用以使其更清晰,并且在指定android:id

时仅使用@ + id /
<Button
    android:id="@+id/btnMatchConfirm"
    android:layout_width="100dp"
    android:layout_height="50dp"
    android:layout_below="@id/userlistactivityname"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="9dp"
    android:alpha="0.7"
    android:background="#ADD8E6"
    android:text="Confirm"
    android:textColor="#000000"
    android:textSize="22sp"
    android:typeface="serif" />