Android 帕塞恩';不能在ArrayAdapter中创建
我试图在Card对象和user对象之间创建一个解析关系。当用户在自定义arrayadapter中单击行中的like按钮时,我会看到“已保存”消息,但不会在Parse databrowser上添加关系 以下是自定义arrayadapter中的代码Android 帕塞恩';不能在ArrayAdapter中创建,android,parse-platform,android-arrayadapter,parse-android-sdk,Android,Parse Platform,Android Arrayadapter,Parse Android Sdk,我试图在Card对象和user对象之间创建一个解析关系。当用户在自定义arrayadapter中单击行中的like按钮时,我会看到“已保存”消息,但不会在Parse databrowser上添加关系 以下是自定义arrayadapter中的代码 public class CardAdapter extends ArrayAdapter<ParseObject> { public static final String TAG = CardAdapter.class.getS
public class CardAdapter extends ArrayAdapter<ParseObject> {
public static final String TAG = CardAdapter.class.getSimpleName();
protected Context mContext;
protected List<ParseObject> mCards;
protected ParseRelation<ParseObject> mCardsLikeRelation;
protected ParseUser mCurrentUser;
public CardAdapter(Context context, List<ParseObject> cards) {
super(context, R.layout.card_item, cards);
mContext = context;
mCards = cards;
mCurrentUser = ParseUser.getCurrentUser();
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if(convertView == null){
convertView = LayoutInflater.from(mContext).inflate(R.layout.card_item, parent, false);
holder = new ViewHolder();
holder.CardImageView = (ImageView) convertView.findViewById(R.id.cardImage);
holder.CardContent = (TextView) convertView.findViewById(R.id.cardText);
holder.CardLikeButton = (Button)convertView.findViewById(R.id.likeButton);
convertView.setTag(holder);
}
else{
holder = (ViewHolder) convertView.getTag();
}
final ParseObject card = mCards.get(position);
if(card != null) {
mCardsLikeRelation = mCurrentUser.getRelation("cardLikesRelation");
holder.CardContent.setText(card.getString("content"));
holder.CardLikeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(mContext, card.getObjectId(),
Toast.LENGTH_LONG).show();
mCardsLikeRelation.add(card);
mCurrentUser.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
if (e != null) {
Log.e(TAG, e.getMessage());
}
else{
Log.e(TAG, "saved");
}
}
});
}
});
}
return convertView;
}
private static class ViewHolder{
ImageView CardImageView;
TextView CardContent;
Button CardLikeButton;
TextView CardLikes;
ProgressBar progress;
}
public void refill(List<ParseObject> cards){
mCards.clear();
mCards.addAll(cards);
notifyDataSetChanged();
}
}
公共类CardAdapter扩展了ArrayAdapter{
公共静态最终字符串标记=cardapter.class.getSimpleName();
保护上下文mContext;
保护列表mCards;
保护关系mCardsLikeRelation;
受保护的用户mCurrentUser;
公共卡适配器(上下文、列表卡){
超级(上下文、右布局、卡片项、卡片);
mContext=上下文;
mCards=卡片;
mCurrentUser=ParseUser.getCurrentUser();
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
视窗座;
if(convertView==null){
convertView=LayoutFlater.from(mContext).充气(R.layout.card_项,父项,false);
holder=新的ViewHolder();
holder.CardImageView=(ImageView)convertView.findViewById(R.id.cardImage);
holder.CardContent=(TextView)convertView.findViewById(R.id.cardText);
holder.CardLikeButton=(按钮)convertView.findViewById(R.id.likeButton);
convertView.setTag(支架);
}
否则{
holder=(ViewHolder)convertView.getTag();
}
最终解析对象卡=mCards.get(位置);
如果(卡!=null){
mcardslikerrelation=mccurrentuser.getRelation(“cardLikesRelation”);
holder.CardContent.setText(card.getString(“内容”);
holder.CardLikeButton.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
Toast.makeText(mContext,card.getObjectId(),
Toast.LENGTH_LONG).show();
添加(卡片);
mCurrentUser.saveInBackground(新的SaveCallback(){
@凌驾
公共作废完成(Parsee异常){
如果(e!=null){
Log.e(标记,e.getMessage());
}
否则{
Log.e(标记“已保存”);
}
}
});
}
});
}
返回视图;
}
私有静态类视图持有者{
图像视图;图像视图;
文本视图内容;
按钮卡片式按钮;
文本视图卡片;
进度条进度;
}
公共空白补充(列表卡){
mCards.clear();
mCards.addAll(卡片);
notifyDataSetChanged();
}
}