【问题标题】:How can I do an array for a listView with Strings located on parse.com?如何使用 parse.com 上的字符串为 listView 创建一个数组?
【发布时间】:2015-01-27 03:12:29
【问题描述】:

我有这个字符串数组只是为了测试列表视图

  <string-array name="prueba">

        <item> calculo </item>
        <item> fisica </item>
        <item>logica</item>
        <item>programacion</item>
        <item> adsad</item>
        <item>asdasdasdsad</item>
        <item> trtr </item>
        <item> yuuyu </item>
        <item>ngngn</item>
        <item>dgdg</item>
        <item> liuj</item>
        <item>kmbbm</item>

    </string-array>

这是列表视图代码

public class Grades extends ListFragment implements AdapterView.OnItemClickListener {    

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        return inflater.inflate(R.layout.grades_fragment,container,false);    
    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        ArrayAdapter adapter = ArrayAdapter.createFromResource(getActivity(), R.array.prueba, android.R.layout.simple_list_item_1);
        setListAdapter(adapter);
        getListView().setOnItemClickListener(this);
    }    

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {    

        Toast.makeText(getActivity(),"item" + position , Toast.LENGTH_SHORT).show();

    }
}

所以我想要的不是使用那个“测试”数组,而是使用我 Parse.com 数据上的一些字符串,当字符串添加到 Parse.com 中的数据库时,将元素添加到数组中

我该怎么做?

【问题讨论】:

    标签: java android android-listview parse-platform


    【解决方案1】:

    有一些关于如何从 parse.com here -> android_guide#objects 检索数据的信息 使用 ParseQuery,您可以获得 ParseObject。 然后,您可以查询此对象的详细信息并将其添加到您的列表视图中。

    上面链接中的代码 sn-ps。

    获取对象。

    ParseQuery<ParseObject> query = ParseQuery.getQuery("GameScore");
    query.getInBackground("xWMyZ4YEGZ", new GetCallback<ParseObject>() {
      public void done(ParseObject object, ParseException e) {
        if (e == null) {
          // object will be your game score
        } else {
          // something went wrong
        }
      }
    });
    

    查询对象:

    int score = gameScore.getInt("score");
    String playerName = gameScore.getString("playerName");
    boolean cheatMode = gameScore.getBoolean("cheatMode");
    

    它们对所有数据类型都有“getX”方法。

    将此添加到您的列表视图。 使用arrayadapter

    void add(T 对象)

    在数组末尾添加指定的对象。

    void addAll(集合集合)

    在数组末尾添加指定的集合。

    void addAll(T... items)

    在数组末尾添加指定项。

    这个post here 展示了如何使用它。

    【讨论】:

      【解决方案2】:

      您需要从对象中获取与您保存时使用的名称相同的字符串。比如说它是 listStrings。

      ParseQuery<ParseObject> myObject= ParseQuery.getQuery("listStrings");
      

      然后调用这个函数

      myObject.fetchInBackground(new GetCallback<ParseObject>() {
        public void done(ParseObject object, ParseException e) {
         if (e == null) {
           // Assign the values here and use it accordingly
         } else {
           // Failure!
        }
      }
      });
      

      您还可以使用以下功能:

      fetchAllInBackground(List<T> objects)
      

      【讨论】:

      • 然后,我怎样才能让那个字符串进入我的数组?
      • 如果您使用 fetchAllInBackground,只需使用 for 循环直到列表大小并从每个 parseobject 读取所需的字符串值并将其添加到您的列表中 myLIst.add(object.get("myvalue"));
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多