gpt4 book ai didi

java - 在 ListView 中使用 android studio 从 Parse 中的指针检索数据

转载 作者:行者123 更新时间:2023-11-30 03:13:45 25 4
gpt4 key购买 nike

我在 Parse.com 中有两个类(class)

1-称为HospitalAppointment,其中包含预约列表,每个对象都有(AppointmentDate(日期)、DoctorFile(指针(指向医生类))和其他...)

2-名为医生的类(class)(有医生姓名(字符串)、ID ..其他信息)

我在 android studio 中有 2 个 java 类

1- 我的主要 Activity 在本类(class)中我查询 HospitalAppointment 类(class)

    ParseQuery<ParseObject> doctors = ParseQuery.getQuery("HospitalAppointment");
doctors.whereEqualTo("AppointmentDate",startDate);
doctors.findInBackground(new FindCallback<ParseObject>() {
@Override
public void done(List<ParseObject> status, com.parse.ParseException e) {
if (status == null) {
Log.d("score", "no doctor available: ");
} else {
mStatus = status;
DoctorAdapter adapter = new DoctorAdapter(getListView().getContext(), mStatus);
setListAdapter(adapter);
}
}
});

在 DoctorAdapter Activity 中,我为 ListView 编写函数是问题所在

public class DoctorAdapter extends ArrayAdapter<ParseObject> {
protected Context mContext;
protected List<ParseObject> mStatus;

public DoctorAdapter(Context context, List<ParseObject> status) {
super(context, R.layout.doctor_listadapter, status);
mContext = context;
mStatus = status;
}


//getview used to inflate each row
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = LayoutInflater.from(mContext).inflate(
R.layout.doctor_listadapter, null);
holder = new ViewHolder();//create new view
holder.mDocName = (TextView) convertView.findViewById(R.id.doctorName);//very imp to convertview
holder.mDocId = (TextView) convertView.findViewById(R.id.doctorId);

convertView.setTag(holder);//holder as parameter
} else {
holder = (ViewHolder) convertView.getTag();

}

ParseObject statusObject = mStatus.get(position);//postition of that row


ParseObject getDoctorID = statusObject.getParseObject("DoctorName");
String docId= getDoctorID.getObjectId();
holder.mDocId.setText(docId);


*// here is the problem I cannot retrive the Pointer data like Doctor name*


return convertView;
}

public static class ViewHolder {

TextView mDocId;
TextView mDocName;
}}

我检索了对象 Id 但指针中存在问题我无法从指针获取任何数据我尝试查询方法我将类名称为“Doctors”并且我确实找到了“医生的 ID 来获取他的 ID”名称,但不起作用

我尝试解析对象,我得到了这个对象,但也不起作用?

希望你能帮助我

最佳答案

尝试这样

ParseObject hospitalAppointment = mStatus.get(position);//postition of that row

ParseObject doctor = hospitalAppointment.getParseObject("columnName");
doctor.fetchIfNeededInBackground(new GetCallback<ParseObject>() {
public void done(ParseObject doctor, ParseException e) {
String docId= doctor.getObjectId();
// Do something with your new title variable
}
});

关于java - 在 ListView 中使用 android studio 从 Parse 中的指针检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33096997/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com