2017-01-16 84 views
-1

RecyclerView.Adapter类[DataAdapter]:回收站视图数据甚至不显示

public class DataAdapter extends RecyclerView.Adapter<Fragment_seller_main.DataAdapter.ViewHolder> 
    { 
     private Context context; 
     private ArrayList<String> title1; 
     private ArrayList<String> id1; 
     private ArrayList<Bitmap> image1; 

    DataAdapter(Context context,ArrayList<String> title,ArrayList<String> id,ArrayList<Bitmap> image) 
    { 
     this.context = context; 
     this.title1=title; 
     this.id1=id; 
     this.image1=image; 
    } 

    @Override 
    public Fragment_seller_main.DataAdapter.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) 
    { 
     View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.custom_view_shop, viewGroup, false); 
     return new Fragment_seller_main.DataAdapter.ViewHolder(view); 
    } 

    @Override 
    public void onBindViewHolder(ViewHolder holder, final int position) 
    { 
     holder.textView_title.setText(title.get(position)); 
     holder.imageView_main_image.setImageBitmap(image.get(position)); 
     final int v=position; 
     holder.button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       Toast.makeText(getActivity().getApplicationContext(),id.get(v),Toast.LENGTH_SHORT).show(); 
      } 
     }); 
    } 

    @Override 
    public int getItemCount() { 
     return title.size(); 
    } 

    class ViewHolder extends RecyclerView.ViewHolder 
    { 
     private TextView textView_title; 
     private ImageView imageView_main_image; 
     private Button button; 

     ViewHolder(View view) 
     { 
      super(view); 
      textView_title= (TextView) view.findViewById(R.id.textView5); 
      imageView_main_image= (ImageView) view.findViewById(R.id.image_view_main_list_view_seller_main); 
      button= (Button) view.findViewById(R.id.button5); 

     } 
    } 
} 

排球请求:

StringRequest stringRequest=new StringRequest(Request.Method.POST, "http://192.168.1.7:8000/getshops", new Response.Listener<String>() { 
     @Override 
     public void onResponse(String response) 
     { 
      try 
      { 
       JSONObject jsonObject=new JSONObject(response); 
       JSONArray jsonArray=jsonObject.getJSONArray("result"); 
       int count=0; 
       while (count<jsonArray.length()) 
       { 
        JSONObject jsonObject1=jsonArray.getJSONObject(count); 
        title.add(jsonObject1.getString("shopownername")); 
        id.add(jsonObject1.getString("shopid")); 
        byte[] decodedString = Base64.decode(jsonObject1.getString("shopimage1"), Base64.DEFAULT); 
        Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length); 
        int nh = (int) (decodedByte.getHeight() * (512.0/decodedByte.getWidth())); 
        Bitmap scaled = Bitmap.createScaledBitmap(decodedByte, 512, nh, true); 
        image.add(scaled); 
        count++; 
       } 
      } 
      catch(Exception e) 
      { 
       Toast.makeText(getActivity().getApplicationContext(),e.toString(),Toast.LENGTH_LONG).show(); 
      } 
     } 
    }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) 
     { 
      Toast.makeText(getActivity().getApplicationContext(),error.toString(),Toast.LENGTH_LONG).show(); 
     } 
    }){ 
     @Override 
     protected Map<String, String> getParams() throws AuthFailureError { 
      Map<String,String> stringMap=new Hashtable<>(); 
      stringMap.put("owner_name",getActivity().getSharedPreferences("mentor",Context.MODE_PRIVATE).getString("phone","default")); 
      return stringMap; 
     } 
    }; 
    RequestQueue requestQueue=newRequestQueue(getActivity().getApplicationContext()); 
    requestQueue.add(stringRequest); 
    requestQueue.addRequestFinishedListener(this); 
//上创建视图和侦听

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
{ 
    View v= inflater.inflate(R.layout.fragment_seller_main, container, false); 
recyclerView= (RecyclerView) v.findViewById(R.id.recycler_view_seller_my_shops); 
    get_data_shops(); 
    return v; 
} 

排球请求监听器:

public void onRequestFinished(Request<Object> request) 
{ 
    RecyclerView.Adapter adapter=new DataAdapter(getActivity().getApplicationContext(),title,id,image); 
    recyclerView.setAdapter(adapter); 
} 

即使从Volley收到数据,我该如何显示数据?

+0

什么是你的问题的一些代码? –

回答

0

我只是错过了在oncreateView

recyclerView.setHasFixedSize(true); 
    LinearLayoutManager lay=new LinearLayoutManager(getActivity().getApplicationContext(),LinearLayoutManager.HORIZONTAL,false); 
    recyclerView.setLayoutManager(lay); 
相关问题