Android 需要修复我的适配器以在ListView中显示图像

Android 需要修复我的适配器以在ListView中显示图像,android,listview,imageview,Android,Listview,Imageview,android studio和java也是新手。只是到处学习 之前我在这里提出了要求,但每个人都回答了我的推荐信。你知道,对于一个新的学习者来说,很难从参考资料中理解 我试图用毕加索在listview中加载图像,但适配器出了问题。我需要的是修复我的适配器 其中一个选项卡的代码: 混乱的适配器: fin_tab.xml fin_item.xml 错误:在字符串url=MapgetItemposition.getFinTab.MURL上; 必需:java.lang.String找到:java.lan

android studio和java也是新手。只是到处学习

之前我在这里提出了要求,但每个人都回答了我的推荐信。你知道,对于一个新的学习者来说,很难从参考资料中理解

我试图用毕加索在listview中加载图像,但适配器出了问题。我需要的是修复我的适配器

其中一个选项卡的代码:

混乱的适配器:

fin_tab.xml

fin_item.xml

错误:在字符串url=MapgetItemposition.getFinTab.MURL上; 必需:java.lang.String找到:java.lang.Object

请帮帮我。

试试这个


如果您使用Android studio,您可以单击任何带下划线的符号,几秒钟后您可能会看到显示的红色感叹号,单击它,IDE建议您解决问题。

您面临的问题String url=MapgetItemposition.getFinTab.MURL;红色下划线表示小费
public class FinTab extends Fragment {
    ListView installs;
    ImageView image;
    static final String url = "http://192.168.5.2/test.php";
    ProgressBar dialog;
    private SimpleAdapter tva;

    static final String NAME = "name";
    static final String TASK = "task";
    static final String DESC = "desc";
    static final String MURL = "murl";


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.Fin_tab, container, false);


        installs = rootView.findViewById(R.id.install_list);
        image = rootView.findViewById(R.id.imgs);

        dialog = new ProgressBar(getActivity().getApplicationContext());
        dialog.setVisibility(View.VISIBLE);

        StringRequest request = new StringRequest(url, new Response.Listener<String>() {
            @Override
            public void onResponse(String string) {
                // parseJsonData(string);
                //start
                try {
                    JSONObject object = new JSONObject(string);
                    JSONArray offers = object.optJSONArray("lists");
                    ArrayList<HashMap<String, String>> list = new ArrayList<>();

                    HashMap<String, String> item;
                    for(int i = 0; i < offers.length(); i++) {
                        JSONObject jsonChildNode = offers.getJSONObject(i);
                        item = new HashMap<>();
                        item.put(NAME, jsonChildNode.optString("name"));
                        item.put(TASK, jsonChildNode.optString("tasker"));
                        item.put(DESC, jsonChildNode.optString("descript"));
                        item.put(MURL, jsonChildNode.optString("picture"));
                        //String imageUrl = jsonChildNode.optString("picture");
                        //Picasso.with(getActivity()).load(imageUrl).into(image);

                        list.add(item);
                    }
                    tva = new MyAdapter(getActivity(), list,
                            R.layout.fin_item,
                            new String[]{NAME, TASK, DESC, MURL},
                            new int[]{R.id.line_a, R.id.line_b, R.id.line_c, R.id.imgs});
                    installs.setAdapter(tva);

                } catch (JSONException e) {
                    e.printStackTrace();
                }

                dialog.setVisibility(View.GONE);
                //end

            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError volleyError) {
                Toast.makeText(getActivity().getApplicationContext(), "Some error occurred!!", Toast.LENGTH_SHORT).show();
                dialog.setVisibility(View.GONE);
            }
        });

        RequestQueue rQueue = Volley.newRequestQueue(getActivity().getApplicationContext());
        rQueue.add(request);

        return rootView;

    }

}
public class MyAdapter extends SimpleAdapter {

    public MyAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to){
        super(context, data, resource, from, to);
    }

    public View getView(int position, View convertView, ViewGroup parent){

        View v = super.getView(position, convertView, parent);

        ImageView img = (ImageView) v.getTag();
        if(img == null){
            img = (ImageView) v.findViewById(R.id.imgs);
            v.setTag(img);
        }

        String url = ((Map)getItem(position)).get(FinTab.MURL);

        Picasso.with(v.getContext()).load(url).into(img);


        return v;
    }
}
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.finetcity.fins">

    <ListView
        android:id="@+id/install_list"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">


    <TextView
        android:id="@+id/line_a"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textSize="22sp"
        android:textStyle="italic" />

    <TextView
        android:id="@+id/line_b"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textSize="14sp" />
    <TextView
        android:id="@+id/line_c"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textSize="14sp" />
    <TextView
        android:id="@+id/line_d"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textSize="14sp" />
    <ImageView
        android:id="@+id/imgs"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:background="#000000"
        android:padding="1dp" />
</LinearLayout>
String url = ((Map)getItem(position)).get(FinTab.MURL).toString();
String url = String.valueOf(((Map)getItem(position)).get(FinTab.MURL));