Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将数据从云获取到android_Android_List_Cloud - Fatal编程技术网

如何将数据从云获取到android

如何将数据从云获取到android,android,list,cloud,Android,List,Cloud,我已经完成了从android到云的数据插入,我正在尝试做的是,我想从存储的云中获取数据(据我所知),列出对象“在云中包含字符串数据类型”,并将其设置到TextView中 这是我的密码: package com.cloud.test; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.View; im

我已经完成了从android到云的数据插入,我正在尝试做的是,我想从存储的云中获取数据(据我所知),列出对象“在云中包含字符串数据类型”,并将其设置到TextView中 这是我的密码:

package com.cloud.test;

import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

import com.parse.FindCallback;
import com.parse.Parse;
import com.parse.ParseException;
import com.parse.ParseObject;
import com.parse.ParseQuery;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //id from the cloud and perfectly working
        Parse.initialize(this, "idp7tOItFQ1TeQ87NqG5okzgsTzBZSfOmTh3LjbJ", "sPlps2HcBLzfBcZTG8uUFPi5gHkGbwFYVGHhGtwd");


    }
    public void onClick(View v) {
        switch (v.getId()) {
        case R.id.btn1:
            /**
             * this is for inserting data to cloud
             */
            EditText et1 = (EditText)findViewById(R.id.et1);
            EditText et2 = (EditText)findViewById(R.id.et2);
            EditText et3 = (EditText)findViewById(R.id.et3);
            String name = et1.getText().toString();
            int price = Integer.parseInt(et2.getText().toString());
            String desc = et3.getText().toString();
            ParseObject test = new ParseObject("Wardrobe");

            test.put("price", price);
            test.put("name", name);
            test.put("description", desc);
            test.saveInBackground();
            break;

        case R.id.btn2:
            /**
             * below is my problem, i don't know how do i actually get the data from the list
             * which is all String
             */
            ParseQuery query = new ParseQuery("Wardrobe");
            query.whereEqualTo("description", "male");
            query.findInBackground(new FindCallback() {
                @Override
                public void done(List<ParseObject> dataList, ParseException e) {
                    // TODO Auto-generated method stub
                     if (e == null) {
                         TextView tv1 = (TextView)findViewById(R.id.tv1);
                         TextView tv2 = (TextView)findViewById(R.id.tv2);
                         TextView tv3 = (TextView)findViewById(R.id.tv3);
                            /**
                             * here i want to set the data to the TextView to be viewed by the user
                             */
                            Log.d("score", "Retrieved " + dataList.size() + " scores");
                        } else {
                            Log.d("score", "Error: " + e.getMessage());
                        }
                }
            });
            break;
        default:
            break;
        }

    }
}
package com.cloud.test;
导入java.util.List;
导入android.app.Activity;
导入android.os.Bundle;
导入android.util.Log;
导入android.view.view;
导入android.widget.EditText;
导入android.widget.TextView;
导入com.parse.FindCallback;
导入com.parse.parse;
导入com.parse.ParseException;
导入com.parse.ParseObject;
导入com.parse.ParseQuery;
公共类MainActivity扩展了活动{
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//来自云端的id,工作正常
初始化(这是“idp7tOItFQ1TeQ87NqG5okzgsTzBZSfOmTh3LjbJ”,“sPlps2HcBLzfBcZTG8uUFPi5gHkGbwFYVGHhGtwd”);
}
公共void onClick(视图v){
开关(v.getId()){
案例R.id.btn1:
/**
*这是用于向云插入数据的
*/
EditText et1=(EditText)findViewById(R.id.et1);
EditText et2=(EditText)findViewById(R.id.et2);
EditText et3=(EditText)findViewById(R.id.et3);
字符串名称=et1.getText().toString();
int price=Integer.parseInt(et2.getText().toString());
字符串desc=et3.getText().toString();
ParseObject测试=新的ParseObject(“衣橱”);
测试。卖出(“价格”,价格);
测试。输入(“名称”,名称);
测试。放置(“说明”,描述);
test.saveInBackground();
打破
案例R.id.btn2:
/**
*下面是我的问题,我不知道如何从列表中获取数据
*都是字符串
*/
ParseQuery查询=新的ParseQuery(“衣柜”);
查询:whereEqualTo(“描述”、“男性”);
findInBackground(新的FindCallback(){
@凌驾
公共作废完成(列表数据列表,Parsee异常){
//TODO自动生成的方法存根
如果(e==null){
TextView tv1=(TextView)findViewById(R.id.tv1);
TextView tv2=(TextView)findViewById(R.id.tv2);
TextView tv3=(TextView)findViewById(R.id.tv3);
/**
*这里我想将数据设置为用户要查看的TextView
*/
Log.d(“分数”、“检索到的分数”+dataList.size()+“分数”);
}否则{
Log.d(“分数”,“错误:+e.getMessage());
}
}
});
打破
违约:
打破
}
}
}
提前谢谢你帮助我


下面是我使用的一个更新
String.value(dataList)com.parse。ParseObject@44f904b8,com.parse。ParseObject@44f90a30

除非您有一个重写的toString方法来打印出不同的内容,否则它会打印出类以及我认为是内存地址之类的内容。如果要使用String.value(或toString-same thing),则需要重写ParseObject的toString方法。如果您不想或无权访问该代码,则需要从ParseObject类提供的getter方法手动生成所需的字符串。

public void done(List dataList,parsee){
public void done(List<ParseObject> dataList, ParseException e) {
                    // TODO Auto-generated method stub
                     if (e == null) {

                           TextView tv1 = (TextView)findViewById(R.id.tv1);
                        for(int x = 0; x < scoreList.size(); x++)
                        {
                         String d =  scoreList.get(x).getString("name");                         
                         tv1.setText(tv1.getText()+" "+d);
                        }
                            Log.d("score", "Retrieved " + dataList.size() + " scores");
                        } else {
                            Log.d("score", "Error: " + e.getMessage());
                        }
                }
            });
//TODO自动生成的方法存根 如果(e==null){ TextView tv1=(TextView)findViewById(R.id.tv1); 对于(int x=0;x