如何制作像facebook这样的新闻源?

时间:2014-12-04 12:35:15

标签: android facebook news-feed

我想制作一个像facebook这样的应用程序新闻,它会成为一个带有图像的文本打开一个新页面,但我实际上并不知道它是什么'我打电话给所以我无法在互联网上搜索我不知道它名字的东西,所以如果有人可以告诉我它叫什么或如何制作像facebook这样的新闻这个想法的教程。

3 个答案:

答案 0 :(得分:11)

这基本上是ListView和ListAdapter。

您必须根据需要更改默认的ListView布局。

根据您的要求,要实现Facebook布局,您可以按照此资源链接获取帮助

http://www.androidhive.info/2014/06/android-facebook-like-custom-listview-feed-using-volley/

答案 1 :(得分:5)

您必须阅读有关ListViewListAdapter的信息。将解决方案基于它们。

答案 2 :(得分:1)

我会给你一个选择,第一步。您可以通过JSON使用请求来搜索存储在所服务的网站上的文本和图像。

// DownloadJSON AsyncTask
    private class DownloadJSON extends AsyncTask<Void, Void, Void> {

        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            // Create a progressdialog
            mProgressDialog = new ProgressDialog(MainActivity.this);
            // Set progressdialog title
            mProgressDialog.setTitle("Your app");
            // Set progressdialog message
            mProgressDialog.setMessage("Loading...");
            mProgressDialog.setIndeterminate(false);
            // Show progressdialog
            mProgressDialog.show();

        }

        @Override
        protected Void doInBackground(Void... params) {


            // Create an array
            arraylist = new ArrayList<HashMap<String, String>>();
            // Retrieve JSON Objects from the given URL address
            jsonobject = JSONfunctions
                    .getJSONfromURL("YOUR_PATH_URL_CONECT.PHP");

            try {



                // Locate the array name in JSON
                jsonarray = jsonobject.getJSONArray("value");


                for (int i = 0; i < jsonarray.length(); i++) {
                    HashMap<String, String> map = new HashMap<String, String>();
                    jsonobject = jsonarray.getJSONObject(i);
                    // Retrive JSON Objects
                    map.put("thumbImage", jsonobject.getString("thumbImage"));
                    map.put("title", jsonobject.getString("title"));


                    // Set the JSON Objects into the array
                    arraylist.add(map);
                }
            } catch (JSONException e) {
                Log.e("Error", e.getMessage());
                e.printStackTrace();
            }
            return null;
        }

        @Override
        protected void onPostExecute(Void args) {
            // Locate the listview in listview_main.xml
            listview = (ListView) findViewById(R.id.listview);
            // Pass the results into ListViewAdapter.java
            adapter = new ListViewAdapter(MainActivity.this, arraylist);
            // Set the adapter to the ListView
            listview.setAdapter(adapter);
            // Close the progressdialog
            mProgressDialog.dismiss();


                return;

        }
    }

YOUR_PATH_URL_CONECT.PHP

echo '{"value":'.json_encode($yourArrayJsonObject).'}';

现在完成其余的创建适配器。