我相信有文本视图,但不能在下面的代码中强制转换为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>
提前致谢。
答案 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" />