记性真的不行啊...贴上来有时间多复习复习
主活动
package com.example.com.webtext; import android.content.Intent; import android.support.v4.view.GravityCompat; import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.support.v7.widget.RecyclerView; import android.support.v7.widget.StaggeredGridLayoutManager; import android.support.v7.widget.Toolbar; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import com.bumptech.glide.Glide; import org.json.JSONArray; import org.json.JSONObject; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { private List<massage > Mymassage=new ArrayList<>() ; private List<massage > Mymassage1=new ArrayList<>() ; private SwipeRefreshLayout swipeRefresh; TextView nameText; TextView summaryText; ImageView img; String adress; adapter massageAdapter; @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu .toolbar ,menu ) ; return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item .getItemId() ){ case R.id.backup : Toast.makeText(this,"You clicked Backup",Toast .LENGTH_SHORT ).show() ; break; case R.id.delete : Toast.makeText(this,"You clicked Delete",Toast .LENGTH_SHORT ).show() ; break; case R.id.settings : Toast.makeText(this,"You clicked Settings",Toast .LENGTH_SHORT ).show() ; break; default : } return true; } private static final String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar =(Toolbar) findViewById(R.id.toolbar) ; setSupportActionBar(toolbar); adress ="https://qcloud.waydrow.com/LoveInn/index.php/Home/App/getInfoList"; nameText =(TextView) findViewById(R.id.name ) ; summaryText =(TextView) findViewById(R.id.summery); img=(ImageView) findViewById(R.id.photo) ; RecyclerView recyclerView =(RecyclerView ) findViewById(R.id.recycler_view); StaggeredGridLayoutManager LayoutManager=new StaggeredGridLayoutManager(1,StaggeredGridLayoutManager.VERTICAL) ; recyclerView .setLayoutManager(LayoutManager ); massageAdapter =new adapter(Mymassage ); recyclerView .setAdapter(massageAdapter ) ; getHTTP() ; /*massageAdapter.setOnItemClickListener(new adapter.OnItemClickListener(){ @Override public void onItemClick(View view, int position) { massage massage =Mymassage .get(position ); Intent intent =new Intent(MainActivity .this,DetailMassage.class ); intent .putExtra("id",massage.getId()) ; MainActivity .this.startActivity(intent); Toast.makeText(MainActivity.this, "dfghjk",Toast .LENGTH_SHORT ).show(); } });*/ swipeRefresh=(SwipeRefreshLayout) findViewById(R.id.swipe_refresh ); swipeRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(750); } catch (InterruptedException e) { e.printStackTrace(); } runOnUiThread(new Runnable() { @Override public void run() { getHTTP1() ; swipeRefresh.setRefreshing(false); } }); } }).start(); } }); } public void getHTTP(){ HttpUtil.sendHttpRequest(adress ,new HttpCallbackListener(){ @Override public void onFinish(String response){ parseJSONWithJSONObject(response ); } @Override public void onError(Exception e){ e.printStackTrace(); Toast .makeText(MainActivity .this,"There is no detial!",Toast .LENGTH_LONG).show() ; } }); } public void getHTTP1(){ HttpUtil.sendHttpRequest(adress ,new HttpCallbackListener(){ @Override public void onFinish(String response){ parseJSONWithJSONObject1(response ); runOnUiThread(new Runnable() { @Override public void run() { massageAdapter.notifyDataSetChanged(); } }) ; } @Override public void onError(Exception e){ e.printStackTrace(); Toast .makeText(MainActivity .this,"There is no detial!",Toast .LENGTH_SHORT ).show() ; } }); } private void parseJSONWithJSONObject1(final String jsonData){ try{ JSONArray jsonArray =new JSONArray(jsonData ) ; for(int i=0;i<jsonArray .length() ;i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String name = jsonObject.getString("name"); String summary = jsonObject.getString("summary"); String imgUrl = "https://qcloud.waydrow.com" + jsonObject.getString("photo"); String id=jsonObject .getString("id") ; massage massage1 = new massage(name, summary, imgUrl,id); Mymassage .add(massage1 ) ; } Mymassage1 =Mymassage ; } catch (Exception e){ e.printStackTrace() ; } } private void parseJSONWithJSONObject(final String jsonData){ try{ JSONArray jsonArray =new JSONArray(jsonData ) ; for(int i=0;i<jsonArray .length() ;i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String name = jsonObject.getString("name"); String summary = jsonObject.getString("summary"); String imgUrl = "https://qcloud.waydrow.com" + jsonObject.getString("photo"); String id=jsonObject .getString("id") ; massage massage1 = new massage(name, summary, imgUrl,id); Mymassage .add(massage1 ) ; } setUI(); } catch (Exception e){ e.printStackTrace() ; } } public void setUI(){ runOnUiThread(new Runnable() { @Override public void run() { setRecyclerview(); } }) ; } public void setRecyclerview(){ RecyclerView recyclerView =(RecyclerView ) findViewById(R.id.recycler_view); StaggeredGridLayoutManager LayoutManager=new StaggeredGridLayoutManager(1,StaggeredGridLayoutManager.VERTICAL) ; recyclerView .setLayoutManager(LayoutManager ); if(Mymassage .size() ==0){ Toast .makeText(MainActivity .this,"There is no detial!",Toast .LENGTH_SHORT ).show() ; String summary = "summary"; String imgUrl = " " ; massage massage1 = new massage("", summary, imgUrl,"0"); Mymassage.add(massage1 ); massageAdapter = new adapter(Mymassage); recyclerView.setAdapter(massageAdapter); Mymassage =new ArrayList<>(); } else { massageAdapter = new adapter(Mymassage); recyclerView.setAdapter(massageAdapter); } runOnUiThread(new Runnable() { @Override public void run() { massageAdapter.setOnItemClickListener(new adapter.OnItemClickListener(){ @Override public void onItemClick(View view, int position) { massage massage1 =Mymassage1 .get(position ); Intent intent =new Intent(MainActivity .this,DetailMassage.class ); intent .putExtra("id",massage1.getId()) ; MainActivity .this.startActivity(intent); } }); } }); Mymassage1 =Mymassage ; Mymassage =new ArrayList<>(); } }