Java 我完成了listview,点击listview后,它可以在android studio中显示url mysql的图像

Java 我完成了listview,点击listview后,它可以在android studio中显示url mysql的图像,java,android,listview,Java,Android,Listview,这是timeline.java文件显示列表视图: public class timetable extends AppCompatActivity { ListView lv; // Let's set up a string array to inflate the listview with ArrayAdapter<String> adapter; String address = "http://192.168.1.10/timetabl

这是
timeline.java
文件显示列表视图:

public class timetable extends AppCompatActivity {

    ListView lv;

    // Let's set up a string array to inflate the listview with
    ArrayAdapter<String> adapter;

    String address = "http://192.168.1.10/timetable/conn.php";

    InputStream is = null;

    String line = null;

    String result = null;

    String[] data;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_timetable);

        lv = (ListView) findViewById(R.id.lv);

        // allow network in main thread
        StrictMode.setThreadPolicy((new StrictMode.ThreadPolicy.Builder().permitNetwork().build()));

        // retrieve
        getData();

        // adapter
        adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, data);
        lv.setAdapter(adapter);
        // register onClickListener to handle click events on each item
        lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            // argument position gives the index of item which is clicked
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String selectedClass = data[position];
            Toast.makeText(getApplicationContext(), selectedClass+" selected",   Toast.LENGTH_LONG).show();
            Intent intent = new Intent (timetable.this, SecondActivity.class);
            intent.putExtra("SELECTED_CLASS", selectedClass);
            startActivity(intent);
            }
        });
    }

    private void getData() {
        try {
            URL url = new URL(address);
            HttpURLConnection con = (HttpURLConnection) url.openConnection();

            con.setRequestMethod("GET");

            is = new BufferedInputStream(con.getInputStream());

        } catch (Exception e) {
            e.printStackTrace();
        }
        // read is content into a string
        try {
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            StringBuilder sb = new StringBuilder();

            while ((line = br.readLine()) != null) {
                sb.append(line + "\n");
            }
            is.close();
            result = sb.toString();

        } catch (Exception e) {
            e.printStackTrace();
        }
        // parse json data
        try {
            JSONArray ja = new JSONArray(result);
            JSONObject jo = null;

            data = new String[ja.length()];

            for (int i = 0; i < ja.length(); i++) {
                jo = ja.getJSONObject(i);
                data[i] = jo.getString("classname");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
}


我在listview中有16个类名,我想在用户单击每个类名时执行此操作,它将从url mysql检索图片(时间表)存储。每个类名都有不同的图像。现在我完成了listview,但是当单击all列表时,它也检索到了相同的图像。我的想法是使用if-else,但我不知道代码

如果您想将值
selectedclass
时间表
传递到
第二个活动
,则使用
Intent.putExtra()
并更新您的
onItemClick
方法广告如下:

timeline.java:

    lv.setOnItemClickListener(new AdapterView.OnItemClickListener()
    {
        // argument position gives the index of item which is clicked
        public void onItemClick(AdapterView<?> parent, View view, int position, long id)
        {
            String selectedclass = data[position];
            Toast.makeText(getApplicationContext(), selectedclass+" selected",   Toast.LENGTH_LONG).show();

            Intent intent = new Intent (timetable.this, SecondActivity.class);
            intent.putExtra("SELECTED_CLASS", selectedclass);
            startActivity(intent);
        }
    });
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_second);

    iv = (ImageView) findViewById(R.id.imageView1);

    Bundle bundle = getIntent().getExtras();
    String selectedClass = "";

    if(bundle != null){
        selectedClass = bundle.getString("SELECTED_CLASS");
    }

    String imageUrl = "";

     if (selectedClass.equalsIgnoreCase("PERP - BILIK SEMINAR 1"))
        imageUrl = "http://192.168.1.10/timetable/class/bs1.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK SEMINAR 2"))
        imageUrl = "http://192.168.1.10/timetable/class/bs2.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 1"))
        imageUrl = "http://192.168.1.10/timetable/class/bt1.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 2"))
        imageUrl = "http://192.168.1.10/timetable/class/bt2.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 3"))
        imageUrl = "http://192.168.1.10/timetable/class/bt3.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 4"))
        imageUrl = "http://192.168.1.10/timetable/class/bt4.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 5"))
        imageUrl = "http://192.168.1.10/timetable/class/bt5.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 6"))
        imageUrl = "http://192.168.1.10/timetable/class/bt6.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 7"))
        imageUrl = "http://192.168.1.10/timetable/class/bt7.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 8"))
        imageUrl = "http://192.168.1.10/timetable/class/bt8.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 9"))
        imageUrl = "http://192.168.1.10/timetable/class/bt9.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 10"))
        imageUrl = "http://192.168.1.10/timetable/class/bt10.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 1"))
        imageUrl = "http://192.168.1.10/timetable/class/dk1.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 2"))
        imageUrl = "http://192.168.1.10/timetable/class/dk2.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 3"))
        imageUrl = "http://192.168.1.10/timetable/class/dk3.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 4"))
        imageUrl = "http://192.168.1.10/timetable/class/dk4.jpg";

    bitmap = getBitmapFromURL(imageUrl);
    iv.setImageBitmap(bitmap);

    mAttacher = new PhotoViewAttacher(iv);
}

非常感谢您…我在listview中有16个类名,我想在用户单击每个类名时执行此操作,它将从url mysql检索图片(时间表)存储。每个类名都有不同的图像。现在我完成了listview,但是当单击all列表时,它也检索到了相同的图像。我的想法是使用if-else,但我不知道代码…top有我的输出图像我已经按照您的方式进行了操作,但仍然没有工作…我已经更新了SecondActivity.java您是否在您的第二个活动中应用了if-else条件?ya top有我更新的timeline.java和SecondActivity.java编码,你能帮我看看有什么问题吗?你总是把你选择的类与bs2进行比较。改变它。如果您选择的类是XXX,并且XXX的图像是“”,那么您可以使用>>如果(selectedClass.equalsIgnoreCase(“XXX”))imageUrl=“”;您的类名是什么?类名存储在mysql中,我将其重新体验到listview
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_second);

    iv = (ImageView) findViewById(R.id.imageView1);

    Bundle bundle = getIntent().getExtras();
    String selectedClass = "";

    if(bundle != null){
        selectedClass = bundle.getString("SELECTED_CLASS");
    }

    String imageUrl = "";

     if (selectedClass.equalsIgnoreCase("PERP - BILIK SEMINAR 1"))
        imageUrl = "http://192.168.1.10/timetable/class/bs1.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK SEMINAR 2"))
        imageUrl = "http://192.168.1.10/timetable/class/bs2.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 1"))
        imageUrl = "http://192.168.1.10/timetable/class/bt1.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 2"))
        imageUrl = "http://192.168.1.10/timetable/class/bt2.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 3"))
        imageUrl = "http://192.168.1.10/timetable/class/bt3.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 4"))
        imageUrl = "http://192.168.1.10/timetable/class/bt4.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 5"))
        imageUrl = "http://192.168.1.10/timetable/class/bt5.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 6"))
        imageUrl = "http://192.168.1.10/timetable/class/bt6.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 7"))
        imageUrl = "http://192.168.1.10/timetable/class/bt7.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 8"))
        imageUrl = "http://192.168.1.10/timetable/class/bt8.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 9"))
        imageUrl = "http://192.168.1.10/timetable/class/bt9.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - BILIK TUTORIAL 10"))
        imageUrl = "http://192.168.1.10/timetable/class/bt10.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 1"))
        imageUrl = "http://192.168.1.10/timetable/class/dk1.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 2"))
        imageUrl = "http://192.168.1.10/timetable/class/dk2.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 3"))
        imageUrl = "http://192.168.1.10/timetable/class/dk3.jpg";
    else if (selectedClass.equalsIgnoreCase("PERP - DEWAN KULIAH 4"))
        imageUrl = "http://192.168.1.10/timetable/class/dk4.jpg";

    bitmap = getBitmapFromURL(imageUrl);
    iv.setImageBitmap(bitmap);

    mAttacher = new PhotoViewAttacher(iv);
}